diff options
author | Tom Willemse | 2015-12-16 22:09:03 +0100 |
---|---|---|
committer | Tom Willemse | 2015-12-16 22:09:03 +0100 |
commit | 82a7d845721f502848a16370da3de1445049bc7d (patch) | |
tree | 5dfaa7562affc227b61b007b55bbf67c575409f3 /emacs/.emacs.d/site-lisp/oni-eshell.el | |
parent | 7bb2d1f065b295cb9ffce633d2f596831c04233b (diff) | |
download | dotfiles-82a7d845721f502848a16370da3de1445049bc7d.tar.gz dotfiles-82a7d845721f502848a16370da3de1445049bc7d.zip |
Add eshell commands
Diffstat (limited to 'emacs/.emacs.d/site-lisp/oni-eshell.el')
-rw-r--r-- | emacs/.emacs.d/site-lisp/oni-eshell.el | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/emacs/.emacs.d/site-lisp/oni-eshell.el b/emacs/.emacs.d/site-lisp/oni-eshell.el new file mode 100644 index 0000000..02d49a0 --- /dev/null +++ b/emacs/.emacs.d/site-lisp/oni-eshell.el @@ -0,0 +1,42 @@ +;;; oni-eshell.el --- Extra Eshell commands -*- lexical-binding: t; -*- + +;; Copyright (C) 2015 Tom Willemse + +;; Author: Tom Willemse <tom@ryuslash.org> +;; Keywords: + +;; 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. + +;; 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. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see <http://www.gnu.org/licenses/>. + +;;; Commentary: + +;; Here are some extra commands for eshell. + +;;; Code: + +(require 'em-dirs) + +;;;###autoload +(defun eshell/cdp () + "Change the directory all the way up to the project root. + +Look for the project root and change the directory to it. The +project root is defined as the directory with the `.git' +directory in it." + (let ((project-dir (locate-dominating-file "." ".git"))) + (if project-dir + (eshell/cd project-dir) + (error "Can't locate project root")))) + +(provide 'oni-eshell) +;;; oni-eshell.el ends here |