You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README.md 2.7KB

5 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
4 years ago
5 years ago
5 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
4 years ago
5 years ago
4 years ago
5 years ago
4 years ago
5 years ago
5 years ago
5 years ago
4 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. # fzf-scripts
  2. This is a collection of scripts I've written that use [fzf](https://github.com/junegunn/fzf)
  3. Almost all of them require various tools from coreutils like `awk` `sed` `cut`, and probably make use of GNU extensions.
  4. ## [fv](fv)
  5. Lists or searches for files and opens them with a command, defaults to `vim`. Kind of a shortcut for `vim $(ag 'foo' | fzf)`, lists files if no search string is given.
  6. ## [fzgit](fzgit)
  7. Interactive git wrapper. Very much still a work in progress, but it has some very cool functions already.
  8. *depends on `git` and `perl`*
  9. ## [fzmp](fzmp)
  10. Lists and searches for songs in an MPD library by artist, album, or playlist. I wrote a [blog post](https://danielfgray.gitlab.io/computers/fzmp) about writing this script.
  11. *depends on `mpc`*
  12. ## [fzmv](fzmv)
  13. Interactively move files. It was originally just an experiment to see what it would be like to make a file explorer with fzf.
  14. ## [goog](goog)
  15. Google search from the command line. This is now broken since google deprecated the API I used and I have yet to update to the newer version..
  16. *depends on `jq` and `curl`*
  17. ## [ix](ix)
  18. Uploads files to [ix.io](http://ix.io) and allows listing and editing of uploads.
  19. *depends on `curl`*
  20. ## [npmsearch](npmsearch)
  21. Searches [npmjs.com](https://npmjs.com) and installs packages with `yarn` if available or `npm`.
  22. *depends on npm and [jq](https://stedolan.github.io/jq/)*
  23. ## [pkgsearch](pkgsearch)
  24. Searches repos and installs multiple packages. Currently works with Debian, Ubuntu and Arch, and experimental support for Fedora and Void.
  25. ## [pkgrm](pkgrm)
  26. Lists and removes packages, optionally sorts by size.
  27. *depends on `pacman`*
  28. ## [sshget](sshget)
  29. Lists files from remote servers and `rsync`s them to the current directory
  30. ## [wifi](wifi)
  31. List and connect to wifi networks
  32. *depends on `nmcli`*
  33. # Install
  34. Currently there's no installation script, but if you clone the repo you can easily symlink the scripts here with something like:
  35. ``` sh
  36. cd /path/to/repo/fzf-scripts
  37. find -maxdepth 1 -executable -type f -exec ln -s -t $HOME/.local/bin /path/to/repo/fzf-scripts/{} \;
  38. ```
  39. # Legal
  40. Copyright (C) 2016 Daniel F Gray <DanielFGray@gmail.com>
  41. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
  42. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  43. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.