;;; oni-magit.el --- Magit config -*- lexical-binding: t; -*- ;; Copyright (C) 2019 Tom Willemse ;; Author: Tom Willemse ;; Keywords: local ;; Version: 2022.1213.070733 ;; Package-Requires: (magit magit-popup oni-hydra) ;; 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 . ;;; Commentary: ;; Magit configuration. ;;; Code: (require 'hydra) (require 'magit) (defvar oni:magit-status-rx (rx bos (optional "*") "magit: ")) (defun oni-magit-display-buffer-in-only-window (buffer alist) "Show only BUFFER. Delete all other windows and then pass BUFFER and ALIST on to `display-buffer-same-window'." (delete-other-windows) (display-buffer-same-window buffer alist)) ;;;###autoload(autoload 'oni-hydra-magit/body "oni-magit") (defhydra oni-hydra-magit (:color teal :hint nil) " ^Magit^ ^^--------- _s_: Status _i_: Init " ("s" magit-status) ("i" magit-init)) (setq magit-diff-refine-hunk 'all) (add-to-list 'display-buffer-alist `(,oni:magit-status-rx oni-magit-display-buffer-in-only-window)) (when (eq system-type 'windows-nt) (setq magit-git-executable "c:/msys64/usr/bin/git.exe")) ;;;###autoload (global-set-key (kbd "C-c v") '("Magit commands" . oni-hydra-magit/body)) (provide 'oni-magit) ;;; oni-magit.el ends here