# The MIT License (MIT) # # Copyright © 2020-2025 pacman64 # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the “Software”), to deal # in the Software without restriction, including without limitation the rights # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE # SOFTWARE. Some of the tools available are described below. When a tool is available as a C/C++ program, that's almost always the preferred version: lacking that, if a Go version is available, that's the preferred version instead. backsort BACKward-SORT (numerically) using the columns named/indexed bf Browse Folders is a text user-interface (TUI) to do just that bitdump show all bits from all input bytes bocler Bank Of Canada Latest (currency) Exchange Rates bsbs Book-like Side-By-Side lays out input lines into multiple pages bu Better Units converts into international units ca a quick and handy arbitrary-precision calculator, using `bc` cadex CAnaDian EXchange converts from/to CADs cawk Count with AWK counts how many times an expression is true cbe Color By (file) Extensions, ANSI-styles lines accordingly cext Color file EXTensions, even multiple ones per line cio (text) Clipboard I/O copies/pastes, based on its piping clam Command-Line Augmentation Module defines shell commands clean run a command, keeping the main screen CLEAN coby COunt BYtes finds various byte-related stats coma COlor MAtches, using regex/style-name pairs cs Color Syntax datauri turn each named input (file/URI) given into a DATA-URI line debase64 decode base64-encoded data, including data-URIs decsv turn CSV tables into TSV, JSON, or `JSONS` (JSON Strings) define dictionary-define the words given, using an on-line service dedup better than `uniq`, as this one works as expected dejson turn JSON into other formats, such as TSV dessv turn lines of Space(s)-Separated Values into TSV lines detrail ignore trailing spaces and/or carriage-returns on all lines detsv turn TSV tables into JSON, or `JSONS` (JSON Strings) dic DICtionary-define the words given dog load/fetch all files and/or URIs given dtsv Drop Tab-Separated Values ecbler European Central Bank Latest (currency) Exchange Rates ecoli Expressions COloring LInes, using regex/style pairs fawk Faint (gray) lines satisfying an AWK condition fifi FInd FIles by case-insensitive regex files find all files in all the folders given, digging recursively filesizes find byte-counts of all files given; folders act recursively folders find all folders in all the folders given, digging recursively foldoc offline-lookup words from http://foldoc.org/ frapp FRactional APProximations of all numbers given to it frep Flat Regular-Expression Print(er) get GET/fetch data from the filename or URI given grawk GRoup with AWK, groups lines by common results of an AWK expr. hawk Hilight lines satisfying an AWK condition hima HIlight MAtches, using all the regular expressions given htmlify render plain-text prose, JSON, or CSV/TSV tables as HTML hydra a more flexible alternative to `head` icoma case-insensitive variant of script `coma` (COlor MAtches) id3pic extract picture/thumbnail bytes out of ID3/MP3 data, if found iecoli case-insensitive variant of script `ecoli` ihima case-Insensitive HIlight MAtches, using all the regexes given items emit all word-like items from all lines j0 fix/minimize JSON data, ignoring comments and trailing commas j2 reformat JSON into multiple lines with 2-space indent levels jawk Judge with AWK colors lines using 1..3 AWK conditions jl turn JSON arrays into lines of individual top-level JSON values jsons turn TSV into JSON object-arrays with string values l run `less -JMKNiCRS`, which also shows line numbers leak debug pipes by copying all output lines to stderr metar show latest weather reports from US/Canadian weather stations ndf Nice DF runs `df` and displays its output using ANSI styles ngron Nice(r) GRON is similar to the `gron` (GRep-friendly jsON) tool nh Nice Hex, a binary-data viewer, with an ASCII side-panel nj Nice Json indents and styles/colors JSON data nn Nice Numbers makes long numbers easier to read nps Nice Process Show displays all currently-running processes nss Nice Systemctl Status, ANSI-styles `systemctl status` nt Nice Tables, realigns and styles TSV tables nwf Nice Weather Forecast, for any place around the world given playlister make custom self-contained shuffle-mode song-player web-pages playwave PLAY WAVE-format-encoded sounds, from files or from the stdin podfeed turn PODcast FEEDs into self-contained HTML primes find prime numbers in increasing order, showing one per line ptsv Pick Tab-Separated Values rawk Red AWK turns lines satisfying an AWK condition red realign make lines/tables easier to read by realigning columns rein REuse INput, read stdin, then run commands reusing those bytes reprose reflow/narrow plain-text paragraphs to make them easier to read rtsv Realign Tab-Separated Values sawk Summarize (numbers) via AWK, using the expression given sbs Side-By-Side lays out input lines into multiple columns sf Show Files in the folders given, using ANSI styles sfs Show File Sizes from the folders given, reverse-sorted si Show It shows (auto-detected) input data in a browser tab sn Summarize all Numbers found along all input lines sortsv SORt (tables of) Tab-Separated Values, using `sort` sosher make custom self-contained SOng-SHuffle-playER web-pages squeeze aggressively trim spaces from lines style (re)style lines using the ANSI-style given by name sudoff SUDo, but privileges are turned OFF right away sym lookup-by-name all sorts of commonly-used symbols tally tally/count distinct lines, emitting TSV output tawk Tsv-mode AWK tbp Transform Bytes with a Python expression tcatl Titled conCATenate Lines, highlighting filenames teletype simulate old-fashioned teletype machines, by delaying output tempo show current date/time, mini-calendar, and weather forecast(s) timer show live timer on stderr, also emitting input lines tjn Transform Json data with a Node(js) expression tjp Transform Json data with a Python expression tjr Transform Json data with a Ruby expression tlp Transform Lines with a Python expression tlr Transform Lines with Ruby one-by-one, using a ruby expression topfiles find all top-level files in all the folders given topfolders find all top-level folders in all the folders given topgallery make custom self-contained picture galleries trimdecs ignore unneeded/extra zero decimals, perhaps even decimal dots trimends ignore trailing spaces and/or carriage-returns on all lines trimtrails ignore trailing spaces and/or carriage-returns on all lines try run the command given, showing its error code on failure uawk Unique (lines) via AWK, using the expression given v View shows pictures and/or plain-text files verdict run the command given, showing its error code/status when done waveout emit valid WAVE-audio OUTput, using a python expression wordnet offline-lookup words from https://wordnet.princeton.edu/ xl run commands using the args given and the stdin lines year show a calendar of the current year, or of the year given zj Zoom Json uses keys/indices to dig into valid JSON input breakrem.pyw a simple GUI break-reminder cadex.pyw a live-calculator GUI counterpart of `cadex` (CAD EXchange) countdown.pyw a simple GUI minutes-countdown guido.pyw GUI DO runs CLI commands, exposing options/results as GUIs inca.pyw INteger Calculator live-calculates over a range of integers later.pyw a simple message-reminder GUI now.pyw a simple GUI date-time live-clock pycalc.pyw a live-calculator GUI, using python expressions quac.pyw QUickly Add and Calculate python expressions via a GUI units.pyw a live-calculator unit-converter GUI cadex.html CAnaDian EXchange, converts from/to CAD using recent rates coca.html COmpact CAlendar shows all days in a (changeable) year doodle.html a blank page you can (only) draw on fh.html an interactive Function Heatmapper furi.html File to URI fv.html an interactive Function Viewer inca.html INteger Calculator live-calculates over a range of integers jib.html Javascript In Boxes lets you (re)run multiple JS snippets jx.html Javascript eXpressions loads data and runs JS code memoji.html a memory game using emojis mines.html a deliberately-unwinnable minesweeper game now.html a simple date-time live-clock quac.html QUickly Add and Calculate math expressions via a GUI reprose.html make plain-text paragraphs easier to read, with links/media sosh.html SOng SHuffler shuffle-plays sounds from imported playlists tic.html Talk Is Cheap shows random quotes from a given list units.html a live-calculator unit-converter GUI *.c single-source-file/compilable versions of various tools *.go single-source-file version of some of the original/better tools *.py python-based versions of various tools *.sh shell/awk-based versions of various tools