/vscode-leetcode

Solve LeetCode problems in VS Code

Primary LanguageTypeScriptMIT LicenseMIT

LeetCode

Solve LeetCode problems in VS Code

Sponsor

coding

Requirements

  • VS Code 1.30.1+
  • Node.js 8+

    NOTE: Please make sure that Node is in your PATH environment variable. You can also use the setting leetcode.nodePath to specify the location of your Node.js executable.

Quick Start

demo

Features

Sign In/Out

Sign in

  • Simply click Sign in to LeetCode in the LeetCode Explorer will let you sign in with your LeetCode account.

  • You can also use the following command to sign in/out:

    • LeetCode: Sign in
    • LeetCode: Sign out

Switch Endpoint

Switch Endpoint

  • By clicking the button btn_endpoint at the explorer's navigation bar, you can switch between different endpoints.

  • The supported endpoints are:

    • leetcode.com
    • leetcode-cn.com

    Note: The accounts of different endpoints are not shared. Please make sure you are using the right endpoint. The extension will use leetcode.com by default.


Pick a Problem

Pick a Problem

  • Directly click on the problem or right click the problem in the LeetCode Explorer and select Preview Problem to see the problem description.

  • Select Show Problem to directly open the file with the problem description.

    Note: If no folder is opened in VS Code, the extension will save the problem files in $HOME/.leetcode/.

    You can specify whether including the problem description in comments or not by updating the setting leetcode.showCommentDescription.

    You can switch the default language by triggering the command: LeetCode: Switch Default Language.


Show Top Voted Solution

Show Top Voted Solution

  • Select Show Top Voted Solution will display the top voted solution for you.

Submit the Answer

Submit the Answer

  • You can submit the answer by clicking Submit at the bottom of the file. Or you can right click in the editor and select Submit to LeetCode.

If you want to hide the shortcuts showing in the editor, just simply set the setting leetcode.enableShortcuts to false.


Test the Answer

Test the Answer

  • You can test the answer by clicking Test at the bottom of the file. Or you can right click in the editor and select Test in LeetCode.

  • There are 3 ways to test the answer:

    • Test with the default cases
    • Write test cases in input box
    • Test with the written cases in file

Search problems by Keywords

Search problems by Keywords

  • By clicking the button btn_search at the explorer's navigation bar, you can search the problems by keywords.

Manage Session

Manage Session

  • To manage your LeetCode sessions, just clicking the LeetCode: *** at the bottom of the status bar. You can switch between sessions or create a new session.

Settings

Setting Name Description Default Value
leetcode.hideSolved Specify to hide the solved problems or not false
leetcode.showLocked Specify to show the locked problems or not. Only Premium users could open the locked problems false
leetcode.defaultLanguage Specify the default language used to solve the problem. Supported languages are: bash, c, cpp, csharp, golang, java, javascript, kotlin, mysql, php, python,python3,ruby,rust, scala,swift N/A
leetcode.useWsl Specify whether to use WSL or not false
leetcode.endpoint Specify the active endpoint. Supported endpoints are: leetcode, leetcode-cn leetcode
leetcode.outputFolder Specify the relative path to save the problem files. Besides using customized path, there are also several reserved words which can be used here:
  • ${tag}: Categorize the problem according to their tags.
  • ${language}: Categorize the problem according to their language.
  • ${difficulty}: Categorize the problem according to their difficulty.
N/A
leetcode.enableStatusBar Specify whether the LeetCode status bar will be shown or not. true
leetcode.enableShortcuts Specify whether the submit and test shortcuts in editor or not. true
leetcode.enableSideMode Specify whether preview, solution and submission tab should be grouped into the second editor column when solving a problem. true
leetcode.nodePath Specify the Node.js executable path. node

Want Help?

When you meet any problem, you can check out the Troubleshooting and FAQ first.

If your problem still cannot be addressed, feel free to reach us in the Gitter Channel or file an issue.

Release Notes

Refer to CHANGELOG

Acknowledgement