A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/nonsequitur/git-gutter-plus below:

GitHub - nonsequitur/git-gutter-plus

View, stage and revert Git changes straight from the buffer.

(This package is inspired by the GitGutter plugin for Sublime Text. It contains patches that haven't yet been added to Git-Gutter.)

Jump to Changelog.

Use the predefined use-package setup or follow these steps:

(git-gutter-fringe+ with minimal skin)

git-gutter-fringe+.el uses the fringe to display diff markers, instead of the buffer margin.

These are the differences to the default margin display mode in git-gutter+:

git-gutter+.el git-gutter-fringe+.el Works in tty frame + - Works with linum-mode - + Gutter on the right side - +

Enable git-gutter-fringe+ like this:

M-x package-install git-gutter-fringe+
(require 'git-gutter-fringe+)

;; Optional: Activate minimal skin
(git-gutter-fr+-minimal)

To interactively disable/enable the fringe display mode, run M-x git-gutter+-toggle-fringe.

Enable/disable git-gutter+ in the current buffer.

Globally enable/disable git-gutter+ for all file buffers.

Jump to the next hunk.

git-gutter+-previous-hunk

Jump to the previous hunk.

Show detailed diff for the hunk at point.

The hunk info is updated when you call git-gutter+-next-hunk and git-gutter+-previous-hunk.

git-gutter+-show-hunk-inline-at-point

An alternative to git-gutter+-show-hunk. Shows the diff by expanding it at point, without opening a new buffer.

Revert hunk at point. If region is active, revert all hunks within the region.

Stage hunk at point. If region is active, stage all hunk lines within the region.

Commit staged changes. If nothing is staged, ask to stage the current buffer.

git-gutter+-stage-and-commit

Calls git-gutter+-stage-hunks followed by git-gutter+-commit.

git-gutter+-stage-and-commit-whole-buffer

Stages and commits the whole buffer.

git-gutter+-unstage-whole-buffer

Unstages all changes in the current buffer. Use this to undo any effects caused by git-gutter+-stage-hunks.

The commit message buffer is based on git-commit. Besides the default git-commit-mode bindings, the following bindings are provided:

git-commit-ack is re-bound to C-c C-b.

Git-Gutter supports TRAMP for remote file support.

(use-package git-gutter+
  :ensure t
  :init (global-git-gutter+-mode)
  :config (progn
            (define-key git-gutter+-mode-map (kbd "C-x n") 'git-gutter+-next-hunk)
            (define-key git-gutter+-mode-map (kbd "C-x p") 'git-gutter+-previous-hunk)
            (define-key git-gutter+-mode-map (kbd "C-x v =") 'git-gutter+-show-hunk)
            (define-key git-gutter+-mode-map (kbd "C-x r") 'git-gutter+-revert-hunks)
            (define-key git-gutter+-mode-map (kbd "C-x t") 'git-gutter+-stage-hunks)
            (define-key git-gutter+-mode-map (kbd "C-x c") 'git-gutter+-commit)
            (define-key git-gutter+-mode-map (kbd "C-x C") 'git-gutter+-stage-and-commit)
            (define-key git-gutter+-mode-map (kbd "C-x C-y") 'git-gutter+-stage-and-commit-whole-buffer)
            (define-key git-gutter+-mode-map (kbd "C-x U") 'git-gutter+-unstage-whole-buffer))
  :diminish (git-gutter+-mode . "gg"))
This section of the manual hasn't yet been cleaned up. (But it's factually correct.)

You can change the signs and those faces.

(setq git-gutter+-modified-sign "  ") ;; two space
(setq git-gutter+-added-sign "++")    ;; multiple character is OK
(setq git-gutter+-deleted-sign "--")

(set-face-background 'git-gutter+-modified "purple") ;; background color
(set-face-foreground 'git-gutter+-added "green")
(set-face-foreground 'git-gutter+-deleted "red")

You can change minor-mode name in mode-line to set git-gutter+-lighter. Default is " GitGutter"

;; first character should be a space
(setq git-gutter+-lighter " GG")
Using full width characters

Emacs has char-width function which returns character width. git-gutter+.el uses it for calculating character length of the signs. But char-width does not work for some full-width characters. So you should explicitly specify window width, if you use full-width character.

(setq git-gutter+-window-width 2)
(setq git-gutter+-modified-sign "")
(setq git-gutter+-added-sign "")
(setq git-gutter+-deleted-sign "")

If you use global-git-gutter+-mode, you may want some modes to disable git-gutter+-mode. You can make it by setting git-gutter+-disabled-modes to non-nil.

;; inactivate git-gutter+-mode in asm-mode and image-mode
(setq git-gutter+-disabled-modes '(asm-mode image-mode))

Default is nil.

Show Unchanged Information

git-gutter+.el can view unchanged information by setting git-gutter+-unchanged-sign. Like following.

(setq git-gutter+-unchanged-sign " ")
(set-face-background 'git-gutter+-unchanged "yellow")

Default value of git-gutter+-unchanged-sign is nil.

git-gutter+.el can display an additional separator character at the right of the changed signs. This is mostly useful when running emacs in a console.

(setq git-gutter+-separator-sign "|")
(set-face-foreground 'git-gutter+-separator "yellow")

Default value of git-gutter+-separator-sign is nil.

Hide gutter if there are no changes

Hide gutter when there are no changes if git-gutter+-hide-gutter is non-nil. (Default is nil)

(setq git-gutter+-hide-gutter t)
Extra arguments for 'git diff'

You can force extra arguments to be passed to git diff by setting git-gutter+-diff-options.

;; Ignore all spaces
(setq git-gutter+-diff-options '("-w"))

GitGutter is Sublime Text plugin.

diff-hl has more features than git-gutter+.el.

Vim version of GitGutter


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4