magit/magit — pull request #511 by cinsk (2012-11-28 07:39:09+00:00)
Title: Add diffstat on magit-commit-mode and magit-diff-mode

When a commit has lots of files, it would be difficult to get the overview of the commit, although we can control the output of the *magit-commit* and *magit-diff* buffer by using `magit-show-level-1` and so on.

This branch will includes support for `git log --stat` and `git diff --patch-with-stat` commands. so the either commit log or diff log will contains section like:

7 files changed, 87 insertions(+), 136 deletions(-)
pom.xml | 9 +--
src/main/java/com/mycompany/rest/Follow.java | 6 -
src/main/java/com/mycompany/rest/Pins.java | 107 +++++++++-----------
src/main/java/com/mycompany/rest/Upload.java | 11 +--
.../java/com/mycompany/rest/UserBoards.java | 54 ++++------
src/main/java/com/mycompany/rest/UserPins.java | 6 -
src/main/java/com/mycompany/rest/Users.java | 30 ++----

- Section nagivation commands works properly (e.g. `p`, `n', `M-p`, `M-n`, etc.)
- `RET` will visit the file using `magit-visit-item`,
- `e` will invoke `magit-ediff`.
- `M-g` will move points to the diffstat headers.

There is minor problem (on restoring window-configuration); when the user press `e` at the diffstat line, the code will move the point to the actual diff section line, and will invoke `magit-ediff`. When the user quit *ediff*, the point is at the actual diff section line, not the diffstat line.

Tested on
- Emacs 23.3.1 on Ubuntu Linux,
- Emacs 24.2.1 on Gentoo Linux,
- [Emacs 24.2 on MacOSX](http://emacsformacosx.com/)