Difference between revisions of "Projectile"
Jump to navigation
Jump to search
m (in order to see that page when clicking on «programming» categorie on main page) |
|||
Line 29: | Line 29: | ||
; {{Keys|C-c p f}} | ; {{Keys|C-c p f}} | ||
: Find a file in the project. | : Find a file in the project. | ||
+ | |||
+ | ; {{Keys|C-c p l}} | ||
+ | : Find a file in a directory. | ||
; {{Keys|C-c p g}} | ; {{Keys|C-c p g}} |
Revision as of 15:27, 18 December 2013
Description | Project management library |
---|---|
Author | Bozhidar Batsov |
Maintainer | Bozhidar Batsov |
Source | https://github.com/bbatsov/projectile |
Projectile is a project interaction library for Emacs. Its goal is to provide a nice set of features operating on a project level without introducing external dependencies. For instance - finding project files is done in pure Emacs Lisp without the use of GNU find.
This library provides easy project management and navigation. The concept of a project is pretty basic - just a folder containing special file. Currently git, mercurial and bazaar repos are considered projects by default. If you want to mark a folder manually as a project just create an empty .projectile file in it. Some of projectile's features:
- jump to a file in project
- jump to a project buffer
- multi-occur in project buffers
- grep in project
- regenerate project etags
Basic setup
(add-to-list 'load-path "/path/to/projectile/directory")
(require 'projectile)
(projectile-global-mode) ;; to enable in all buffers
Helpful keybindings
- [C-c p f]
- Find a file in the project.
- [C-c p l]
- Find a file in a directory.
- [C-c p g]
- Find text matches in the project
Common Customization
Enable caching
Indexing a large project can take a while. You can enable caching to prevent additional reindexing.
(setq projectile-enable-caching t)