首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在格式字符串中让git-log颜色多行占位符值?

如何在格式字符串中让git-log颜色多行占位符值?
EN

Stack Overflow用户
提问于 2015-03-31 21:47:55
回答 1查看 79关注 0票数 0

给定以下git-log命令:

代码语言:javascript
复制
git log --max-count=1 --format='format:%C(cyan)%GG'

只有%GG多行占位符值的第一行被着色。但是,我希望在当前选择的颜色被下一个%C(...)语句重置之前,下面的文本是相同的颜色。我怎样才能做到这一点?

我在21上使用Git版本2.1.0。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-31 22:52:52

同时,我想出了一个解决方案,就是下面的Bash脚本片段:

代码语言:javascript
复制
function foobar {
  local -r committish="${1:-HEAD}"
  local -r tput_app="$(type -p tput)"
  if [[ -n $tput_app ]]; then
    local -r color_cyan="$("$tput_app" setaf 6)"
    local line=''
    while read -r line; do
      printf '%s\n' "$color_cyan$line"
    done < <(git log --max-count=1 --format='format:%GG' "$committish")
    printf '%s\n' "$("$tput_app" sgr0)"
  else
    git log --max-count=1 --format='format:%GG' "$committish"
  fi
}

这个解决方案不满足我,因为我通常更喜欢简单的解决方案而不是简单的问题。但至少对我有用。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29379176

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档