✅ Introduction
Scimax VS Code provides extensive configuration options to customize your scientific computing environment. This guide covers all available settings and provides examples for common use cases.
✅ Accessing Settings
There are multiple ways to access and modify Scimax settings:
Settings UI: Press C/Cmd-, to open the VS Code settings interface. Search for "scimax" to see all Scimax-related settings.
settings.json: Edit your settings file directly for more control:
Settings File Locations
VS Code uses two types of settings files:
| Type | Scope | Location |
|---|---|---|
| User | All workspaces | Linux: ~/.config/Code/User/settings.json |
| macOS: ~/Library/Application Support/Code/User/settings.json | ||
| Windows: %APPDATA%\Code\User\settings.json | ||
| Workspace | Current workspace only | .vscode/settings.json in workspace root |
Workspace settings override user settings for that specific workspace.
Settings Format
All Scimax settings use JSON format in settings.json:
{
"scimax.journal.directory": "~/my-journal",
"scimax.journal.format": "org",
"scimax.db.autoIndex": true
}
✅ General Settings
General settings that apply across Scimax features.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.email | string | "" | Email for API integrations (OpenAlex) |
Detailed Configuration
scimax.email
Type: string
Default: "" (empty)
Description: Your email address for Scimax API integrations
This email is used for services that offer better access to identified users. Currently used for:
OpenAlex: Setting your email gives you access to the polite pool with faster rate limits
{
"scimax.email": "user@example.com"
}
You can also configure this via the command scimax.ref.configureOpenAlex which provides a quick pick menu for setting both your email and optional API key.
✅ Org-mode Settings
Settings for org-mode document behavior including TODO states, progress logging, and more.
✅ Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.org.logRepeat | string (enum) | "false" | Enable progress logging |
| scimax.org.logIntoDrawer | boolean or string | false | Where to log state changes |
✅ Detailed Configuration
✅ scimax.org.logRepeat
Type: string
Values:
"false","time","note"Default:
"false"Description: Controls logging when repeating tasks cycle back to TODO
When a repeating task (one with a repeater like +1w in its DEADLINE or SCHEDULED timestamp)
is marked done, it cycles back to TODO. This setting controls whether to log that completion.
| Value | Behavior |
|---|---|
"false" | No logging (default) |
"time" | Log timestamp and state change |
"note" | Log timestamp, state change, prompt for note |
{
"scimax.org.logRepeat": "time"
}
✅ scimax.org.logIntoDrawer
Type: boolean or string
Default:
falseDescription: Where to log state changes
| Value | Behavior |
|---|---|
false | Log in body text after properties |
true | Log into :LOGBOOK: drawer |
"CUSTOMNAME" | Log into custom-named drawer |
{
"scimax.org.logIntoDrawer": true
}
✅ Journal Settings
Configure the journal system for daily note-taking and logging.
✅ Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.journal.directory | string | "" | Directory for journal files |
| scimax.journal.format | string | "org" | File format (org or markdown) |
| scimax.journal.template | string | "default" | Template name for new entries |
| scimax.journal.dateFormat | string | "YYYY-MM-DD" | Date format for filenames |
| scimax.journal.autoTimestamp | boolean | true | Auto-add timestamps to log entries |
| scimax.journal.weekStartsOn | string | "monday" | First day of week (monday or sunday) |
✅ Detailed Configuration
✅ scimax.journal.directory
Type: string
Default: "" (uses ~/scimax-journal)
Description: Directory where journal files are stored
{
"scimax.journal.directory": "~/Documents/journal"
}
✅ scimax.journal.format
Type: string (enum)
Default: "org"
Options: "org", "markdown"
Description: File format for journal entries
{
"scimax.journal.format": "markdown"
}
✅ scimax.journal.template
Type: string
Default: "default"
Description: Template name for new journal entries. Create custom templates in your journal directory.
{
"scimax.journal.template": "daily-standup"
}
✅ scimax.journal.dateFormat
Type: string
Default: "YYYY-MM-DD"
Description: Date format for journal file names using date-fns tokens
`YYYY-MM-DD' → 2026-01-14
YYYY/MM/DD → 2026/01/14
`YYYYMMDD' → 20260114
{
"scimax.journal.dateFormat": "YYYY/MM/DD"
}
✅ scimax.journal.autoTimestamp
Type: boolean
Default: true
Description: Automatically insert timestamps when creating log entries
{
"scimax.journal.autoTimestamp": false
}
✅ scimax.journal.weekStartsOn
Type: string (enum)
Default: "monday"
Options: "monday", "sunday"
Description: First day of the week in calendar view
{
"scimax.journal.weekStartsOn": "sunday"
}
✅ Database & Search Settings
Configure the full-text search database and semantic search capabilities.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.db.includeJournal | boolean | true | Include journal directory |
| scimax.db.includeWorkspace | boolean | true | Include workspace folders |
| scimax.db.includeProjects | boolean | true | Include scimax projects |
| scimax.db.include | array | [ ] | Additional directories/files |
| scimax.db.exclude | array | See below | Patterns/paths to exclude |
| scimax.db.autoIndex | boolean | false | Auto-index workspace on activation |
| scimax.db.embeddingProvider | string | "ollama" | Embedding provider for semantic search |
| scimax.db.ollamaUrl | string | "http://localhost:11434" | Ollama API URL |
| scimax.db.ollamaModel | string | "nomic-embed-text" | Ollama embedding model |
| scimax.db.queryTimeoutMs | number | 30000 | Query timeout in milliseconds |
| scimax.db.maxRetryAttempts | number | 3 | Max retries for transient failures |
| scimax.db.maxFileSizeMB | number | 10 | Max file size to index (MB) |
Detailed Configuration
scimax.db.includeJournal
Type: boolean
Default:
trueDescription: Include the journal directory in database indexing
scimax.db.includeWorkspace
Type: boolean
Default:
trueDescription: Include workspace folders in database indexing
scimax.db.includeProjects
Type: boolean
Default:
trueDescription: Include all scimax projects in database indexing
scimax.db.include
Type: array of strings
Default:
[ ]Description: Additional directories or files to index (supports ~ for home directory)
{
"scimax.db.include": [
"~/Documents/notes",
"~/research",
"~/teaching/courses"
]
}
scimax.db.exclude
Type: array of strings
Default:
["**/node_modules/**", "**/.git/**", "**/dist/**", "**/build/**"]Description: Patterns or paths to exclude from indexing (globs and absolute paths)
{
"scimax.db.exclude": [
"**/node_modules/**",
"**/.git/**",
"**/dist/**",
"**/build/**",
"**/archive/**",
"~/notes/scratch.org"
]
}
scimax.db.autoIndex
Type: boolean
Default: false
Description: Automatically index workspace files on activation. Warning: Disable for large workspaces to prevent memory issues.
{
"scimax.db.autoIndex": true
}
scimax.db.embeddingProvider
Type: string (enum)
Default: "ollama"
Options: "none", "ollama"
Description: Embedding provider for semantic/AI-powered search
{
"scimax.db.embeddingProvider": "ollama"
}
scimax.db.ollamaUrl
Type: string
Default: "http://localhost:11434"
Description: Ollama API URL for embeddings
{
"scimax.db.embeddingProvider": "ollama",
"scimax.db.ollamaUrl": "http://localhost:11434"
}
scimax.db.ollamaModel
Type: string
Default: "nomic-embed-text"
Description: Ollama model name for embeddings. Must be installed in Ollama.
{
"scimax.db.embeddingProvider": "ollama",
"scimax.db.ollamaModel": "nomic-embed-text"
}
✅ scimax.db.queryTimeoutMs
Type: number
Default:
30000(30 seconds)Range: 5000 - 300000
Description: Maximum time in milliseconds for database queries. Prevents hung operations.
Increase this value if you have a very large database or slow disk:
{
"scimax.db.queryTimeoutMs": 60000
}
✅ scimax.db.maxRetryAttempts
Type: number
Default:
3Range: 1 - 10
Description: Maximum retry attempts for transient database failures (e.g., database locked, I/O errors).
Uses exponential backoff between retries.
{
"scimax.db.maxRetryAttempts": 5
}
✅ scimax.db.maxFileSizeMB
Type: number
Default:
10Range: 1 - 100
Description: Maximum file size in MB to index. Files larger than this are skipped.
Useful when working with external repositories or collaborator files that may contain large generated files:
{
"scimax.db.maxFileSizeMB": 20
}
✅ Logging Settings
Configure logging and diagnostics.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.logLevel | string | "info" | Log level for Scimax output |
| scimax.logMaxSizeKB | number | 1024 | Max log file size before rotation |
| scimax.logBackupCount | number | 3 | Number of backup log files to keep |
Detailed Configuration
scimax.logLevel
Type: string
Default:
"info"Enum:
"debug","info","warn","error"Description: Controls the verbosity of logging to the Scimax output channel.
| Level | Shows |
|---|---|
| debug | All messages including detailed debug info |
| info | Normal operation messages |
| warn | Warnings and errors only |
| error | Errors only |
Note: Errors are always logged to the error log regardless of this setting, and a status bar indicator appears when errors occur.
scimax.logMaxSizeKB
Type: number
Default:
1024(1MB)Min/Max: 100 - 10240
Description: Maximum size of each log file in KB before rotation. Logs are written to the extension's storage directory.
scimax.logBackupCount
Type: number
Default:
3Min/Max: 1 - 10
Description: Number of rotated log backup files to keep (
scimax.log.1,scimax.log.2, etc.). Oldest backup is deleted when limit is reached.
Opening Log Files
Use the command Scimax: Open Log File Directory to open the directory containing log files for debugging.
{
"scimax.logLevel": "debug",
"scimax.logMaxSizeKB": 2048,
"scimax.logBackupCount": 5
}
Code Execution Settings
Configure Python and Jupyter paths for source block execution.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.literate.pythonPath | string | "" | Path to Python executable |
| scimax.literate.jupyterPath | string | "" | Path to Jupyter executable |
Detailed Configuration
scimax.literate.pythonPath
Type: string
Default: "" (uses system Python)
Description: Path to Python executable for code block execution
{
"scimax.literate.pythonPath": "/usr/local/bin/python3"
}
Or with virtual environment:
{
"scimax.literate.pythonPath": "~/projects/myproject/.venv/bin/python"
}
scimax.literate.jupyterPath
Type: string
Default: "" (uses system Jupyter)
Description: Path to Jupyter executable
{
"scimax.literate.jupyterPath": "~/anaconda3/bin/jupyter"
}
Reference/Citation Settings
Configure bibliography management and citation styles.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.ref.bibliographyFiles | array | [ ] | Paths to BibTeX files |
| scimax.ref.pdfDirectory | string | "" | Directory with PDF files |
| scimax.ref.notesDirectory | string | "" | Directory for reference notes |
| scimax.ref.defaultCiteStyle | string | "cite" | Default citation style |
Detailed Configuration
scimax.ref.bibliographyFiles
Type: array of strings
Default: [ ]
Description: Paths to BibTeX bibliography files
{
"scimax.ref.bibliographyFiles": [
"~/Documents/bibliography/main.bib",
"~/research/papers.bib"
]
}
scimax.ref.pdfDirectory
Type: string
Default: ""
Description: Directory containing PDF files for references
{
"scimax.ref.pdfDirectory": "~/Documents/papers"
}
scimax.ref.notesDirectory
Type: string
Default: ""
Description: Directory for reference notes and annotations
{
"scimax.ref.notesDirectory": "~/Documents/notes/references"
}
scimax.ref.defaultCiteStyle
Type: string (enum)
Default: "cite"
Options: "cite", "citet", "citep", "citeauthor", "citeyear"
Description: Default citation style for insertions
{
"scimax.ref.defaultCiteStyle": "citep"
}
Export Settings
Configure LaTeX and PDF export options.
LaTeX Export Settings
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.export.latex.customHeader | string | "" | Custom LaTeX preamble |
| scimax.export.latex.documentClass | string | "article" | Default document class |
| scimax.export.latex.classOptions | string | "12pt,letterpaper" | Default class options |
| scimax.export.latex.defaultPreamble | string | (see below) | Default LaTeX packages |
scimax.export.latex.customHeader
Type: string
Default: ""
Description: Custom LaTeX header (preamble) that replaces the auto-generated one. Should include \documentclass through all \usepackage commands.
{
"scimax.export.latex.customHeader": "\\documentclass[11pt]{article}\n\\usepackage[utf8]{inputenc}\n\\usepackage{graphicx}\n\\usepackage{amsmath}\n\\usepackage[margin1in]{geometry}"
}
scimax.export.latex.documentClass
Type: string
Default: "article"
Description: Default LaTeX document class. Can be overridden by
#+LATEX_CLASS:in the document.
{
"scimax.export.latex.documentClass": "report"
}
scimax.export.latex.classOptions
Type: string
Default: "12pt,letterpaper"
Description: Default LaTeX class options. Can be overridden by
#+LATEX_CLASS_OPTIONS:in the document.
{
"scimax.export.latex.classOptions": "11pt,a4paper,twoside"
}
scimax.export.latex.defaultPreamble
Type: string
Default: Standard academic packages (inputenc, graphicx, amsmath, etc.)
Description: Default LaTeX preamble packages. Can be extended by
#+LATEX_HEADER:in the document.
{
"scimax.export.latex.defaultPreamble": "\\usepackage[utf8]{inputenc}\n\\usepackage{graphicx}\n\\usepackage{amsmath}"
}
PDF Export Settings
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.export.pdf.compiler | string | "latexmk-lualatex" | LaTeX compiler for PDF |
| scimax.export.pdf.bibtexCommand | string | "bibtex" | Bibliography processor |
| scimax.export.pdf.shellEscape | string | "restricted" | Shell escape mode |
| scimax.export.pdf.extraArgs | string | "" | Extra compiler arguments |
| scimax.export.pdf.openLogOnError | boolean | true | Open log on compilation failure |
| scimax.export.pdf.cleanAuxFiles | boolean | true | Clean auxiliary files on success |
scimax.export.pdf.compiler
Type: string (enum)
Default: "latexmk-lualatex"
Options: "latexmk-lualatex", "latexmk-pdflatex", "latexmk-xelatex", "lualatex", "pdflatex", "xelatex"
Description: LaTeX compiler to use for PDF generation
{
"scimax.export.pdf.compiler": "latexmk-xelatex"
}
scimax.export.pdf.bibtexCommand
Type: string (enum)
Default: "bibtex"
Options: "biber", "bibtex"
Description: Bibliography processor (only used when not using latexmk)
{
"scimax.export.pdf.bibtexCommand": "biber"
}
scimax.export.pdf.shellEscape
Type: string (enum)
Default: "restricted"
Options: "restricted", "full", "disabled"
Description: Shell escape mode for LaTeX compilation
{
"scimax.export.pdf.shellEscape": "full"
}
scimax.export.pdf.extraArgs
Type: string
Default: ""
Description: Extra arguments to pass to the LaTeX compiler
{
"scimax.export.pdf.extraArgs": "-synctex=1"
}
scimax.export.pdf.openLogOnError
Type: boolean
Default: true
Description: Automatically open the log file when PDF compilation fails
scimax.export.pdf.cleanAuxFiles
Type: boolean
Default: true
Description: Clean up auxiliary files (.aux, .bbl, .blg, etc.) after successful compilation
LaTeX Preview Settings
Configure inline LaTeX equation previews.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.latexPreview.enabled | boolean | true | Enable LaTeX preview on hover |
| scimax.latexPreview.cacheEnabled | boolean | true | Cache rendered equations |
| scimax.latexPreview.darkModeAware | boolean | true | Adjust rendering for dark themes |
Detailed Configuration
scimax.latexPreview.enabled
Type: boolean
Default: true
Description: Enable LaTeX equation preview on hover
{
"scimax.latexPreview.enabled": true
}
scimax.latexPreview.cacheEnabled
Type: boolean
Default: true
Description: Cache rendered equations for faster hover responses
{
"scimax.latexPreview.cacheEnabled": true
}
scimax.latexPreview.darkModeAware
Type: boolean
Default: true
Description: Automatically adjust equation rendering for dark/light themes
{
"scimax.latexPreview.darkModeAware": true
}
LaTeX Live Preview Settings
Configure automatic PDF building and live preview.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.latexLivePreview.buildOnSave | boolean | true | Auto-rebuild PDF on save |
| scimax.latexLivePreview.buildOnIdle | boolean | false | Auto-rebuild after idle period |
| scimax.latexLivePreview.idleDelay | number | 2000 | Idle delay in milliseconds |
| scimax.latexLivePreview.compiler | string | "pdflatex" | LaTeX compiler to use |
| scimax.latexLivePreview.useLatexmk | boolean | true | Use latexmk for smart builds |
Detailed Configuration
scimax.latexLivePreview.buildOnSave
Type: boolean
Default: true
Description: Automatically rebuild PDF when the org file is saved
{
"scimax.latexLivePreview.buildOnSave": true
}
scimax.latexLivePreview.buildOnIdle
Type: boolean
Default: false
Description: Automatically rebuild PDF after idle period (no typing)
{
"scimax.latexLivePreview.buildOnIdle": true,
"scimax.latexLivePreview.idleDelay": 3000
}
scimax.latexLivePreview.idleDelay
Type: number
Default: 2000
Description: Delay in milliseconds before idle build triggers
{
"scimax.latexLivePreview.buildOnIdle": true,
"scimax.latexLivePreview.idleDelay": 5000
}
scimax.latexLivePreview.compiler
Type: string (enum)
Default: "pdflatex"
Options: "pdflatex", "xelatex", "lualatex"
Description: LaTeX compiler to use
{
"scimax.latexLivePreview.compiler": "xelatex"
}
scimax.latexLivePreview.useLatexmk
Type: boolean
Default: true
Description: Use latexmk for smart incremental builds (recommended). Automatically handles multiple passes for references, bibliography, etc.
{
"scimax.latexLivePreview.useLatexmk": true
}
Notebook Settings
Configure the project-based notebook system.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.notebook.directory | string | "" | Default parent directory |
| scimax.notebook.defaultTemplate | string | "research" | Default template |
| scimax.notebook.autoDetect | boolean | true | Auto-detect projects |
Detailed Configuration
scimax.notebook.directory
Type: string
Default: ""
Description: Default parent directory for new notebooks
{
"scimax.notebook.directory": "~/projects"
}
scimax.notebook.defaultTemplate
Type: string (enum)
Default: "research"
Options: "empty", "research", "software", "notes"
Description: Default template for new notebooks
{
"scimax.notebook.defaultTemplate": "software"
}
scimax.notebook.autoDetect
Type: boolean
Default: true
Description: Automatically detect and track projects in workspace
{
"scimax.notebook.autoDetect": false
}
Speed Commands Settings
Configure org-mode style speed commands.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.speedCommands.enabled | boolean | true | Enable speed commands at heading start |
Detailed Configuration
scimax.speedCommands.enabled
Type: boolean
Default: true
Description: Enable org-mode speed commands (single-key shortcuts at beginning of headings)
When enabled, you can use single-key shortcuts (like `n', `p', `u') when the cursor is at the beginning of a heading line.
{
"scimax.speedCommands.enabled": true
}
Agenda Settings
Configure the agenda view and TODO tracking.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.agenda.includeJournal | boolean | true | Include journal in agenda |
| scimax.agenda.includeWorkspace | boolean | true | Include workspace folders |
| scimax.agenda.includeProjects | boolean | true | Include scimax projects |
| scimax.agenda.include | array | [ ] | Additional dirs/files |
| scimax.agenda.exclude | array | See below | Patterns/paths to exclude |
| scimax.agenda.defaultSpan | number | 7 | Days to show in agenda |
| scimax.agenda.showDone | boolean | false | Show completed items |
| scimax.agenda.showHabits | boolean | true | Show habit-tagged items |
| scimax.agenda.todoStates | array | ["TODO", "NEXT", "WAITING"] | Active TODO states |
| scimax.agenda.doneStates | array | ["DONE", "CANCELLED"] | Completed states |
Detailed Configuration
scimax.agenda.includeJournal
Type: boolean
Default:
trueDescription: Include the journal directory in agenda scanning
When enabled, the journal directory (from scimax.journal.directory) is automatically included in agenda scanning. Disable this if you don't want journal entries in your agenda.
scimax.agenda.includeWorkspace
Type: boolean
Default:
trueDescription: Include workspace folders in agenda scanning
scimax.agenda.includeProjects
Type: boolean
Default:
trueDescription: Include all scimax projects in agenda scanning
When enabled, all projects registered with scimax projectile are included in agenda scanning. This is useful because projects often contain TODO items and tasks.
scimax.agenda.include
Type: array of strings
Default:
[ ](empty)Description: Additional directories or files to include in the agenda (supports ~ for home directory)
{
"scimax.agenda.include": [
"~/Documents/org",
"~/work/projects"
]
}
scimax.agenda.exclude
Type: array of strings
Default:
["**/node_modules/**", "**/.git/**", "**/archive/**"]Description: Patterns or paths to exclude from agenda scanning. Supports both glob patterns (containing
*) and absolute paths.
{
"scimax.agenda.exclude": [
"**/node_modules/**",
"**/.git/**",
"**/archive/**",
"~/org/scratch.org"
]
}
scimax.agenda.defaultSpan
Type: number
Default: 7
Description: Default number of days to show in agenda view
{
"scimax.agenda.defaultSpan": 14
}
scimax.agenda.showDone
Type: boolean
Default: false
Description: Show completed (DONE) items in agenda view
{
"scimax.agenda.showDone": true
}
scimax.agenda.showHabits
Type: boolean
Default: true
Description: Show items tagged with :HABIT:
{
"scimax.agenda.showHabits": false
}
scimax.agenda.todoStates
Type: array of strings
Default: ["TODO", "NEXT", "WAITING"]
Description: Active TODO states to show in TODO list
{
"scimax.agenda.todoStates": [
"TODO",
"NEXT",
"IN-PROGRESS",
"WAITING",
"SOMEDAY"
]
}
scimax.agenda.doneStates
Type: array of strings
Default: ["DONE", "CANCELLED"]
Description: Completed TODO states
{
"scimax.agenda.doneStates": [
"DONE",
"CANCELLED",
"DEFERRED",
"ARCHIVED"
]
}
Image Overlay Settings
Configure inline image thumbnails in org-mode files.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.imageOverlays.enabled | boolean | true | Enable inline image thumbnails |
| scimax.imageOverlays.maxWidth | number | 96 | Maximum thumbnail width in pixels |
| scimax.imageOverlays.maxHeight | number | 96 | Maximum thumbnail height in pixels |
| scimax.imageOverlays.renderMode | string | "gutter" | Where to display thumbnails |
| scimax.imageOverlays.onlyWhenCursorNotInLink | boolean | true | Hide when cursor in link |
| scimax.imageOverlays.excludePatterns | array | [ ] | Regex patterns to exclude |
| scimax.imageOverlays.maxOverlaysPerDocument | number | 200 | Max overlays per document |
| scimax.imageOverlays.showDimensions | boolean | true | Show image dimensions |
| scimax.imageOverlays.cacheEnabled | boolean | true | Cache generated thumbnails |
Detailed Configuration
scimax.imageOverlays.enabled
Type: boolean
Default: true
Description: Enable inline image thumbnails in org-mode files
{
"scimax.imageOverlays.enabled": true
}
scimax.imageOverlays.maxWidth
Type: number
Default: 96
Description: Maximum width in pixels for thumbnail icons
{
"scimax.imageOverlays.maxWidth": 128
}
scimax.imageOverlays.maxHeight
Type: number
Default: 96
Description: Maximum height in pixels for thumbnail icons
{
"scimax.imageOverlays.maxHeight": 128
}
scimax.imageOverlays.renderMode
Type: string (enum)
Default: "gutter"
Options: "gutter", "after", "both"
Description: Where to display image thumbnails
{
"scimax.imageOverlays.renderMode": "both"
}
scimax.imageOverlays.onlyWhenCursorNotInLink
Type: boolean
Default: true
Description: Hide overlay when cursor is inside the image link (prevents interference with editing)
{
"scimax.imageOverlays.onlyWhenCursorNotInLink": true
}
scimax.imageOverlays.excludePatterns
Type: array of strings
Default: [ ]
Description: Regex patterns for image paths to exclude from overlays
{
"scimax.imageOverlays.excludePatterns": [
".*\\.ico$",
".*thumbnail.*"
]
}
scimax.imageOverlays.maxOverlaysPerDocument
Type: number
Default: 200
Description: Maximum number of image overlays to display per document (prevents performance issues)
{
"scimax.imageOverlays.maxOverlaysPerDocument": 500
}
scimax.imageOverlays.showDimensions
Type: boolean
Default: true
Description: Show image dimensions in the after-content decoration
{
"scimax.imageOverlays.showDimensions": false
}
scimax.imageOverlays.cacheEnabled
Type: boolean
Default: true
Description: Cache generated thumbnails for faster loading
{
"scimax.imageOverlays.cacheEnabled": true
}
Capture Settings
Configure the org-capture system for quick note-taking.
Settings Overview
| Setting | Type | Default | Description |
|---|---|---|---|
| scimax.capture.templates | array | [ ] | Capture templates |
| scimax.capture.defaultFile | string | "~/org/notes.org" | Default capture file |
| scimax.capture.datetreeFormat | string | "day" | Datetree granularity |
| scimax.capture.autoSave | boolean | true | Auto-save after capture |
Detailed Configuration
scimax.capture.templates
Type: array of objects
Default: [ ]
Description: Capture templates for quick note-taking. Each template has:
%^{prompt}: Prompt for input
%t: Current timestamp
%T: Current timestamp with time
%i: Initial content (selected text)
%a: Link to current location
%?: Cursor position after insertion
{
"scimax.capture.templates": [
{
"key": "t",
"name": "Task",
"type": "entry",
"file": "~/org/todo.org",
"headline": "Tasks",
"template": "* TODO %^{Task}\n SCHEDULED: %t\n %?"
},
{
"key": "n",
"name": "Note",
"type": "entry",
"file": "~/org/notes.org",
"datetree": true,
"template": "* %^{Title}\n %T\n\n %?"
},
{
"key": "m",
"name": "Meeting",
"type": "entry",
"file": "~/org/meetings.org",
"template": "* Meeting: %^{Topic}\n %T\n\n Attendees: %^{Attendees}\n\n Notes:\n %?"
}
]
}
scimax.capture.defaultFile
Type: string
Default: "~/org/notes.org"
Description: Default file for captures when no target file is specified in template
{
"scimax.capture.defaultFile": "~/Documents/inbox.org"
}
scimax.capture.datetreeFormat
Type: string (enum)
Default: "day"
Options: "day", "week", "month"
Description: Granularity of datetree entries
{
"scimax.capture.datetreeFormat": "week"
}
scimax.capture.autoSave
Type: boolean
Default: true
Description: Automatically save the file after capture
{
"scimax.capture.autoSave": true
}
Common Configurations
This section provides complete `settings.json' examples for different use cases.
Academic Writing Setup
Perfect for researchers, graduate students, and academic writers:
{
// Journal for daily research log
"scimax.journal.directory": "~/research/journal",
"scimax.journal.format": "org",
"scimax.journal.autoTimestamp": true,
// References and bibliography
"scimax.ref.bibliographyFiles": [
"~/research/bibliography/main.bib",
"~/research/bibliography/conferences.bib"
],
"scimax.ref.pdfDirectory": "~/research/papers",
"scimax.ref.notesDirectory": "~/research/notes",
"scimax.ref.defaultCiteStyle": "citep",
// Database and search
"scimax.db.include": [
"~/research",
"~/teaching"
],
"scimax.db.autoIndex": true,
"scimax.db.embeddingProvider": "ollama",
"scimax.db.ollamaModel": "nomic-embed-text",
// LaTeX export and preview
"scimax.latexPreview.enabled": true,
"scimax.latexPreview.darkModeAware": true,
"scimax.latexLivePreview.buildOnSave": true,
"scimax.latexLivePreview.compiler": "pdflatex",
"scimax.latexLivePreview.useLatexmk": true,
// Agenda for deadlines and tasks
"scimax.agenda.include": [
"~/research/projects",
"~/teaching"
],
"scimax.agenda.defaultSpan": 14,
"scimax.agenda.showDone": false,
"scimax.agenda.todoStates": ["TODO", "NEXT", "WAITING", "REVIEW"],
"scimax.agenda.doneStates": ["DONE", "PUBLISHED"],
// Capture templates
"scimax.capture.templates": [
{
"key": "p",
"name": "Paper Note",
"type": "entry",
"file": "~/research/notes/papers.org",
"template": "* %^{Title}\n :PROPERTIES:\n :CITE: %^{Citation key}\n :END:\n\n %?"
},
{
"key": "i",
"name": "Research Idea",
"type": "entry",
"file": "~/research/ideas.org",
"datetree": true,
"template": "* %^{Idea}\n %T\n\n %?"
}
]
}
Software Development Setup
Optimized for software developers and programmers:
{
// Journal for development log
"scimax.journal.directory": "~/devlog",
"scimax.journal.format": "markdown",
"scimax.journal.template": "daily-standup",
// Code execution
"scimax.literate.pythonPath": "~/.pyenv/shims/python",
"scimax.literate.jupyterPath": "~/.pyenv/shims/jupyter",
// Database - index project documentation
"scimax.db.include": [
"~/projects",
"~/docs"
],
"scimax.db.exclude": [
"**/node_modules/**",
"**/.git/**",
"**/dist/**",
"**/build/**",
"**/.venv/**",
"**/target/**"
],
"scimax.db.autoIndex": false,
"scimax.db.embeddingProvider": "ollama",
"scimax.db.ollamaUrl": "http://localhost:11434",
"scimax.db.ollamaModel": "nomic-embed-text",
// Notebooks for project organization
"scimax.notebook.directory": "~/projects",
"scimax.notebook.defaultTemplate": "software",
"scimax.notebook.autoDetect": true,
// Agenda for issue tracking
"scimax.agenda.include": [
"~/projects"
],
"scimax.agenda.defaultSpan": 7,
"scimax.agenda.todoStates": ["TODO", "IN-PROGRESS", "BLOCKED", "REVIEW"],
"scimax.agenda.doneStates": ["DONE", "WONTFIX", "DUPLICATE"],
// Capture for quick notes and TODOs
"scimax.capture.templates": [
{
"key": "t",
"name": "TODO",
"type": "entry",
"file": "~/projects/todo.org",
"headline": "Inbox",
"template": "* TODO %^{Task}\n SCHEDULED: %t\n %a\n %?"
},
{
"key": "b",
"name": "Bug",
"type": "entry",
"file": "~/projects/bugs.org",
"template": "* TODO [BUG] %^{Description}\n %T\n\n Steps to reproduce:\n %?\n\n Expected:\n Actual:"
}
],
// Disable image overlays for cleaner code view
"scimax.imageOverlays.enabled": false
}
Personal Notes & PKM Setup
For personal knowledge management and note-taking:
{
// Journal
"scimax.journal.directory": "~/notes/journal",
"scimax.journal.format": "org",
"scimax.journal.weekStartsOn": "monday",
"scimax.journal.autoTimestamp": true,
// Database with semantic search
"scimax.db.include": [
"~/notes",
"~/books",
"~/articles"
],
"scimax.db.exclude": [
"**/archive/**",
"**/temp/**"
],
"scimax.db.autoIndex": true,
"scimax.db.embeddingProvider": "ollama",
"scimax.db.ollamaModel": "nomic-embed-text",
// References for reading notes
"scimax.ref.bibliographyFiles": [
"~/notes/reading.bib"
],
"scimax.ref.pdfDirectory": "~/books",
"scimax.ref.notesDirectory": "~/notes/reading-notes",
// Agenda for personal tasks
"scimax.agenda.include": [
"~/notes"
],
"scimax.agenda.defaultSpan": 7,
"scimax.agenda.showDone": false,
"scimax.agenda.showHabits": true,
"scimax.agenda.todoStates": ["TODO", "NEXT", "WAITING", "SOMEDAY"],
"scimax.agenda.doneStates": ["DONE", "CANCELLED"],
// Image overlays for visual notes
"scimax.imageOverlays.enabled": true,
"scimax.imageOverlays.maxWidth": 128,
"scimax.imageOverlays.maxHeight": 128,
"scimax.imageOverlays.renderMode": "both",
// Rich capture templates
"scimax.capture.templates": [
{
"key": "n",
"name": "Note",
"type": "entry",
"file": "~/notes/inbox.org",
"template": "* %^{Title}\n %T\n\n %?"
},
{
"key": "b",
"name": "Book Note",
"type": "entry",
"file": "~/notes/books.org",
"template": "* %^{Book Title}\n :PROPERTIES:\n :AUTHOR: %^{Author}\n :GENRE: %^{Genre}\n :RATING: %^{Rating (1-5)}\n :END:\n\n %?"
},
{
"key": "j",
"name": "Journal Entry",
"type": "entry",
"file": "~/notes/journal.org",
"datetree": true,
"template": "* %^{Entry}\n %T\n\n %?"
},
{
"key": "t",
"name": "Task",
"type": "entry",
"file": "~/notes/tasks.org",
"headline": "Inbox",
"template": "* TODO %^{Task}\n SCHEDULED: %t\n %?"
}
],
"scimax.capture.datetreeFormat": "day",
"scimax.capture.autoSave": true,
// Hydra menu settings
"scimax.hydra.showKeyHints": true,
"scimax.hydra.singleKeySelection": true
}
Minimal Configuration
Bare-bones setup with just the essentials:
{
"scimax.journal.directory": "~/journal",
"scimax.db.autoIndex": false,
"scimax.agenda.include": ["~/notes"]
}
Troubleshooting
Database Performance
If database indexing is slow or uses too much memory:
{
"scimax.db.autoIndex": false,
"scimax.db.exclude": [
"**/node_modules/**",
"**/.git/**",
"**/dist/**",
"**/build/**",
"**/*.min.js",
"**/archive/**"
]
}
Then manually trigger indexing with C-S-P → "Scimax: Reindex Files"
Jupyter Kernels Not Found
Ensure Jupyter is in your PATH or specify the full path:
{
"scimax.literate.jupyterPath": "/usr/local/bin/jupyter"
}
Check available kernels with C-S-P → "Scimax: Show Available Jupyter Kernels"
LaTeX Preview Not Working
Ensure you have a LaTeX distribution installed (TeX Live, MiKTeX, etc.), then:
{
"scimax.latexPreview.enabled": true,
"scimax.latexPreview.cacheEnabled": false
}
Semantic Search Not Working
Ensure the Ollama server is running and the embedding model is pulled:
curl http://localhost:11434/api/version