diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000..c007da19ea --- /dev/null +++ b/Makefile @@ -0,0 +1,8 @@ +index: + @TLDRHOME=`pwd` ./scripts/build_index.rb + @echo "Index rebuilt." + +setup: + @cp ./scripts/pre-commit .git/hooks + @chmod +x .git/hooks/pre-commit + @echo "Git pre-commit hook installed." diff --git a/README.md b/README.md index 0ff097ef45..75e55ae203 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ You can access these pages on your computer using one of the following clients: - [Exilir client](https://github.com/edgurgel/tldr): binaries available soon - [C++ client](https://github.com/tldr-pages/tldr-cpp-client): `brew tap tldr-pages/tldr && brew install tldr` - [Android client](https://github.com/gianasista/tldr-viewer): available on [Google Play](https://play.google.com/store/apps/details?id=de.gianasista.tldr_viewer) +– [Web client](https://github.com/ostera/tldr.js): try tldr on your browser [here](https://ostera.github.io/tldr.js)! Let us know if you are building one and we can add it to this list! diff --git a/pages/index.json b/pages/index.json new file mode 100644 index 0000000000..1b17769cf2 --- /dev/null +++ b/pages/index.json @@ -0,0 +1 @@ +{"commands":[{"name":"sw_vers","platform":["osx"]},{"name":"du","platform":["osx","linux"]},{"name":"system_profiler","platform":["osx"]},{"name":"systemsetup","platform":["osx"]},{"name":"md5","platform":["osx"]},{"name":"caffeinate","platform":["osx"]},{"name":"head","platform":["osx","linux"]},{"name":"route","platform":["osx"]},{"name":"drutil","platform":["osx"]},{"name":"xed","platform":["osx"]},{"name":"say","platform":["osx"]},{"name":"pbpaste","platform":["osx"]},{"name":"open","platform":["osx"]},{"name":"diskutil","platform":["osx"]},{"name":"locate","platform":["osx","linux"]},{"name":"sysctl","platform":["osx"]},{"name":"pbcopy","platform":["osx"]},{"name":"shutdown","platform":["osx","linux"]},{"name":"airport","platform":["osx"]},{"name":"brew","platform":["osx"]},{"name":"qlmanage","platform":["osx"]},{"name":"networksetup","platform":["osx"]},{"name":"xsltproc","platform":["osx"]},{"name":"wacaw","platform":["osx"]},{"name":"rm","platform":["common"]},{"name":"lsof","platform":["common"]},{"name":"salt-key","platform":["common"]},{"name":"tee","platform":["common"]},{"name":"chown","platform":["common"]},{"name":"handbrakecli","platform":["common"]},{"name":"which","platform":["common"]},{"name":"ls","platform":["common"]},{"name":"sed","platform":["common"]},{"name":"mysql","platform":["common"]},{"name":"ssh","platform":["common"]},{"name":"df","platform":["common"]},{"name":"wget","platform":["common"]},{"name":"ln","platform":["common"]},{"name":"svn","platform":["common"]},{"name":"diff","platform":["common"]},{"name":"cd","platform":["common"]},{"name":"env","platform":["common"]},{"name":"useradd","platform":["common"]},{"name":"cp","platform":["common"]},{"name":"rsync","platform":["common"]},{"name":"gcc","platform":["common"]},{"name":"sox","platform":["common"]},{"name":"more","platform":["common"]},{"name":"nmap","platform":["common"]},{"name":"less","platform":["common"]},{"name":"tcpdump","platform":["common"]},{"name":"node","platform":["common"]},{"name":"ar","platform":["common"]},{"name":"psql","platform":["common"]},{"name":"gzip","platform":["common"]},{"name":"tmux","platform":["common"]},{"name":"gem","platform":["common"]},{"name":"git-checkout","platform":["common"]},{"name":"gpg","platform":["common"]},{"name":"pip","platform":["common"]},{"name":"yes","platform":["common"]},{"name":"cksum","platform":["common"]},{"name":"usermod","platform":["common"]},{"name":"electrum","platform":["common"]},{"name":"passwd","platform":["common"]},{"name":"echo","platform":["common"]},{"name":"git-branch","platform":["common"]},{"name":"patch","platform":["common"]},{"name":"wc","platform":["common"]},{"name":"telnet","platform":["common"]},{"name":"git","platform":["common"]},{"name":"exiftool","platform":["common"]},{"name":"nc","platform":["common"]},{"name":"mkdir","platform":["common"]},{"name":"rmdir","platform":["common"]},{"name":"fdupes","platform":["common"]},{"name":"sudo","platform":["common"]},{"name":"mount","platform":["common"]},{"name":"haxelib","platform":["common"]},{"name":"iconv","platform":["common"]},{"name":"zfs","platform":["common"]},{"name":"find","platform":["common"]},{"name":"npm","platform":["common"]},{"name":"git-clone","platform":["common"]},{"name":"ack","platform":["common"]},{"name":"ab","platform":["common"]},{"name":"tail","platform":["common"]},{"name":"traceroute","platform":["common"]},{"name":"curl","platform":["common"]},{"name":"git-status","platform":["common"]},{"name":"tree","platform":["common"]},{"name":"zip","platform":["common"]},{"name":"split","platform":["common"]},{"name":"sshfs","platform":["common"]},{"name":"git-commit","platform":["common"]},{"name":"time","platform":["common"]},{"name":"ping","platform":["common"]},{"name":"sort","platform":["common"]},{"name":"salt-call","platform":["common"]},{"name":"git-init","platform":["common"]},{"name":"screen","platform":["common"]},{"name":"git-push","platform":["common"]},{"name":"man","platform":["common"]},{"name":"cat","platform":["common"]},{"name":"mysqldump","platform":["common"]},{"name":"mv","platform":["common"]},{"name":"git-stash","platform":["common"]},{"name":"cut","platform":["common"]},{"name":"touch","platform":["common"]},{"name":"chmod","platform":["common"]},{"name":"nohup","platform":["common"]},{"name":"ffmpeg","platform":["common"]},{"name":"pwd","platform":["common"]},{"name":"userdel","platform":["common","linux"]},{"name":"ag","platform":["common"]},{"name":"pushd","platform":["common"]},{"name":"srm","platform":["common"]},{"name":"cal","platform":["common"]},{"name":"date","platform":["common"]},{"name":"rename","platform":["common"]},{"name":"grep","platform":["common"]},{"name":"scp","platform":["common"]},{"name":"play","platform":["common"]},{"name":"unzip","platform":["common"]},{"name":"gifsicle","platform":["common"]},{"name":"chsh","platform":["common"]},{"name":"redis-cli","platform":["common"]},{"name":"ps","platform":["common"]},{"name":"mtr","platform":["common"]},{"name":"git-add","platform":["common"]},{"name":"tldr","platform":["common"]},{"name":"php","platform":["common"]},{"name":"tar","platform":["common"]},{"name":"umount","platform":["common"]},{"name":"fswebcam","platform":["common"]},{"name":"deluser","platform":["common"]},{"name":"git-diff","platform":["common"]},{"name":"uname","platform":["common"]},{"name":"alias","platform":["common"]},{"name":"kill","platform":["common"]},{"name":"git-merge","platform":["common"]},{"name":"ipcs","platform":["common"]},{"name":"awk","platform":["common"]},{"name":"convert","platform":["common"]},{"name":"zpool","platform":["common"]},{"name":"pgrep","platform":["common"]},{"name":"bundle","platform":["common"]},{"name":"dig","platform":["common"]},{"name":"apropos","platform":["common"]},{"name":"git-log","platform":["common"]},{"name":"mp4box","platform":["common"]},{"name":"prctl","platform":["sunos"]},{"name":"prstat","platform":["sunos"]},{"name":"svccfg","platform":["sunos"]},{"name":"svcs","platform":["sunos"]},{"name":"svcadm","platform":["sunos"]},{"name":"sha384sum","platform":["linux"]},{"name":"base64","platform":["linux"]},{"name":"findmnt","platform":["linux"]},{"name":"sha1sum","platform":["linux"]},{"name":"netstat","platform":["linux"]},{"name":"systemctl","platform":["linux"]},{"name":"sha256sum","platform":["linux"]},{"name":"firewall-cmd","platform":["linux"]},{"name":"journalctl","platform":["linux"]},{"name":"apt-get","platform":["linux"]},{"name":"mdadm","platform":["linux"]},{"name":"emerge","platform":["linux"]},{"name":"dpkg","platform":["linux"]},{"name":"wall","platform":["linux"]},{"name":"ss","platform":["linux"]},{"name":"aptitude","platform":["linux"]},{"name":"sha512sum","platform":["linux"]},{"name":"watch","platform":["linux"]},{"name":"ip","platform":["linux"]},{"name":"sha224sum","platform":["linux"]},{"name":"xargs","platform":["linux"]},{"name":"tcpflow","platform":["linux"]},{"name":"pacman","platform":["linux"]},{"name":"free","platform":["linux"]},{"name":"iostat","platform":["linux"]},{"name":"shuf","platform":["linux"]},{"name":"md5sum","platform":["linux"]},{"name":"wpa_cli","platform":["linux"]}]} \ No newline at end of file diff --git a/scripts/build_index.rb b/scripts/build_index.rb new file mode 100755 index 0000000000..48dc13a651 --- /dev/null +++ b/scripts/build_index.rb @@ -0,0 +1,25 @@ +#!/usr/bin/env ruby + +require "json" + +commands = {} + +Dir["#{ENV["TLDRHOME"]}/pages/**/*.md"].each do |file| + # "./pages/osx/xsltproc.md", + file = file.split("/") + name = file.pop().gsub(".md","") + platform = file.pop() + + unless commands.key?(name) + commands[name] = { + name: name, + platform: [platform] + } + else + commands[name][:platform] << platform + end +end + +commands = commands.map do |k,v| v end + +File.write("#{ENV["TLDRHOME"]}/pages/index.json", {commands: commands}.to_json) diff --git a/scripts/pre-commit b/scripts/pre-commit new file mode 100644 index 0000000000..3869d9028f --- /dev/null +++ b/scripts/pre-commit @@ -0,0 +1,4 @@ +#!/bin/sh + +make index +git add ./pages/index.json