Skip to content

Instantly share code, notes, and snippets.

@karstengresch
Forked from fredgrott/settings_snippet.json
Created July 21, 2025 09:44
Show Gist options
  • Save karstengresch/66f540dd48fb2f1f4205f58c18385f75 to your computer and use it in GitHub Desktop.
Save karstengresch/66f540dd48fb2f1f4205f58c18385f75 to your computer and use it in GitHub Desktop.
full VSCode Foam settings
{
// indirect Foam settings overrided for editor
"editor.minimap.enabled": true,
"editor.minimap.maxColumn": 120,
"editor.minimap.renderCharacters": true,
"editor.minimap.scale": 1,
"editor.minimap.showSlider": "always",
"editor.minimap.side": "right",
"editor.minimap.size": "fit",
"editor.wrappingIndent": "indent",
"editor.wrappingStrategy": "advanced",
"editor.overviewRulerBorder": false,
"editor.occurrencesHighlight": true,
"editor.lineHeight": 24,
"editor.lightbulb.enabled": true,
"editor.lineNumbers": "on",
"editor.codeLensFontSize": 16,
"editor.colorDecorators": true,
"editor.experimentalWhitespaceRendering": "font",
// indirect overrides for files for Foam plugin settings
"files.defaultLanguage": "markdown",
"files.exclude": {
"**/node_modules": true
},
"files.watcherExclude": {
"**/node_modules": true
},
"files.autoSave": "afterDelay",
"files.autoSaveDelay": 1000,
"files.autoGuessEncoding": false,
// indirect overrides for Foam plugin
"git.enableSmartCommit": true,
"git.postCommitCommand": "sync",
// css styling for icons part of Markdown Mermaid
"markdown.styles": [
"https://use.fontawesome.com/releases/v5.7.1/css/all.css"
],
// md language overrides
"[markdown]": {
// these are overrides for Markdownlint to format
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
// for langaugetool linter
"editor.formatOnType": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.quickSuggestions": {
"comments": "on",
"strings": "on",
"other": "on"
}
},
// whether or not to show the preview to the side automatically
"markdown.extension.preview.autoShowPreviewToSide": false,
"markdown.extension.bold.indicator": "**",
"markdown.extension.completion.respectVscodeSearchExclude": true,
"markdown.extension.italic.indicator": "_",
"markdown.extension.list.indentationSize": "adaptive",
"markdown.extension.list.toggle.candidate-markers": [
"-",
"*",
"+",
"1.",
"1)"
],
"markdown.extension.orderedList.autoRenumber": true,
"markdown.extension.orderedList.marker": "one",
"markdown.extension.print.absoluteImgPath": true,
"markdown.extension.print.imgToBase64": false,
"markdown.extension.print.includeVscodeStylesheets": true,
"markdown.extension.print.theme": "dark",
"markdown.extension.syntax.decorationFileSizeLimit": 50000,
"markdown.extension.syntax.plainTheme": false,
"markdown.extension.print.validateUrls": true,
"markdown.extension.tableFormatter.delimiterRowNoPadding": false,
"markdown.extension.tableFormatter.enabled": true,
"markdown.extension.tableFormatter.normalizeIndentation": false,
"markdown.extension.toc.levels": "1..6",
"markdown.extension.toc.omittedFromToc": { "README.md": ["# Introduction"] },
"markdown.extension.toc.orderedList": false,
"markdown.extension.toc.plaintext": false,
"markdown.extension.toc.slugifyMode": "github",
"markdown.extension.toc.unorderedList.marker": "+",
"markdown.extension.toc.updateOnSave": true,
"markdown.preferredMdPathExtensionStyle": "auto",
// VSCode supplies a basic Markdown preview, then there are community plugins that extend that feature set.
// The Foam, GitHub Markdown Preview, Markdown Preview GitHub Styling, Markdown Emoji, Markdown Checkbox,
// Markdown YAMLPreambel, and Markdown Mermaid depend on these markdown-preview settings being set properly.
//
//
//
// inEditor
"markdown.preview.openMarkdownLinks": "inPreview",
// Foam override
"markdown.preview.breaks": true,
// URL like text is converted to links in preview
"markdown.preview.linkify": true,
// marks text being edited in preview
"markdown.preview.markEditorSelection": true,
// Anki for VSCode
// https://marketplace.visualstudio.com/items?itemName=jasew.anki
//
//
"anki.md.createTagForTitle": true,
"anki.api.hostname": "127.0.0.1",
"anki.api.port": 8765,
"anki.api.schema": "http",
"anki.saveStrategy": "useDirStructure",
"anki.defaultDeck": "notes",
// Foam
// https://marketplace.visualstudio.com/items?itemName=foam.foam-vscode
//
// linReferenceDefinitions is turned off as I not publishing my
// foam notes as if I need to publish then turn this on so that
// foam auto writes reference links at bottom of notes.
// openDailyNote.directory set to journal folder
// openDailyNote.titleFormat set to fullDate
// files.newNotePath is set to currentDir so that all my atomic notes
// and article notes get created in a specific folder rather than root
// of workspace.
"foam.edit.linkReferenceDefinitions": "withExtensions",
"foam.openDailyNote.directory": "journal",
"foam.openDailyNote.titleFormat": "fullDate",
"foam.files.newNotePath": "currentDir",
"foam.completion.label": "identifier",
"foam.graph.titleMaxLength": 24,
"foam.links.hover.enable": true,
"foam.links.sync.enable": true,
"foam.preview.embedNoteInContainer": true,
// Kanbn
// https://marketplace.visualstudio.com/items?itemName=samgiz.vscode-kanbn-boards
//
//
"kanbn.showUninitialisedStatusBarItem": true,
"kanbn.showTaskNotifications": true,
"kanbn.showSprintButton": true,
"kanbn.showBurndownButton": true,
// LanguageTool
// https://marketplace.visualstudio.com/items?itemName=adamvoss.vscode-languagetool
"languageTool.language": "en_US",
"languageTool.enabled": true,
"languageToolLinter.enabled": true,
"languageToolLinter.languageTool.ignoredWordsInWorkspace": [
"anki",
"anki-note",
"codespaces",
"filepath",
"intellisense",
"kanbn",
"luhmann",
"stylizer",
"vscode",
"zettelkasten"
],
// Peacock
// https://marketplace.visualstudio.com/items?itemName=johnpapa.vscode-peacock
// Settings guide https://www.peacockcode.dev/guide/#overview
"peacock.affectActivityBar": true,
"peacock.affectDebuggingStatusBar": true,
"peacock.affectEditorGroupBorder": true,
"peacock.affectPanelBorder": true,
"peacock.affectSashHover": true,
"peacock.affectSideBarBorder": true,
"peacock.affectStatusAndTitleBorders": true,
"peacock.affectStatusBar": true,
"peacock.affectTabActiveBorder": true,
"peacock.affectTitleBar": true,
"peacock.darkenLightenPercentage": 5,
"peacock.darkForegroundColor": "#15202b",
"peacock.elementAdjustments": {
"activityBar": "darken",
"statusBar": "lighten",
"titleBar": "lighten"
},
"peacock.favoriteColors": [
{
"name": "Angular Red",
"value": "#dd0531"
},
{
"name": "Azure Blue",
"value": "#007fff"
},
{
"name": "JavaScript Yellow",
"value": "#f9e64f"
},
{
"name": "Mandalorian Blue",
"value": "#1857a4"
},
{
"name": "Node Green",
"value": "#215732"
},
{
"name": "React Blue",
"value": "#61dafb"
},
{
"name": "Something Different",
"value": "#832561"
},
{
"name": "Svelte Orange",
"value": "#ff3d00"
},
{
"name": "Vue Green",
"value": "#42b883"
}
],
"peacock.keepBadgeColor": false,
"peacock.keepForegroundColor": false,
"peacock.lightForegroundColor": "#e7e7e7",
"peacock.showColorInStatusBar": true,
"peacock.squigglyBeGone": false,
"peacock.surpriseMeFromFavoritesOnly": false,
"peacock.surpriseMeOnStartup": false,
"peacock.color": "#832561",
"peacock.remoteColor": "#8325ff",
"peacock.vslsJoinColor": "#8325aa",
"peacock.vslsShareColor": "#8325cc",
// Better Comments
// https://marketplace.visualstudio.com/items?itemName=aaron-bond.better-comments
"better-comments.tags": [
{
"tag": "!",
"color": "#FF2D00",
"strikethrough": false,
"underline": false,
"backgroundColor": "transparent",
"bold": false,
"italic": false
},
{
"tag": "?",
"color": "#3498DB",
"strikethrough": false,
"underline": false,
"backgroundColor": "transparent",
"bold": false,
"italic": false
},
{
"tag": "//",
"color": "#474747",
"strikethrough": true,
"underline": false,
"backgroundColor": "transparent",
"bold": false,
"italic": false
},
{
"tag": "todo",
"color": "#FF8C00",
"strikethrough": false,
"underline": false,
"backgroundColor": "transparent",
"bold": false,
"italic": false
},
{
"tag": "*",
"color": "#98C379",
"strikethrough": false,
"underline": false,
"backgroundColor": "transparent",
"bold": false,
"italic": false
}
],
// Markdown Math
// https://marketplace.visualstudio.com/items?itemName=goessner.mdmath
"mdmath.delimiters": "dollars",
"mdmath.macros": {},
"mdmath.macroFile": "",
"mdmath.savePath": "./${file.name}.html",
"mdmath.autosave": false,
"mdmath.style": "",
"mdmath.theme": "default",
"mdmath.silent": false,
"mdmath.outerspace": false,
// Markdown Extended
// https://marketplace.visualstudio.com/items?itemName=jebbs.markdown-extended
// added kbd exclusion for foam
//
// Markdown Extended features enabled are:
// toc, footnotes, abbr, delist, sup, sub,
// checkbox, attrs, underline, multimedia-table,
// html5-embed, container, and mark
//
// Note not setting pdf output via extended as
// use the markdown-pdf plugin instead for pdf output
"markdownExtended.disabledPlugins": "kbd",
"markdownExtended.tocLevels": [1, 2, 3, 4, 5, 6, 7],
"markdownExtended.imageQuality": 100,
"markdownExtended.pdfDisplayHeaderFooter": true,
"markdownExtended.pdfFormat": "A0",
// Markdown Links (graph)
// https://marketplace.visualstudio.com/items?itemName=tchayen.markdown-links
"markdown-links.showColumn": "beside",
"markdown-links.openColumn": "one",
"markdown-links.autoStart": false,
"markdown-links.graphType": "obsidian",
// Markdown Lint
// https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint
//
// Then to suppress is a comment block one to disable the lint rule and
// then a end comment to re-enable the lint rule in the markdown doc
"markdownlint.config": {
"default": true,
"MD003": { "style": "atx_closed" },
"MD007": { "indent": 4 },
"no-hard-tabs": true
},
"markdownlint.ignore": [
"ignore.md",
"directory/ignore.md",
"**/ignore.md",
"**/*.md"
],
// Markdown Mermaid
// https://marketplace.visualstudio.com/items?itemName=bierner.markdown-mermaid
"markdown-mermaid.darkModeTheme": "dark",
"markdown-mermaid.languages": ["mermaid"],
// Markdown formatter declaration at top of the file
"prettier.singleQuote": false,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"workbench.colorTheme": "Tokyo Night",
// Tokyo Night
// https://marketplace.visualstudio.com/items?itemName=enkia.tokyo-night
//
// The editor tokenColorCustomizations block
// disables italics.
"editor.tokenColorCustomizations": {
"[Tokyo Night]": {
// or "[Tokyo Night Storm]"
"textMateRules": [
{
"scope": [
"comment",
"meta.var.expr storage.type",
"keyword.control.flow",
"keyword.control.return",
"meta.directive.vue punctuation.separator.key-value.html",
"meta.directive.vue entity.other.attribute-name.html",
"tag.decorator.js entity.name.tag.js",
"tag.decorator.js punctuation.definition.tag.js",
"storage.modifier"
],
"settings": {
"fontStyle": ""
}
}
]
}
},
// ErrorLens
// https://marketplace.visualstudio.com/items?itemName=usernamehw.errorlens
"errorLens.enabled": true,
"errorLens.borderRadius": "0px 5em 5em 0px",
"errorLens.delay": 0,
"errorLens.disableLineComments": {
"eslint": "// eslint-disable-next-line $code",
"Stylelint": "/* stylelint-disable-next-line $code */"
},
"errorLens.editorHoverPartsEnabled": {
"messageEnabled": false,
"sourceCodeEnabled": false,
"buttonsEnabled": false
},
"errorLens.enabledDiagnosticLevels": ["error", "warning", "info"],
"errorLens.enabledInMergeConflict": true,
"errorLens.enableOnDiffView": false,
"errorLens.followCursor": "activeLine",
"errorLens.followCursorMore": 0,
"errorLens.fontSize": "16",
"errorLens.fontStyleItalic": false,
"errorLens.fontWeight": "600",
"errorLens.gutterIconsEnabled": true,
"errorLens.gutterIconSet": "defaultOutline",
"errorLens.gutterIconsFollowCursorOverride": true,
"errorLens.gutterIconSize": "100%",
"errorLens.margin": "4ch",
"errorLens.messageBackgroundMode": "line",
"errorLens.messageEnabled": true,
"errorLens.messageMaxChars": 500,
"errorLens.messageTemplate": "$message $count $severity $source $code",
"errorLens.removeLinebreaks": true,
"errorLens.scrollbarHackEnabled": false,
"errorLens.searchForProblemQuery": "https://duckduckgo.com/?q=$message",
"errorLens.severityText": ["ERROR", "WARNING", "INFO", "HINT"],
"errorLens.statusBarColorsEnabled": false,
"errorLens.statusBarCommand": "copyMessage",
"errorLens.statusBarIconsAlignment": "left",
"errorLens.statusBarIconsAtZero": "removeBackground",
"errorLens.statusBarIconsEnabled": false,
"errorLens.statusBarIconsPriority": -9000,
"errorLens.statusBarIconsUseBackground": true,
"errorLens.statusBarMessageAlignment": "left",
"errorLens.statusBarMessageEnabled": false,
"errorLens.statusBarMessagePriority": -10000,
"errorLens.statusBarMessageTemplate": "$message $count $severity $source $code",
"errorLens.statusBarMessageType": "activeLine",
"errorLens.onSave": false,
"errorLens.replaceLinebreaksSymbol": "⏎",
// bracket coloring
"editor.bracketPairColorization.enabled": true,
// This is the Tokyo Night high contrast
// variation i.e. overriding the choosen dark Tokyo Night theme
// The full Tokyo Night dark theme is of course much larger.
"workbench.colorCustomizations": {
"[Tokyo Night]": {
"editorCodeLens.foreground": "#7982a9",
"foreground": "#959cbd",
"panelTitle.activeBorder": "#3d59a1",
"panelTitle.activeForeground": "#bdc7f0",
"panelTitle.inactiveForeground": "#959cbd",
"tab.activeForeground": "#bdc7f0",
"tab.inactiveForeground": "#959cbd",
"breadcrumb.foreground": "#959cbd",
"breadcrumb.focusForeground": "#bdc7f0",
"breadcrumb.activeSelectionForeground": "#bdc7f0",
"statusBar.foreground": "#bdc7f0",
"list.focusForeground": "#bdc7f0",
"list.hoverForeground": "#bdc7f0",
"list.activeSelectionForeground": "#bdc7f0",
"list.inactiveSelectionForeground": "#bdc7f0",
"list.inactiveSelectionBackground": "#202330",
"sideBar.foreground": "#959cbd",
"dropdown.foreground": "#959cbd",
"menu.foreground": "#bdc7f0",
"menubar.selectionForeground": "#bdc7f0",
"input.foreground": "#959cbd",
"input.placeholderForeground": "#959cbd",
"activityBar.foreground": "#bdc7f0",
"activityBar.inactiveForeground": "#787c99",
"gitDecoration.ignoredResourceForeground": "#696d87",
"window.activeBorder": "#ff0000",
"window.inactiveBorder": "#0000ff"
},
"activityBar.activeBackground": "#5b1a44",
"activityBar.background": "#5b1a44",
"activityBar.foreground": "#e7e7e7",
"activityBar.inactiveForeground": "#e7e7e799",
"activityBarBadge.background": "#5d7c23",
"activityBarBadge.foreground": "#e7e7e7",
"commandCenter.border": "#e7e7e799",
"sash.hoverBorder": "#5b1a44",
"statusBar.background": "#ab307e",
"statusBar.foreground": "#e7e7e7",
"statusBarItem.hoverBackground": "#ca4499",
"statusBarItem.remoteBackground": "#ab307e",
"statusBarItem.remoteForeground": "#e7e7e7",
"titleBar.activeBackground": "#ab307e",
"titleBar.activeForeground": "#e7e7e7",
"titleBar.inactiveBackground": "#ab307e99",
"titleBar.inactiveForeground": "#e7e7e799",
"sideBar.border": "#5b1a44",
"statusBar.border": "#ab307e",
"titleBar.border": "#ab307e",
"editorGroup.border": "#5b1a44",
"statusBar.debuggingBackground": "#30ab5d",
"statusBar.debuggingBorder": "#30ab5d",
"statusBar.debuggingForeground": "#e7e7e7",
"panel.border": "#5b1a44",
"errorLens.errorBackground": "#e454541b",
"errorLens.errorMessageBackground": "#e4545419",
"errorLens.errorBackgroundLight": "#e4545420",
"errorLens.errorForeground": "#ff6454",
"errorLens.errorForegroundLight": "#e45454",
"errorLens.warningBackground": "#ff942f1b",
"errorLens.warningMessageBackground": "#ff942f19",
"errorLens.warningBackgroundLight": "#ff942f20",
"errorLens.warningForeground": "#fa973a",
"errorLens.warningForegroundLight": "#ff942f",
"errorLens.infoBackground": "#00b7e420",
"errorLens.infoMessageBackground": "#00b7e419",
"errorLens.hintBackgroundLight": "#00b7e420",
"errorLens.infoForeground": "#00b7e4",
"errorLens.infoForegroundLight": "#00b7e4",
"errorLens.hintBackground": "#17a2a220",
"errorLens.hintMessageBackground": "#17a2a219",
"errorLens.infoBackgroundLight": "#00b7e420",
"errorLens.hintForeground": "#2faf64",
"errorLens.hintForegroundLight": "#2faf64",
"errorLens.statusBarIconErrorForeground": "#ff6464",
"errorLens.statusBarIconWarningForeground": "#fa973a",
"errorLens.statusBarErrorForeground": "#ff6464",
"errorLens.statusBarWarningForeground": "#fa973a",
"errorLens.statusBarInfoForeground": "#00b7e4",
"errorLens.statusBarHintForeground": "#2faf64",
"editorBracketHighlight.foreground1": "#5caeef",
"editorBracketHighlight.foreground2": "#dfb976",
"editorBracketHighlight.foreground3": "#c172d9",
"editorBracketHighlight.foreground4": "#4fb1bc",
"editorBracketHighlight.foreground5": "#97c26c",
"editorBracketHighlight.foreground6": "#abb2c0",
"editorBracketHighlight.unexpectedBracket.foreground": "#db6165",
"tab.activeBorder": "#5b1a44"
},
// File Icon Theme
// VSCode Icons customization goes here
// https://marketplace.visualstudio.com/items?itemName=vscode-icons-team.vscode-icons
// Customization docs in the project wiki at
// https://github.com/vscode-icons/vscode-icons/wiki
"vsicons.projectDetection.autoReload": false,
"vsicons.projectDetection.disableDetect": false,
// Replaces languagetool
// https://marketplace.visualstudio.com/items?itemName=valentjn.vscode-ltex
"ltex.enabled": ["latex", "markdown"],
"ltex.checkFrequency": "manual",
"ltex.additionalRules.enablePickyRules": true,
"ltex.completionEnabled": true,
"ltex.additionalRules.motherTongue": "en-US",
"ltex.disabledRules": {
"en-US": ["EN_QUOTES", "UPPERCASE_SENTENCE_START"]
},
"ltex.markdown.nodes": {
"CodeBlock": "ignore",
"FencedCodeBlock": "ignore",
"AutoLink": "dummy",
"Code": "dummy"
},
"ltex.language": "en-US",
"ltex.configurationTarget": {
"dictionary": "workspaceFolderExternalFile",
"disabledRules": "workspaceFolderExternalFile",
"hiddenFalsePositives": "workspaceFolderExternalFile"
},
"ltex.latex.commands": {
"\\label{}": "ignore",
"\\documentclass[]{}": "ignore",
"\\cite{}": "dummy",
"\\cite[]{}": "dummy"
},
// Read Time
// https://marketplace.visualstudio.com/items?itemName=johnpapa.read-time
"readTime.enabled": true,
"readTime.wordsPerMinute": 200,
"workbench.iconTheme": "vscode-icons",
// Material Product Icons
// https://marketplace.visualstudio.com/items?itemName=PKief.material-product-icons
"workbench.productIconTheme": "material-product-icons",
"gitlens.codeLens.authors.enabled": true,
"gitlens.codeLens.dateFormat": "dddd, MMMM Do YYYY, h:mm:ss a",
"gitlens.codeLens.enabled": true,
"gitlens.codeLens.includeSingleLineSymbols": false,
"gitlens.codeLens.recentChange.enabled": true,
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment