perplexity-cli
🧠 A simple command-line client for the Perplexity API. Ask questions and receive answers directly from the terminal! 🚀🚀🚀
:floppy_disk: Ian's dotfiles, utils, and Zsh/Vim/tmux configs
These are my dotfiles. There are many like them, but these are mine. This started around 2001 or so when I used many different operating systems and environments. Now I mostly use macOS and Linux but still keep the environment in sync.
Favorite font at the moment: Iosevka Term
$ docker run --rm -it ghcr.io/statico/dotfiles
demouser@987552d4c629:/
〉
A random prompt color is picked at first install. Edit .zshlocal for details.
curl -sL statico.link/zsh | zsh (redirects to the install.zsh file in this repo)chsh or otherwise set your shell to use ZshOptionally create a .postinstall with some machine-specific commands, like git config --global user.email "my-work-email@example.com"". You can also create a .vimlocal and .gvimlocal for machine-specific Vim customizations (though I primarily use Neovim now, the Vim config is kept for historical reasons).
install.zsh to point at your ownMy first boss told me that I should have a digital toolkit -- a set of tools that I keep with me that I can use anywhere. In college I used many different kinds of Unix variants, and so it made sense to build a kit that could bootstrap my environment anywhere. Today, I use macOS, Windows, and various distributions of Linux, and this kit has proven invaluable in getting set up quickly on new hardware and VMs.
While this project includes a huge collection of configuration snippets I've collected over the years, a few parts stand out and are things I use daily:
My zshrc, which has a minimal, customized prompt that I like the best, as well as many aliases and shortcuts to standardize environments (like making sure Unicode displays properly and ls shows colors) and reduce keystrokes (like with my ~60 or so Git aliases). There are also a few functions that make host-specific customizations easy using a .zshlocal script which never gets checked in. There are tons of tricks in there so it's worth a skim.
My Neovim configuration (in .config/nvim/init.lua), which I use as my primary editor. I also keep my old vimrc for historical reasons, which many people became interested in after reading my articles about Vim.
Only a few reasons, honestly:
Easier completion - I can type /u/l/b/xTab and that completes to /usr/local/bin/x
I'm able to hack Ctrl-W to delete to the previous word or slash, so /usr/local/binCtrl-W becomes /usr/local/
I've got a thing that shows me five red dots when a completion is in progress, such as when completing files from remote SSH servers.
Globbing - The ** recursive operator and qualifiers like (.) and (/) for globbing are essential, like rm **/.DS_Store
Legacy - I started using Zsh in 2002 or so when it was edgy.
Here's what I use the most often on the command line:
j foo to cd to the most commonly used directory that fuzzy-matches foo (via autojump)l and ll for long directory listings, ltr for showing the most recent filesg for git, d for docker, dc for docker-compose, k for tree, y for yarn2>&1|less to the command and hits Enter, running the command and viewing its output in a pagerZU to update Neovim plugins or just ZR to restart Zsh after a .zshrc changerg (ripgrep), then Ctrl-AvEnter (changing rg to vrg) to edit all of the files that matched in Neovimcding to a directory and then using Meta-P to pop to the previous directory (since auto_pushd is enabled and silent)psl to search for processes (since I never remember the pgrep syntax and it's never been consistent across platforms)open and trash commands that work across macOS and Linuxst for status, gd for a git diff, gl for a quick log, sci <message> to commit everything with a message, or gap to cherry pick and then gc <message> to commit.colorprompt command in its ~/.zshlocal. I use ansimodes or 256-colors.sh to pick a color. (Both are already in the ~/bin/ directory, which is added to the $PATH.)more like this
🧠 A simple command-line client for the Perplexity API. Ask questions and receive answers directly from the terminal! 🚀🚀🚀
Firefox and Chrome extensions to prevent Google from making links ugly.
search projects, people, and tags