https://github.com/surajmaurya14/vscode-config
This contains my Coding Template
https://github.com/surajmaurya14/vscode-config
cpp keybindings settings snippets template
Last synced: 1 day ago
JSON representation
This contains my Coding Template
- Host: GitHub
- URL: https://github.com/surajmaurya14/vscode-config
- Owner: surajmaurya14
- Created: 2021-03-26T21:41:17.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2026-05-31T13:20:18.000Z (about 1 month ago)
- Last Synced: 2026-05-31T15:12:38.779Z (about 1 month ago)
- Topics: cpp, keybindings, settings, snippets, template
- Language: Shell
- Homepage:
- Size: 17.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# vscode-config
Personal Visual Studio Code configuration — settings, keybindings, snippets, and extension list, with scripts to apply it on a fresh machine and snapshot the current state back into the repo.
Snapshot: VS Code `1.122.1` on macOS (arm64), May 2026.
## Layout
```
.
├── User/ # mirrors VS Code's User directory
│ ├── settings.json
│ ├── keybindings.json
│ └── snippets/
│ └── sumconsole.code-snippets
├── extensions.txt # one extension ID per line
├── templates/
│ └── temp.cpp # competitive-programming starter
└── scripts/
├── install.sh # apply this config to the current machine
└── backup.sh # snapshot the current machine into this repo
```
The `User/` tree mirrors VS Code's user directory, so installation is a straight copy:
| OS | VS Code user directory |
| ------- | ----------------------------------------------- |
| macOS | `~/Library/Application Support/Code/User/` |
| Linux | `~/.config/Code/User/` |
| Windows | `%APPDATA%\Code\User\` |
## Usage
### First-time install on a new machine
Requires the `code` CLI on `PATH`. If it's missing, open VS Code → ⌘⇧P → **Shell Command: Install 'code' command in PATH**.
```bash
git clone git@github.com:surajmaurya14/vscode-config.git
cd vscode-config
./scripts/install.sh
```
`install.sh` copies `User/*` into VS Code's user directory (after backing up any existing files to `.backup-/` next to them) and then installs every extension from `extensions.txt`.
### Snapshot the current machine back into this repo
```bash
./scripts/backup.sh
git diff
git commit -am "Update VS Code config snapshot"
git push
```
`backup.sh` overwrites `User/*` and `extensions.txt` with whatever's currently live, sorted. Always review with `git diff` before committing — your last edits in VS Code (and any auto-generated cruft like ephemeral file paths) will be in there.
## Highlights
- Theme: built-in **Light+** with **Material Icon Theme** (`pkief.material-icon-theme`).
- Font: **JetBrains Mono** in the editor, **JetBrainsMono Nerd Font** in the terminal (`brew install --cask font-jetbrains-mono font-jetbrains-mono-nerd-font`); ligatures off by default — flip `editor.fontLigatures` to `true` to enable.
- AI: **Codeium** (now the *Windsurf Plugin*) for inline completion, **Claude Code** (`anthropic.claude-code`) as the in-editor agent.
- Sidebar on the right, minimap off, format-on-save on (off for Python — Ruff handles it).
- Document formatter rebound from `shift+alt+f` → `shift+cmd+/`.
- C/C++ uses Homebrew `gcc-15` on Apple Silicon (`/opt/homebrew/bin/gcc-15`); change `C_Cpp.default.compilerPath` and the `cph.language.*.Command` values to match your installed compiler (Intel Macs, Linux, or a different GCC version).
- Python: [Ruff](https://marketplace.visualstudio.com/items?itemName=charliermarsh.ruff) for format/lint.
- JS / TS / JSON / HTML / CSS / Markdown / YAML formatted by Prettier (or `redhat.vscode-yaml` for YAML).
- The `cph.*` settings and the `ctrl+shift+\`` / `ctrl+\`` bindings target [Competitive Programming Helper](https://marketplace.visualstudio.com/items?itemName=DivyanshuAgrawal.competitive-programming-helper).
- The `sumconsole` snippet expands into one of three scaffolds — competitive C++, basic C++, or JavaScript stdin — pick from the dropdown when the prefix triggers. `templates/temp.cpp` matches the competitive C++ flavor for quick scratch use.