From 0101f8507fa627ae59086902e76f33e7acc6f79a Mon Sep 17 00:00:00 2001 From: Jonas Fonseca Date: Wed, 4 Sep 2013 20:58:17 -0400 Subject: [PATCH] Load main view from any --pretty=raw output given on stdin This allows you to run: git log --pretty=raw | tig --pretty=raw git reflog --pretty=raw | tig --pretty=raw git stash list --pretty=raw | tig --pretty=raw git rev-list jonas/code-split --pretty=raw | tig --pretty=raw git whatchanged --pretty=raw | tig --pretty=raw Idea and commit message by Vivien Didelot. --- NEWS | 2 ++ tig.c | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/NEWS b/NEWS index d1ad3a0..69ffe02 100644 --- a/NEWS +++ b/NEWS @@ -9,6 +9,8 @@ Improvements: - User-defined commands no longer needs to always be prefixed with '!'. - Add auto-configuration for Cygwin (OS name: CYGWIN_NT-6.1). (GH #92) - Add toggling for display files of untracked directories. + - Add main view pager mode that reads git-log's '--pretty=raw' data + from stdin, e.g. `git reflog --pretty=raw | tig --pretty=raw`. Bug fixes: diff --git a/tig.c b/tig.c index d6a0a1b..b66e711 100644 --- a/tig.c +++ b/tig.c @@ -7766,6 +7766,11 @@ main_open(struct view *view, enum open_flags flags) state->with_graph = opt_rev_graph; + if (flags & OPEN_PAGER_MODE) { + state->added_changes_commits = TRUE; + state->with_graph = FALSE; + } + return begin_update(view, NULL, main_argv, flags); } @@ -8940,6 +8945,9 @@ open_pager_mode(enum request request) if (argv_contains(opt_rev_argv, "--stdin")) { request = REQ_VIEW_MAIN; flags |= OPEN_FORWARD_STDIN; + } else if (argv_contains(opt_diff_argv, "--pretty=raw")) { + request = REQ_VIEW_MAIN; + flags |= OPEN_STDIN; } else { flags |= OPEN_STDIN; } -- 2.11.4.GIT