[submodule "git-gutter"]
path = packages/git-gutter
url = https://github.com/syohex/emacs-git-gutter.git
-[submodule "git-gutter-fringe"]
- path = packages/git-gutter-fringe
- url = https://github.com/syohex/emacs-git-gutter-fringe.git
-[submodule "fringe-helper"]
- path = packages/fringe-helper
- url = https://github.com/nschum/fringe-helper.el.git
[submodule "shackle"]
path = packages/shackle
url = https://github.com/wasamasa/shackle.git
[submodule "hl-todo"]
path = packages/hl-todo
url = https://github.com/tarsius/hl-todo.git
+[submodule "magit"]
+ path = packages/magit
+ url = https://github.com/magit/magit.git
+[submodule "emacs-async"]
+ path = packages/async
+ url = https://github.com/jwiegley/emacs-async.git
+[submodule "with-editor"]
+ path = packages/with-editor
+ url = https://github.com/magit/with-editor.git
# Mode switching
```
C-x C-j Open direx at current file
+C-c g s Magit status
F8 Toggle flyspell-mode
F9 Toggle whitespace mode
F10 Toggle word wrap
M-g M-n Next occurence
```
+# Magit / Git gutter
+```
+C-c g d Popup diff
+C-c g p Previous hunk
+C-c g f Next hunk
+C-c g s Magit status
+C-c g g Magit dispatch popup
+p Previous section
+n Next section
+M-p Previous sibling section
+M-n Next sibling section
+^ Up section
+Tab Toggle visibility of section
+C-Tab Cycle visibility of section and its children
+q Kill window and bury buffer
+C-c C-c Perform action
+C-c C-k Cancel action
+```
+
# Lisp
```
C-M-x Eval top-level form
(global-set-key (kbd "C-c g d") 'git-gutter:popup-hunk)
(global-set-key (kbd "C-c g p") 'git-gutter:previous-hunk)
(global-set-key (kbd "C-c g n") 'git-gutter:next-hunk)
-(global-set-key (kbd "C-c g a") 'git-gutter:stage-hunk)
-(global-set-key (kbd "C-c g u") 'git-gutter:revert-hunk)
-(global-set-key (kbd "C-c g r") 'my/git-reset-buffer)
;; Windows/frames
(global-set-key (kbd "<C-up>") 'windmove-up)
;; Mode switching
(global-set-key (kbd "C-x C-j") 'direx-project:jump-to-project-root-other-window)
+(global-set-key (kbd "C-c g s") 'magit-status)
+(global-set-key (kbd "C-c g g") 'magit-dispatch-popup)
(global-set-key (kbd "<f8>") 'flyspell-mode)
(global-set-key (kbd "<f9>") 'whitespace-mode)
(global-set-key (kbd "<f10>") 'toggle-truncate-lines)
(require 'shackle)
(setq shackle-rules '(((:custom buffer-file-name) :other t)
- (direx:direx-mode :align left :size 40 :select t)))
+ (direx:direx-mode :align left :size 40 :select t)
+ ("*magit-.*-popup*" :regexp t :align right :size 63 :select t)
+ (magit-status-mode :align below :size 20 :select t)
+ (magit-diff-mode :align right)))
-(setq shackle-default-rule '(:align t :select t :size 15))
-
-(setq shackle-default-alignment 'below)
+(setq shackle-default-rule '(:align below :select t :size 15))
(setq shackle-default-size 0.5)
(require 'git-gutter)
-(require 'git-gutter-fringe)
+
+(add-hook 'git-gutter:update-hooks 'magit-revert-buffer-hook)
(setq git-gutter:ask-p nil)
-(defun my/git-reset-buffer ()
- "Runs git-reset to unstage all changes on the current file. Then updates the git-gutter."
- (interactive)
- (call-process "git" nil nil nil "reset" (buffer-file-name))
- (git-gutter)
- (message "Finished git reset"))
-
-
-
(require 'ibuffer-vc)
(add-hook 'ibuffer-hook
+(require 'magit)
+
+(setq magit-completing-read-function 'ivy-completing-read)
+(setq magit-display-file-buffer-function #'pop-to-buffer)
+(global-magit-file-mode)
+
+
+
(require 'vc)
(setq vc-follow-symlinks t)
+(setq vc-handled-backends nil)
--- /dev/null
+Subproject commit 8bc0678ebca97e7b1c6e78e75e03f8dfd502d63a
+++ /dev/null
-Subproject commit ef4a9c023bae18ec1ddd7265f1f2d6d2e775efdd
+++ /dev/null
-Subproject commit dfc93d1064df154a809aab350942830408051da3
--- /dev/null
+Subproject commit 5834d0dbd471af0ce6537b4fc020fac05701267b
--- /dev/null
+Subproject commit d28d07497f67fea4c62fe7a2d3201fd86fb64fe2