summaryrefslogtreecommitdiffstats
path: root/ravi-init-vc.el
diff options
context:
space:
mode:
Diffstat (limited to 'ravi-init-vc.el')
-rw-r--r--ravi-init-vc.el176
1 files changed, 0 insertions, 176 deletions
diff --git a/ravi-init-vc.el b/ravi-init-vc.el
deleted file mode 100644
index 406e05b..0000000
--- a/ravi-init-vc.el
+++ /dev/null
@@ -1,176 +0,0 @@
-;;; ravi-init-vc.el --- vc control
-
-;; Copyright (C) 2013
-
-;; Author: <ravi@nero.lan>
-;; Keywords: vc
-
-;; 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:
-
-;; Version control initialization
-
-;;; Code:
-
-;; Git
-(use-package magit
- :bind ("<M-f3>" . magit-status)
- :config
- (progn
- (setq-default
- magit-process-popup-time 10
- magit-diff-refine-hunk t
- magit-completing-read-function 'magit-ido-completing-read
- )
-
- ; Since magit-mode-quit-window is used by all magit windows (such as logs),
- ; and since mucking with magit's keymap also leads to the same results, we
- ; avoid showing magit-status in a fullscreen window until another solution
- ; is found.
- ;(require 'fullframe)
- ;(fullframe magit-status magit-mode-quit-window :magit-fullscreen nil)
-
- (setq magit-restore-window-configuration t)
-
- (use-package vc-git
- :defer t
- :bind ("C-x v f" . vc-git-grep)
- :config
- (progn
- (global-magit-wip-save-mode)
- (diminish 'magit-wip-save-mode)
- )
- )
- ;(after-load 'magit-key-mode
- ; (require 'magit-svn))
-
- (after-load 'compile
- (dolist (defn (list '(git-svn-updated "^\t[A-Z]\t\\(.*\\)$" 1 nil nil 0 1)
- '(git-svn-needs-update "^\\(.*\\): needs update$" 1 nil nil 2 1)))
- (add-to-list 'compilation-error-regexp-alist-alist defn)
- (add-to-list 'compilation-error-regexp-alist (car defn))))
-
- (use-package magit-svn
- :config (add-hook 'magit-mode-hook 'turn-on-magit-svn)
- :ensure t
- )
-
- (defvar git-svn--available-commands nil "Cached list of git svn subcommands")
-
- (defun git-svn (dir)
- "Run a git svn subcommand in DIR."
- (interactive "DSelect directory: ")
- (unless git-svn--available-commands
- (setq git-svn--available-commands
- (sanityinc/string-all-matches
- "^ \\([a-z\\-]+\\) +"
- (shell-command-to-string "git svn help") 1)))
- (let* ((default-directory (vc-git-root dir))
- (compilation-buffer-name-function (lambda (major-mode-name) "*git-svn*")))
- (compile (concat "git svn "
- (ido-completing-read "git-svn command: "
- git-svn--available-commands nil t))))
- )
-
- (defun magit-toggle-whitespace ()
- (interactive)
- (if (member "-w" magit-diff-options)
- (magit-dont-ignore-whitespace)
- (magit-ignore-whitespace)))
-
- (defun magit-ignore-whitespace ()
- (interactive)
- (add-to-list 'magit-diff-options "-w")
- (magit-refresh))
-
- (defun magit-dont-ignore-whitespace ()
- (interactive)
- (setq magit-diff-options (remove "-w" magit-diff-options))
- (magit-refresh))
-
- (bind-key "W" 'magit-toggle-whitespace magit-status-mode-map)
-
- (defun magit-just-amend ()
- (interactive)
- (save-window-excursion
- (magit-with-refresh
- (shell-command "git --no-pager commit --amend --reuse-message=HEAD"))))
- (bind-key "C-a" 'magit-just-amend magit-status-mode-map)
-
- )
- :ensure t
- )
-(use-package git-gutter
- :config
- (progn
- (use-package git-gutter-fringe
- :ensure t
- )
- (global-git-gutter-mode 1)
- )
- :ensure t
- :diminish git-gutter-mode
- )
-(use-package git-commit-mode
- :ensure t
- )
-(use-package git-rebase-mode
- :ensure t
- )
-(use-package gitignore-mode
- :ensure t
- )
-(use-package gitconfig-mode
- :ensure t
- )
-(use-package git-messenger
- :ensure t
- :bind ("C-x v p" . git-messenger:popup-message)
- )
-
-;; Stolen almost entirely from Fuco (Matus Goljer)
-(use-package ediff
- :config
- (progn
- (defvar my-ediff-before-config nil "Window configuration before ediff.")
- (defvar my-ediff-after-config nil "Window configuration after ediff.")
-
- (defun my-ediff-before-setup ()
- "Function to be called before any buffers or window setup for
- ediff."
- (setq my-ediff-before-config (current-window-configuration))
- (set-register ?b (list my-ediff-before-config (point-marker))))
-
- (defun my-ediff-after-setup ()
- "Function to be called after buffers and window setup for ediff."
- (setq my-ediff-after-config (current-window-configuration))
- (set-register ?e (list my-ediff-after-config (point-marker))))
-
- (defun my-ediff-quit ()
- "Function to be called when ediff quits."
- (when my-ediff-before-config
- (set-window-configuration my-ediff-before-config))
- ;; clean up ediff bullshit
- (->> (buffer-list)
- (-map 'buffer-name)
- (--select (string-match-p "\\*[Ee]diff" it))
- (-map 'kill-buffer)))
-
- (add-hook 'ediff-before-setup-hook 'my-ediff-before-setup)
- (add-hook 'ediff-after-setup-windows-hook 'my-ediff-after-setup 'append)
- (add-hook 'ediff-quit-hook 'my-ediff-quit)))
-
-(provide 'ravi-init-vc)
-;;; ravi-init-vc.el ends here