git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Josh Triplett <josh@joshtriplett.org>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: git@vger.kernel.org, Paul Mackerras <paulus@samba.org>,
	Pat Thoyts <patthoyts@users.sourceforge.net>,
	Mark Hills <mark@pogo.org.uk>
Subject: Re: [PATCH] gitk: use symbolic font names "sans" and "monospace" when available
Date: Thu, 8 Mar 2012 04:46:35 -0800	[thread overview]
Message-ID: <20120308124635.GA24679@leaf> (raw)
In-Reply-To: <20120308123011.GA4355@burratino>

On Thu, Mar 08, 2012 at 06:30:11AM -0600, Jonathan Nieder wrote:
> The following only concerns systems using X and the client-side font
> rendering framework from freedesktop.org.  Windows and Mac OS X are
> not affected.
> 
> Starting with version 8.5, Tk uses freetype and fontconfig by default
> to render fonts on platforms that support it.  Gitk currently defaults
> to the font Helvetica for the interface and Courier for diffs, and
> both unfortunately look rather bad on screen in the default
> configuration on many Linux distros with anti-aliasing and poor
> hinting.
> 
> It is better to default to "sans" and "monospace", which are mapped by
> fontconfig to some appropriate font of the sysadmin and user's
> choosing (typically Bitstream Vera Sans and Mono).  The result looks
> more sensible and it makes gitk feel like a well-behaved software
> citizen since its fonts match other native apps.
> 
> This patch does not change the appearance of gitk for users that have
> already run it, since gitk uses the remembered UI and diff font names
> from ~/.gitk
> 
> Requested-by: Michael Biebl <biebl@debian.org>
> Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>

Reviewed-by: Josh Triplett <josh@joshtriplett.org>

> ---
> Hi,
> 
> A variant of this patch that just unconditionally set the fonts has
> been in Debian for more than a year, but just now I finally got around
> to making it conditional.  Tested with tk 8.5 (where fontconfig is
> used) and tk 8.4 (where it isn't) and the autodetection seems to work.
> 
> Sensible?
> 
> Jonathan
> 
>  gitk-git/gitk |    5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/gitk-git/gitk b/gitk-git/gitk
> index 64ef3c40..6981cb20 100755
> --- a/gitk-git/gitk
> +++ b/gitk-git/gitk
> @@ -11426,6 +11426,11 @@ if {[tk windowingsystem] eq "aqua"} {
>      set mainfont {{Lucida Grande} 9}
>      set textfont {Monaco 9}
>      set uifont {{Lucida Grande} 9 bold}
> +} elseif {![catch {::tk::pkgconfig get fontsystem} xft] && $xft eq "xft"} {
> +    # fontconfig!
> +    set mainfont {sans 9}
> +    set textfont {monospace 9}
> +    set uifont {sans 9 bold}
>  } else {
>      set mainfont {Helvetica 9}
>      set textfont {Courier 9}
> -- 
> 1.7.9.2
> 

  reply	other threads:[~2012-03-08 12:46 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-08 12:30 [PATCH] gitk: use symbolic font names "sans" and "monospace" when available Jonathan Nieder
2012-03-08 12:46 ` Josh Triplett [this message]
2012-03-08 13:26   ` Jonathan Nieder
2012-03-08 21:19 ` Mark Hills
2012-03-18 23:25 ` Paul Mackerras
2012-03-19  4:53   ` Jonathan Nieder

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20120308124635.GA24679@leaf \
    --to=josh@joshtriplett.org \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=mark@pogo.org.uk \
    --cc=patthoyts@users.sourceforge.net \
    --cc=paulus@samba.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).