Settings
~/.config/ecliptic/settings.json, as VS Code keeps its own: JSON with
comments and trailing commas allowed, only the settings you changed. Edit it
in File → Settings, or by hand (File → Open Settings (JSON) opens it in
ecliptic.editor.command, $VISUAL or the desktop's editor); either way the
change applies at once.
{
// Light, whatever the desktop says.
"window.autoDetectColorScheme": false,
"workbench.colorTheme": "Light Modern",
"editor.fontSize": 14,
"git.scanRepositories": ["~/Warehouse", "~/code"],
}
| Setting | Default | |
|---|---|---|
workbench.colorTheme |
"Dark Modern" |
any installed theme; applies when the next one is off |
window.autoDetectColorScheme |
true |
follow the desktop's light or dark scheme, with: |
workbench.preferredDarkColorTheme |
"Dark Modern" |
the theme while the desktop is dark |
workbench.preferredLightColorTheme |
"Light Modern" |
the theme while it is light |
workbench.colorCustomizations |
{} |
colours over any theme ({ "sideBar.background": "#202020" }), or over one ({ "[Dark+]": { … } }); the ids are in docs/extensions.md |
workbench.statusBar.visible |
true |
the status bar |
workbench.activityBar.location |
"default" |
the Activity Bar down the left edge, or "hidden" |
workbench.hover.delay |
600 |
milliseconds before a file's or commit's tooltip shows |
ecliptic.layout.twoRows |
true |
columns in two rows (View → Two Rows) |
ecliptic.drawer.sideBar |
true |
the changes (or a commit's files) down the left of the drawer |
editor.fontFamily |
"" |
the font of diffs and commits; empty: the desktop's monospace font |
editor.fontSize |
12 |
its size in pixels (6–40) |
ecliptic.editor.command |
"" |
the editor Open in Editor and Open Settings (JSON) use, as $VISUAL is written (code, code -g, /usr/bin/kate); the path is appended; empty: $VISUAL, else the desktop's default app |
ecliptic.menu.file |
["git.openChange", "---", "git.openFile", "revealFileInOS", "---", "copyFilePath", "copyRelativeFilePath", "ecliptic.copyFileName", "---", "ecliptic.copyDiff"] |
a changed file's menu: command ids in order, "---" a separator; an unknown id is reported and skipped |
ecliptic.menu.commit |
["ecliptic.openCommit", "---", "ecliptic.copyCommitHash", "ecliptic.copyCommitSubject"] |
a commit's menu |
ecliptic.menu.column |
["ecliptic.changeRepository", "ecliptic.refreshColumn", "---", "ecliptic.moveColumnLeft", "ecliptic.moveColumnRight", "ecliptic.moveColumnUp", "ecliptic.moveColumnDown", "---", "ecliptic.closeColumn"] |
a column's menu (its headers, empty space, or its row in the side bar) |
scm.countBadge |
"all" |
the Source Control badge counts every column's changes, the active column's ("focused") or none ("off") |
ecliptic.changes.lineCounts |
true |
count each changed file's lines added and removed |
ecliptic.activity.unseenMarks |
true |
mark what changed until the column is looked at |
ecliptic.activity.flash |
true |
flash a file when it changes |
scm.graph.pageSize |
200 |
commits in each Graph (10–5000) |
git.scanRepositories |
[] |
folders the repository picker searches; empty: ~/Warehouse, else home |
git.repositoryScanMaxDepth |
4 |
how many levels below them it looks (1–16) |
Extensions add their own settings, in their own sections of the Settings editor. A value of the wrong type is reported in a banner and its default is used; a file that is not valid JSON is reported too, and the last good settings apply until it is fixed (the editor won't write into it meanwhile). The theme, the two rows and the search folders were once in config.toml; they move to settings.json the first time this version starts.
The layout file
~/.config/ecliptic/config.toml, written when you change columns:
drawer_width = 760.0
row_split = 0.5 # the top row's share of the height (0.15–0.85)
side_bar = false # the Primary Side Bar is open
side_bar_width = 260.0 # pixels (170–800)
[[column]]
repo = "/home/you/code/feed"
width = 340.0 # pixels (220–2000)
collapsed = ["graph"] # any of "repositories", "changes", "graph"
split = 0.5 # Changes' share of the space it splits with Graph
row = 0 # 0 top row, 1 bottom row
[[column]] # an empty column, in the top row
Up to 32 columns. Columns load grouped by row, top row first; files from before rows put every column in the top row. Older files with relative widths (around 1.0) are scaled to pixels. A config that fails to parse is reported in a banner and never overwritten.