.. _vsc_extensions: VSCode Extensions ================= All extension can either be installed from the `marketplace `_ or by clicking the `Extension Marketplace icon `_ on the left sidebar of VSCode. Required Extensions ------------------- Python ~~~~~~ .. list-table:: :widths: 25 75 :header-rows: 1 * - Extension - Purpose * - `Python `_ - The main extension for Python development in VSCode, providing features such as IntelliSense, linting, debugging, and code navigation. * - `Python Debugger `_ - Provides integration with the debugpy library, allowing developers to debug Python code directly from VSCode. * - `Pylance `_ - A language server for Python, providing enhanced IntelliSense, type checking, and code analysis capabilities. * - `Mypy Type Checker `_ - An extension that integrates the Mypy static type checker into VSCode, allowing developers to identify type-related issues in their Python code. * - `Ruff `_ - A Python linter and formatter that helps maintain code quality and consistency. * - `Pixi Code `_ - An extension that integrates Pixi environments with the `Python Environments extension `_. Recommended Extensions ---------------------- Code Reviews ~~~~~~~~~~~~ .. list-table:: :widths: 25 75 :header-rows: 1 * - Extension - Purpose * - `GitHub Pull Requests `_ - Allows developers to review and manage GitHub pull requests and issues directly from VSCode. * - `GitHub Repositories `_ - Provides seamless integration with GitHub repositories, enabling developers to clone, manage, and interact with their GitHub projects from VSCode. Markdown and Documentation ~~~~~~~~~~~~~~~~~~~~~~~~~~ .. list-table:: :widths: 25 75 :header-rows: 1 * - Extension - Purpose * - `Markdown Checkboxes `_ - An extension that adds support for checkboxes in Markdown files, allowing developers to create interactive checklists within their documentation. * - `Dark Github Markdown Preview `_ - Provides a dark theme for Markdown preview in VSCode to match Github's dark theme styling. Navigation and Editing ~~~~~~~~~~~~~~~~~~~~~~ .. list-table:: :widths: 25 75 :header-rows: 1 * - Extension - Purpose * - `Sort Lines `_ - An extension that allows developers to sort lines of code or text in ascending or descending order, helping with code organization and readability. * - `Bookmarks `_ - Provides a bookmarking system for code navigation, allowing developers to mark and quickly navigate to important lines of code. Remote Development ~~~~~~~~~~~~~~~~~~ .. list-table:: :widths: 25 75 :header-rows: 1 * - Extension - Purpose * - `Remote - SSH `_ - Allows developers to connect to remote machines and develop code as if they were working locally. * - `Remote - SSH: Editing Configuration Files `_ - Provides an easy way to edit SSH configuration files directly from VSCode, simplifying the process of managing remote connections. .. _vsc-keyboard-shortcuts: Keybindings ~~~~~~~~~~~ VSCode provides a wide range of keyboard shortcuts for various actions which can be accessed through the command line (Ctrl+Shift+P) and searching for "Keyboard Shortcuts". Commonly used keybindings ------------------------- .. list-table:: :widths: 25 25 25 25 :header-rows: 1 * - Function - Linux - MacOS - Windows * - Search in Files - Ctrl+F - ⌘+F - Ctrl+F * - Command Line - Ctrl+Shift+P - ⌘+Shift+P - Ctrl+Shift+P * - Fuzzy File Search - Ctrl+P - ⌘+P - Ctrl+P * - Launch - F5 - F5 - F5