Change ledger font

AC gnucash at acarver.net
Wed Sep 24 03:14:21 EDT 2014


On 2014-09-23 13:39, AC wrote:
> On 2014-09-23 09:18, Geert Janssens wrote:
>> On Monday 22 September 2014 06:20:25 AC wrote:
>>> On 2014-09-22 04:12, Geert Janssens wrote:
>>>> On Sunday 21 September 2014 18:55:18 AC wrote:
>>>>> On 2014-09-21 11:08, Geert Janssens wrote:
>>>>>> Which changes did you make ?
>>>>>
>>>>> I specifically added:
>>>>>>> I also found many gtkrc files spread throughout the \program
>>>>>>> files
>>>>>>> (x86)\gnucash\share\themes tree.  I edited the Nimbus theme
>>>>>>> there,
>>>>>>> too, again with no success.  The ledger stays green/tan.
>>>>>>
>>>>>> No these files define the possible themes available. Changing
>>>>>> these
>>>>>> won't make a difference.
>>>>>>
>>>>>> However, if your ledger stays green/tan that means you didn't
>>>>>> change
>>>>>> the preference inside gnucash that I pointed out to you:
>>>>>> Edit->Preferences->Register->Use System Theme colors
>>>>>>
>>>>>> If you *don't* want the green/tan color scheme, you should
>>>>>> *enable*
>>>>>> this option.
>>>>>
>>>>> I did that, too, it didn't take my edits above, it still took the
>>>>> system colors which ended up with an all white ledger.
>>>>
>>>> Exactly. That's what I meant with
>>>>
>>>>> I'll add that there is currently a bug in gnucash version that
>>>>> causes
>>>>> the theme colors to be ignored. This bug will be fixed in the
>>>>> upcoming gnucash 2.6.4.
>>>>
>>>> in one of my earlier replies.
>>>>
>>>> The theme changes you added above will only be work correctly as of
>>>> GnuCash 2.6.4.
>>>
>>> Right, but you also said that I could override the system colors with
>>> a customized .gtkrc file but it appears one was never created which
>>> goes against the procedures outlined in the websites you provided. 
>>> So there's either an additional bug that the .gtkrc file isn't being
>>> generated as it should -- even though a theme can be applied and
>>> everything but the ledger colors change* -- or a very different file
>>> name and location is used to store this data and the documentation is
>>> out of date.
>>>
>> No the documentation is still current.
>>>
>>> * I used the theme selector tool and was able to change the colors on
>>> version 2.6.3.  The buttons, tabs, status bar, scroll bars, and other
>>> visual features changed with the theme changes, only the ledger lines
>>> don't.
>> This definitely means that a .gtkrc-2.0 file has been generated. If not 
>> these theme changes would not have been visible.
>>
>> The only reasons I can imagine for not finding this in your home 
>> directory would be either:
>> 1. either your folder preferences hide this file for you
>> 2. or you have altered the value of the HOME environment variable to 
>> point somewhere else. Is such a line in
>> \program files (x86)\gnucash\etc\gnucash\environment ?
> 
> Files are not hidden from view in the explorer windows (I always turn
> that off on any machine) and that setting does not affect the find
> utility under Cygwin, a simple 'ls' can still see those files.
> 
> I have also not altered the environment variables, HOME is still C:\users\
> 
> There are no edited entries in the environment file:
> 
> [Variables]
> # PATH is used to find the finance::quote utility functions
> PATH={GNC_BIN};{PATH}
> 
> # Tell GnuCash where to look for GnuCash modules
> GNC_MODULE_PATH={GNC_LIB};{GNC_MODULE_PATH}
> 
> # Prevent embedded guile from issuing deprecation warnings
> GUILE_WARN_DEPRECATED=no
> 
> # Tell Guile where to find GnuCash specific guile modules
> # GUILE_LIBS can be used to override the path to Guile's own modules
> # GUILE_LIBS=
> GUILE_LOAD_PATH={GNC_DATA}/guile-modules;{GNC_DATA}/scm;{GUILE_LIBS};{GNC_HOME}/share/guile/1.8;{GUILE_LOAD_PATH}
> # Clear SCHEME_LIBRARY_PATH to prevent interference from other guile
> installations (like cygwin)
> SCHEME_LIBRARY_PATH=
> 
> # Tell Guile where to find GnuCash specific shared libraries
> GNC_LIBRARY_PATH={SYS_LIB}
> LD_LIBRARY_PATH={GNC_LIBRARY_PATH};{LD_LIBRARY_PATH}
> # The same, but for GnuCash on OS X
> DYLD_LIBRARY_PATH={GNC_LIBRARY_PATH};{DYLD_LIBRARY_PATH}
> 
> # If you wish GnuCash to use a different language, uncomment the two
> parameters
> # below and set LANG to your preferred locale
> # LANG=nl_BE
> # LANGUAGE={LANG}
> GNC_DBD_DIR={GNC_HOME}/lib/dbd
> 
> # GnuCash was not installed in the default location
> # XDG_DATA_DIRS will be set so that our documentation
> # and gsettings schemas are found.
> XDG_DATA_DIRS={GNC_HOME}/share;{XDG_DATA_DIRS};/usr/local/share;/usr/share
> 
> 
> 
> Searching with multiple utilities does not reveal any .gtkrc-2.0 files
> anywhere:
> 
> $ find /cygdrive/c -name *.gtkrc* 2>/dev/null
> 
> $
> 
> (I redirected stderr to trim errors caused by accessing some core
> Windows files)
> 
> Searching for plain gtkrc:
> 
> $ find /cygdrive/c -name *gtkrc* 2>/dev/null
> /cygdrive/c/Program Files
> (x86)/GNU/GnuPG/share/themes/Default/gtk-2.0-key/gtkrc
> /cygdrive/c/Program Files
> (x86)/GNU/GnuPG/share/themes/Emacs/gtk-2.0-key/gtkrc
> /cygdrive/c/Program Files
> (x86)/GNU/GnuPG/share/themes/MS-Windows/gtk-2.0/gtkrc
> 
> [ trimming additional share/themes entries]
> 
> /cygdrive/c/Users/agcarver/AppData/Local/VirtualStore/Program Files
> (x86)/gnucash/etc/gtk-2.0/gtkrc
> 
> 
> Opening that last file:
> 
> # Auto-written by gtk2_prefs. Do not edit.
> 
> gtk-theme-name = "Bluecurve-Slate"
> style "user-font"
> {
> 	font_name="Arial 10"
> }
> widget_class "*" style "user-font"
> 
> So it looks like this is the mystery file which does not match the
> documentation in the slightest.  The path is entirely wrong:
> 
> C:\Users\[username]\AppData\Local\VirtualStore\Program Files
> (x86)\gnucash\etc\gtk-2.0\
> 
> which is not what is described in the documents:
>  Q: What if I need to change another visual aspect, not covered by
> "Select Theme"?
> 
> A: GnuCash depends on the Gtk toolkit for its graphical user interface.
> There is a file called ".gtkrc-2.0" in your user's home directory which
> you can adapt to your needs. Your home directory is typically
> Documentents and Settings\Username or Users\Username depending on your
> version of Windows.
> 
> The file name is also not the same.  It is saving a 'gtkrc' file and not
> '.gtkrc-2.0'
> 
> 
> I will try to edit this file and see what happens.


Editing the above 'gtkrc' file (and turning on 'Use system theme
colors') does indeed change the register colors.

What I would need to find now are the various widgets for the register
so I can change just the register font colors.  I'm able to change the
row colors but the fonts won't change color or weight (I'm trying to
bold the header and change the fonts to white since I'm using a dark
background).

I've tried various forms of text[NORMAL] and fg[NORMAL] for the style
used by the header but the font color doesn't change.  I don't want to
change the system wide font color, only the ledger header and rows.


More information about the gnucash-user mailing list