/README.md

https://github.com/dajva/rg.el · Markdown · 88 lines · 62 code · 26 blank · 0 comment · 0 complexity · f5eb450c31b94eb3f2ed0f400c5ccb6c MD5 · raw file

  1. # rg.el
  2. [![License GPL 3](https://img.shields.io/badge/license-GPL_3-green.svg?style=flat)](LICENSE)
  3. [![MELPA Stable](https://stable.melpa.org/packages/rg-badge.svg)](https://stable.melpa.org/#/rg)
  4. [![MELPA](http://melpa.org/packages/rg-badge.svg)](http://melpa.org/#/rg)
  5. [![Build Status](https://travis-ci.org/dajva/rg.el.svg?branch=master)](https://travis-ci.org/dajva/rg.el)
  6. [![Coverage Status](https://coveralls.io/repos/github/dajva/rg.el/badge.svg)](https://coveralls.io/github/dajva/rg.el)
  7. Use [ripgrep](https://github.com/BurntSushi/ripgrep) in Emacs.
  8. Ripgrep is a replacement for both grep like (search one file) and ag
  9. like (search many files) tools. It's fast and versatile and written in
  10. Rust. For some introduction and benchmarks, see
  11. [ripgrep is faster than {grep, ag, git grep, ucg, pt, sift}](http://blog.burntsushi.net/ripgrep/).
  12. ![screenshot](screenshot.png)
  13. ## Installation
  14. This package is available on
  15. [MELPA Stable](https://stable.melpa.org/#/rg) and
  16. [MELPA](http://melpa.org/#/rg). Install with `M-x package-install`
  17. <kbd>RET</kbd> `rg` from within Emacs.
  18. It is also available in GNU Guix as [emacs-rg](https://guix.gnu.org/packages/emacs-rg-1.8.1/).
  19. Install with `guix package -i emacs-rg`.
  20. If you want to install manually just put `rg.el` and the rest of the
  21. elisp files somewhere in your load path and add require the package:
  22. ``` el
  23. (require 'rg)
  24. ```
  25. `rg` and friends are autoloaded symbols which means it's also possible
  26. to defer loading if you have autoloading setup.
  27. ### Setup key bindings
  28. This will setup the default key bindings in a non lazy way. If you
  29. care about startup performance see the next example.
  30. ``` el
  31. (rg-enable-default-bindings)
  32. ```
  33. See
  34. [documentation](https://rgel.readthedocs.io) for how to handle lazy loading.
  35. ### Use old defaults
  36. `rg.el` 2.0.0 will use new default settings to improve look and feel,
  37. more consistent key bindings etc. If you want to use the old defaults
  38. add this to your `init.el`:
  39. ``` el
  40. (rg-use-old-defaults)
  41. ```
  42. ### rg-menu
  43. If you prefer to use a [magit](https://github.com/magit/magit) like
  44. interface as a complement to regular key maps, replace
  45. `(rg-enable-default-bindings)` with `(rg-enable-menu)`. The menus are
  46. built with [transient](https://github.com/magit/transient), which
  47. means that the menus can be modified in the same way as in magit.
  48. ## Documentation
  49. Info documentation is included in the package.
  50. Online documentation: https://rgel.readthedocs.io
  51. ## Contribute
  52. - Install [cask](http://cask.github.io/).
  53. - Install dependencies:
  54. ``` Shell
  55. make deps
  56. ```
  57. - Run tests:
  58. ``` Shell
  59. make test
  60. ```
  61. ## License
  62. See [LICENSE](LICENSE).