Topic: Emacs -
Description:
Handling projects (Version controlled projects) in emacs
using the inbuilt project.el.
Duration: 45 mins
Speaker Name: Thanga Ayyanar @ Gold Ayan
About Speaker: Just a curious linux kid
Notes
#+title: Emacs project.el
* What is project.el
- A project is a collection of files used for producing one or more programs.
- Root directory of project is determined by ~project back-end~
- VC (Version control)-aware
- ~project-vc-include-untracked~ to include/exclude untracked file
- Emacs Development Environment (Deadlink)
- expanded in future or we can create our own.
* Options
- C-x p p : Switch between projects
- C-x p f : Find file in the project
- C-x p d : Open dired in project root directory
- C-x p v : Open VC in project root directory
- C-x p c : Execute command in project root directory
- C-x p ! : Shell command executed from current project root directory
- C-x p s : Open shell in project root directory
- Not covered
- Project async shell command execution
- Project search related commands
- Project wide find and replace
** Buffers
- C-x p b : switch to another file in current project
- C-x p C-b : List project buffers
- C-x p k : kill all live buffer belong to the project
* Where the projects data are showed ?
- check ~project-list-file~ variable
- M-x project-forgot-project
* Bonus - Dir local variable
- M-x add-dir-local-variable
* Reference
- https://www.gnu.org/software/emacs/manual/html_node/emacs/Projects.html