BK-CONFIG-GUI(1)
okay so this is bk config-gui(none) from the BitKeeper Userβs Manual, and weβre doing part 1 of 2 β stay with me, bestie π
β¨
πΈ NAME πΈ
bk config-gui β configuration for the BitKeeper graphical tools. Thatβs it, thatβs the vibe. π
β¨ DESCRIPTION β¨
BitKeeper uses a configuration file called config-gui for the configuration of the BitKeeper graphical tools. This config file is literally there to modify colors, fonts, and widget dimensions. Slay. π¨π
You can find where this configuration file lives on your platform by running bk dotbk. That command returns the pathname of the directory where the BitKeeper graphical tools will look for the config-gui file. Very handy, no cap. πβ¨
Important vibe check: the config file must be a valid tcl program, because it is evaluated by the BitKeeper GUI tools (which are also tcl/tk programs). Periodt. π§
The point of it being a program is that tcl code may be added to the config file in order to customize the gui based on arbitrary values such as machine name, screen size, etc. For example, if all screens of a certain size were known to be LCD screens (typically laptops), then the following technique could be used to get colors more appropriate for those screens:
if {[winfo screenwidth .] <= 1024} {
# These show up better on LCD displays.
set gc(diffColor) gray
set gc(activeDiffColor) lightseagreen
set gc(fm3.handColor) yellow
}
The point of the config-gui file is to change configuration options. A typical line looks like this:
set gc(diffColor) #f0f0f0
and the meanings for each part of that line are:
setβ tcl syntax for assigning variablesgc(diffColor)β configuration option#f0f0f0β hexadecimal color value
Each variable in the config file may take one of two forms: tool specific or global. Tool specific variables, which apply only to the named tool, have the tool name as a prefix, i.e.,
set gc(cset.fixedFont) {fixed 12 roman}
whereas global variables, which apply to all tools unless there is a tool specific version defined as well, look like
set gc(fixedBoldFont) {fixed 12 roman bold}
The tool names used to get to tool specific variables (or to have a change only apply to that tool) are the GUI toolβs name with the trailing βtoolβ dropped, i.e., βdiffβ for βdifftoolβ. Iykyk. π«Άπ₯
π TCL INFORMATION π
The following tcl/tk commands may be useful for display specific customization:
[winfo depth .]β returns the color depth of the screen in bits, i.e.,16means the screen can do65536different colors.[winfo screen .]β Returns the name of the screen in the formdisplayName.screenIndex, i.e.,"disks.bitkeeper.com:0.0".[winfo screenheight .]β returns the height of the screen in pixels.[winfo screenwidth .]β returns the width of the screen in pixels.
π«Ά GUI CONFIGURATION π«Ά
okay so every single one of these variables is used by the various gui tools, and each one has to live inside a statement shaped exactly like this:
set gc(variable) value
In the list below Iβm only showing the variable part, bestie β the set gc(...) wrapper is implied for all of them.
π GLOBAL CONFIGURATION π
These are the shared glow-up settings for the gui tools.
fixedFontβ Font used in all of the text widgets, like file lists, entry boxes, and text widgets showing contents of files. Defaults to values that match appropriate system defaults.fixedBoldFontβ Bold font used to highlight text, like difference within lines inbk difftool. Defaults to values that match appropriate system defaults.diffColorβ Color of the changed lines in a diff view. Default:#EDEDEDactiveDiffColorβ Color of the selected diff block in a diff view. Default:#2FEDADoldColorβ Color of the older revision or diff. OverridesdiffColor. Default:#B48CFFnewColorβ Color of the newer revision or diff. OverridesdiffColor. Default:#A8D8E0activeOldColorβ Color of the older selected diff block in a diff view. OverridesactiveDiffColor. Default:#2FEDADactiveNewColorβ Color of the newer selected diff block in a diff view. OverridesactiveDiffColor. Default:#2FEDADhighlightOldβ Color of the subline highlighting for old lines in a diff. Default:#FFA500highlightNewβ Color of the subline highlighting for new lines in a diff. Default:#FFA500noticeColorβ Color for warnings and messages. Default:#DBDFE6searchColorβ Highlight color for search matches. Used inbk difftoolandbk revtool. Default:#FFA500warnColorβ Color of the error messages. Used inbk citool. Default:#FFFF00textBGβ Background color for text windows. Used in all of the tools. Default:#FFFFFFtextFGβ Text color. Used in all of the tools. Default:#000000tabwidthβ The width of a tab in average sized characters. Default:8.quitβ Key used to exit from the gui tools. Default:<Controlβq>
π§ CITOOL CONFIGURATION π§
ci.commentsHeightβ height of the comments window.ci.diffHeightβ height of the diffs window (the lower window).ci.display_bytesβ Number of bytes to show in new files inbk citool. If set to0, the entire file is displayed. Default:8192ci.editHeightβ Height of the popup editor. Default:30ci.editWidthβ Width of the popup editor. Default:80ci.excludeColorβ Color of the exclude icon (X character). Default:#FF0000ci.filesHeightβ number of files in the top window.ci.rescanβ Set this option to1if you would likebk citoolto run again after doing the commit. Rescanning is useful if you do development in the manner where you modify many files that logically belong to separate changesets. This option then allows you to stay inbk citooland create different changesets for the files without restarting citool each time. Default:0
π¦ CSETTOOL CONFIGURATION π¦
cset.annotationβ Annotation options to apply when getting files to be diffed. See theβaoption tobk get. Example:βaum. Default:ββ(do not display annotations)cset.listHeightβ Number of lines in the list windows. Default:12
π DIFFTOOL CONFIGURATION π
diff.diffHeightβ Number of lines in the diff windows. Default:50diff.searchColorβ Highlight color for search matches. Default:#ADD8E6
π FM3TOOL CONFIGURATION π
fm3.commentsβ Boolean which controls the display of the comments window at the top. Default:1(on)fm3.firstDiffβ Keyboard accelerator for going to the first change. Default:βββfm3.handColorβ Color used to highlight hand selected merge choices in the side by side local and remote diff windows. Default:#B4B6CBfm3.lastDiffβ Keyboard accelerator for going to the last change. Default:β+βfm3.mergeColorβ Color used to highlight merge choices, both manual and automatic, in the lower merge window. Default:#B4B6CBfm3.nextConflictβ Keyboard accelerator for going to the next conflict (skips automerged changes). Default:β}βfm3.nextDiffβ Keyboard accelerator for going to the next change. Default:β]βfm3.prevConflictβ Keyboard accelerator for going to the previous conflict (skips automerged changes). Default:β{βfm3.prevDiffβ Keyboard accelerator for going to the previous change. Default:β[βfm3.sameColorβ Color used to highlight the portion of a conflict consisting of unchanged lines. Default:#EFEFEFfm3.showEscapeButtonβ When entering edit mode, if this variable is set to1a button will be displayed that you can click on to exit edit mode. Default:1fm3.spaceColorβ Color used to highlight the beginnings of lines which areβspacersβinserted to make the changes line up horizontally. Default:#000000fm3.toggleAnnotationsβ Keyboard accelerator for toggling the display of annotations. Default:βzβfm3.toggleGCAβ Keyboard accelerator for toggling the display of the GCA. Default:βxβfm3.undoβ Keyboard accelerator for undoing the last merge selection. Default:βuβ
π HELPTOOL CONFIGURATION π
help.linkColorβ Color of the hyperlinks inbk helptool. Default:#0000FFhelp.scrollbarsβ The location of the two scrollbars in helptool. The value should be two characters with each one beingLorR. The first character indicates the position of the topic list scrollbars as Left or Right, while the second character specifies the position of the content scrollbar. Default:RRhelp.topicsColorβ Highlight color for topic search matches. Default:#FFA500help.heightβ Number of rows to display inbk helptool. Default:50help.widthβ Number of columns to display inbk helptool. Default:72help.exactβ Only return full word/phrase matches. Default:0, set to1to enable
π§ RENAMETOOL CONFIGURATION π§
rename.listHeightβ Height of the file list widget inbk renametool(in lines). Default:8
π REVTOOL CONFIGURATION π
rev.canvasBGβ Color of the graph background. Default:#9FB6B8rev.commentBGβ Background color of the comment window in the annotated listing. Default:#ADDD8E6rev.arrowColorβ Color of the arrows connecting the revision boxes. Default:#00008Brev.mergeOutlineβ Color of the box surrounding the merge revisions. Default:#00008Brev.revOutlineβ Color of the box surrounding the regular revisions. Default:#00008Brev.revColorβ Fill color of the unselected node. Default:#9FB6B8rev.selectColorβ Highlight color for the selected annotated line. Default:#ADDD8E6rev.commentHeightβ Height of the comment window above the annotated file listing. Default:5rev.textWidthβ Width of widget that displays the file content. Default:92rev.annotateβ Arguments to the annotate command. Default:βAur.rev.textHeightβ Height of widget that displays the file content. Default:50rev.showRevsβ The number of revs to show when running revtool against a single file. Default:250rev.showCsetRevsβ The number of revs to show when running revtool against a ChangeSet file. Default:50rev.tagOutlineβ Color of the outline around nodes in the ChangeSet graph that have a tag associated with them. If this value is the empty string no outline will be drawn. Default:#FFFF00rev.dateColorβ Color of the date text at the bottom of graph. Default:#181818
π₯ SEE ALSO π₯
- Any Tcl/Tk documentation
X(1)bkβcitool,bkβcsettool,bkβdifftool,bkβfmtool,bkβfm3tool,bkβhelptool,bkβrevtool,bkβrenametool
β CATEGORY β
- Overview
- Admin
GUIβtools
source/version: BitKeeper Inc, 1E1; footer/date tag: bk configβgui(none) β thatβs the whole page, bestie. Mwah πβ¨π«Ά
π¦ where this page comes from
- alpine 3.24: bitkeeper-doc 7.3.3-r1 Β· Apache-2.0
- Copyright (c) 1998-2015 BitKeeper Inc
- Copyright (C) 1989, 1990, 1991, 1992, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms