File: README.md

package info (click to toggle)
emacs-git-messenger 0.18-4
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, sid
  • size: 256 kB
  • sloc: lisp: 337; makefile: 18
file content (112 lines) | stat: -rw-r--r-- 3,154 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
# git-messenger.el

`git-messenger.el` is Emacs port of [git-messenger.vim](https://github.com/rhysd/git-messenger.vim).

`git-messenger.el` provides function that popup commit message at current line.
This is useful when you want to know why this line was changed.


## Installation

`git-messenger` is available on [MELPA](https://melpa.org/) and [MELPA stable](https://stable.melpa.org/)

You can install `git-messenger` with the following command.

<kbd>M-x package-install [RET] git-messenger [RET]</kbd>


## Dependency

* [popup](https://github.com/auto-complete/popup-el)


## Supported VCS

- Git
- Subversion
- Mercurial


## Commands

### `git-messenger:popup-message`

Pop up last commit message at current line. Show detail message, Commit ID, Author,
Date and commit message with `C-u` prefix


## Key Bindings

You can modify key bindings by customizing `git-messenger-map`.

| Key                  | Command                                                 |
|:--------------------:|:--------------------------------------------------------|
| `M-w`                | Copy commit message and quit                            |
| `c`                  | Copy commit ID and quit                                 |
| `d`                  | Pop up `git diff` of last change of this line           |
| `s`                  | Pop up `git show --stat` of last change of this line    |
| `S`                  | Pop up `git show --stat -p` of last change of this line |
| `q`                  | Quit                                                    |


## Customize

### `git-messenger:show-detail`(Default `nil`)

Always show detail message if this value is `t`.

### `git-messenger:handled-backends`(Default `'(git svn)`)

Handled VCS which `git-messenger` uses.
Entries in this list will be tried in order to determine whether a
file is under that sort of version control.

### `git-messenger:use-magit-popup`(Default `nil`)

Use `magit-show-commit` instead of `pop-to-buffer`.

## Hooks

### `git-messenger:before-popup-hook`

Run before popup commit message. Hook function take one argument, commit message.

### `git-messenger:after-popup-hook`

Run after popup commit message. Hook function take one argument, commit message.

### `git-messenger:popup-buffer-hook`

Run after popup buffer.


## Global Variables

You may be able to use these variables useful in commands of `git-messenger-map`.

#### `git-messenger:last-message`

Last popup-ed commit message

#### `git-messenger:last-commit-id`

Last popup-ed commit ID


## Sample Configuration

```lisp
(require 'git-messenger) ;; You need not to load if you install with package.el
(global-set-key (kbd "C-x v p") 'git-messenger:popup-message)

(define-key git-messenger-map (kbd "m") 'git-messenger:copy-message)

;; Enable magit-show-commit instead of pop-to-buffer
(custom-set-variables
 '(git-messenger:use-magit-popup t))
```

[melpa-link]: https://melpa.org/#/git-messenger
[melpa-stable-link]: https://stable.melpa.org/#/git-messenger
[melpa-badge]: https://melpa.org/packages/git-messenger-badge.svg
[melpa-stable-badge]: https://stable.melpa.org/packages/git-messenger-badge.svg