VS Code
Visual Studio Code (VS Code) is a popular integrated development environment. It’s a powerful code editor, offering a range of features to help streamline the development process, from syntax highlighting to debugging. This blog post will explore some amazing VS Code extensions that can help boost productivity, improve code, and make work easier.
Disclaimer: This list contains only my opinions, and has no formal ranking system.
1. Live Share
TLDR: The functionality is similar to Google Docs but with code.
Live Share allows you to collaborate with others in real time. Whether you are working on a project with a remote team member or providing guidance to a colleague, Live Share makes it easy to share your coding environment and work together seamlessly.
With Live Share, you can invite collaborators to your coding session and provide them with access to your editor, terminal, and debugging tools. This means you can code, test, and debug together without leaving your own environment. You can also share your local server, allowing your collaborators to access your application directly from their browsers.
The extension includes various features to ensure seamless collaboration, such as easily switching between hosts and guests and a chat system that allows you to communicate with your collaborators in real time. Additionally, all collaboration sessions are secure and private, so you can ensure your code is safe.
Live Share is a must-have extension for anyone working on a team or collaborating with others. Its real-time collaboration capabilities allow you to work more efficiently and effectively, while its ease of use ensures you can focus on what matters – writing great code.
2. Remote Explorer
The Remote Explorer extension allows you to manage remote development environments from your local machine. With this extension, you can connect to remote servers, browse and edit files, and even run commands as if you were working directly on the remote machine.
The extension supports a variety of remote development scenarios, including SSH, Docker, and Windows’ Subsystem for Linux (WSL). You can connect to remote environments, edit files using VS Code’s editing features via Tunnels, and save changes seamlessly. Remote Explorer also allows you to manage SSH configurations and keys!
Feature summary:
- Connect to one or more remote environments simultaneously via SSH
- Editing remove files, including remote configuration files, inside your local VS Code environment
- Automatic (optional) synchronization of changes between local and remote files
- Support for a variety of file types and syntax highlighting
RIT’s courses
If you are enrolled at the Rochester Institute of Technology, “Remote Explorer” may be particularly useful. Courses that require SSHing into a machine like CSCI-243, CSCI-250, and CSCI-344, are often difficult to debug and read code on because most terminals lack debugging and syntax highlighting. When you use “Remote Explorer” to SSH into the machine, you can utilize your native syntax highlighting and debugging extensions.
# How to SSH
ssh -Y rit_username@machine_name.cs.rit.edu
CSCI 344
Some helpful ones for CSCI-344 include:
- Impcore: vscode-imp
- Scheme: vscode-scheme
Cheating
Ensure you check with your instructor first because some of them consider utilizing the help of VS Code extensions cheating.
3. GitHub Pull Requests and Issues
The GitHub Pull Requests and Issues extension is a tool for managing your GitHub workflow without leaving your editor. The extension features include:
- View and manage pull requests and issues directly from your VS Code workspace
- Real-time notifications for new comments and updates
- Search and filter pull requests and issues
- Create, edit, and delete pull requests and issues
- Review and merge pull requests
- Assign issues to team members and track progress with labels and milestones
- View detailed information, including file changes and commit history, for each pull request and issue
Co-author pull requests
One of its best features is the ability to easily co-author and submit pull requests. This feature allows multiple contributors to collaborate on a single pull request and get credit for their contributions.
To co-author a pull request using the extension, you can follow these steps:
- Open the pull request in your VS Code workspace.
- Click on the “Add co-author” button in the “Reviewers” section.
- Type the name or username of the person you want to co-author with and select their GitHub profile from the drop-down list.
- Repeat the process to add additional co-authors if needed.
- Write your review comments, make changes to the code, and submit the pull request.
- Once the pull request is merged, all co-authors will be credited for their contributions in the pull request’s commit history.
4. C/C++ Extension Pack
The C/C++ Extension Pack is a toolkit for C and C++ development. It provides features to help you write, debug, and test C and C++ code in your VS Code workspace. Its contents include:
- C/C++ and C/C++ Themes: Provides code completion, syntax highlighting, and error detection for C and C++ code.
- CMake + CMake Tools: Simplify your CMake workflow with automatic configuration, build, and debugging support.
5. Code Spell Checker
Code Spell Checker catches spelling mistakes in your code, so you can see errors before they cause problems. The extension uses an algorithm to scan code for spelling mistakes, and it supports a range of programming and markup languages, including HTML, CSS, JavaScript, Python, and more. It also includes a customizable dictionary to add words or technical terms specific to your project.
Here are some key features of the extension:
- Fast and accurate spell-checking for your code
- Customizable dictionary for adding words and technical terms
- Support a variety of programming languages
- Ignore specific words or files using custom settings
- User interface with clear highlighting of spelling errors
- Quick-fix suggestions for correcting spelling mistakes
This extension is a must-have tool for anyone who writes code. It will help you catch spelling mistakes and improve the quality of your code.
6. Diff by Fabio Spampinato
The Diff extension compares files and code changes. Developers can easily compare files or multiple versions of the same file and see the differences side-by-side. Here are the key features of the Diff extension:
- Side-by-side comparison of two files or two versions of the same file
- Color-coded highlighting of added, deleted, and modified lines
- Line-by-line navigation of code changes
- In-line editing of code changes
- Integration with Git, allowing you to compare changes in your Git repository
- Customizable settings for configuring the appearance and behavior of the Diff view
The Diff extension is a great tool for anyone who needs to compare files quickly. It makes it easy to see what has changed in a file and navigate to specific lines of code.
7. Doxygen Documentation Generator
The Doxygen Documentation Generator extension enhances the documentation generation process in source code. It helps you generate comprehensive and standardized documentation for your codebases.
It provides commands, customizable templates, and configuration options, enabling you to tailor the documentation generation process to suit specific needs. The extension automates repetitive tasks and reduces the manual effort required to maintain up-to-date and consistent documentation. Additionally, Doxygen extracts relevant information from the source code, such as function signatures, class definitions, and variable declarations, and generates clear and concise documentation in various formats, including HTML, PDF, and LaTeX.
The extension is known for saving developers time and effort by automating the documentation generation process, freeing them to focus on coding and reducing the likelihood of documentation inconsistencies.
8. CodeLLDB
The CodeLLDB extension integrates with the popular LLVM-based debugger, LLDB, providing its features and functionalities within the VS Code IDE.
With CodeLLDB, you can debug C, C++, and Objective-C codebases. The extension offers an intuitive user interface for navigating code, setting breakpoints, and stepping through program execution.
Key Features:
- Breakpoint Management: Set breakpoints within codebases, so you can halt program execution at specific locations. You can also set conditional breakpoints, hit count breakpoints, and manage breakpoints effortlessly through the VS Code interface.
- Variable Inspection: Monitor the values of variables and data structures at runtime through CodeLLDB’s interactive variable explorer. This feature is great for exploring and analyzing complex data structures, arrays, and pointers.
- Call Stack Navigation: CodeLLDB provides a clear view of the program’s execution flow, so you can navigate the call stack. You can search through stack frames, inspect local variables, and understand the code context.
- Expressive Expressions: Evaluate complex expressions, modify variables, and test hypotheses to better understand code behavior.
- Multi-threaded Debugging: The extension supports debugging multi-threaded applications, providing a comprehensive view of thread states and synchronized execution. You can effortlessly switch between threads, set thread-specific breakpoints, and analyze interactions between concurrent code paths.
- Customizable Configuration: You can configure debugging launch configurations, define custom watchlists, and fine-tune various aspects of the debugger to suit your workflow.
VS Code Extensions
VS Code extensions are an essential aspect of maximizing productivity and customizing the coding experience. Whether you are a beginner or an experienced developer, these extensions provide functionalities and tools that enhance your workflow.
I hope you enjoyed this post on my top VS Code extensions. If you would like to peruse more of my technology posts, consider reading Corporate Participation in Open Source.