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.9KB

3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
8 months ago
3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
2 years ago
3 years ago
2 years ago
3 years ago
2 years ago
3 years ago
3 years ago
3 years ago
2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  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. ## [fzbuku](fzbuku)
  10. A small wrapper around [buku](https://github.com/jarun/Buku) to search bookmarks
  11. ## [fzmp](fzmp)
  12. 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.
  13. *depends on `mpc`*
  14. ## [fzmv](fzmv)
  15. Interactively move files. It was originally just an experiment to see what it would be like to make a file explorer with fzf.
  16. ## [goog](goog)
  17. 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..
  18. *depends on `jq` and `curl`*
  19. ## [ix](ix)
  20. Uploads files to [ix.io](http://ix.io) and allows listing and editing of uploads.
  21. *depends on `curl`*
  22. ## [npmsearch](npmsearch)
  23. Searches [npmjs.com](https://npmjs.com) and installs packages with `yarn` if available or `npm`.
  24. *depends on npm and [jq](https://stedolan.github.io/jq/)*
  25. * [Demo](https://asciinema.org/a/178602)
  26. ## [pkgsearch](pkgsearch)
  27. Searches repos and installs multiple packages. Currently works with Debian, Ubuntu and Arch, and experimental support for Fedora and Void.
  28. ## [pkgrm](pkgrm)
  29. Lists and removes packages, optionally sorts by size.
  30. *depends on `pacman`*
  31. ## [sshget](sshget)
  32. Lists files from remote servers and `rsync`s them to the current directory
  33. ## [wifi](wifi)
  34. List and connect to wifi networks
  35. *depends on `nmcli`*
  36. # Install
  37. Currently there's no installation script, but if you clone the repo you can easily symlink the scripts here with something like:
  38. ``` sh
  39. cd /path/to/repo/fzf-scripts
  40. find -maxdepth 1 -executable -type f -exec ln -s -t $HOME/.local/bin /path/to/repo/fzf-scripts/{} \;
  41. ```
  42. # Legal
  43. Copyright (C) 2016 Daniel F Gray <DanielFGray@gmail.com>
  44. 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.
  45. 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.
  46. You should have received a copy of the GNU General Public License along with this program. If not, see <http://www.gnu.org/licenses/>.