Skip to content

tjx666/reload-can-solve-any-problems

Repository files navigation

Reload Can Solve Any Problems

Version Installs Downloads Rating Star Last Updated

test PRs Welcome Github Open Issues LICENSE

Features

  • highly customizable status bar to reload vscode and extensions
  • add reload window shortcut +R
  • provide a command Reload Servers to reload all extensions servers, you can configure the servers by setting reload-can-solve-any-problems.reloadServers.

usage

Configure

You can totally control how the status bar and it's tooltip display.

Following is the default settings:

{
  "reload-can-solve-any-problems.statusBar": {
    "text": "$(debug-restart)",
    "commandId": "reload-can-solve-any-problems.reloadServers",
    "alignment": "left",
    "priority": 100
  },
  "reload-can-solve-any-problems.reloadItems": [
    {
      "name": "ESLint",
      "extensionId": "dbaeumer.vscode-eslint",
      "operations": [
        {
          "text": "$(debug-restart)",
          "title": "Reload ESLint",
          "commandId": "eslint.restart",
          "statusBarProgressMessage": "Reload ESlint"
        }
      ]
    },
    {
      "name": "TypeScript",
      "extensionId": "vscode.typescript-language-features",
      "operations": [
        {
          "text": "$(project)",
          "title": "Reload TypeScript Projects",
          "commandId": "typescript.reloadProjects",
          "statusBarProgressMessage": "Reload TypeScript Projects"
        },
        {
          "text": "$(server-process)",
          "title": "Restart TypeScript Server",
          "commandId": "typescript.restartTsServer"
        }
      ]
    },
    {
      "name": "Volar",
      "extensionId": "Vue.volar",
      "operations": [
        {
          "text": "$(project)",
          "title": "Volar Reload Projects",
          "commandId": "volar.action.reloadProject",
          "statusBarProgressMessage": "Volar Reload Projects"
        },
        {
          "text": "$(server-process)",
          "title": "Restart Vue Server",
          "commandId": "volar.action.restartServer",
          "statusBarProgressMessage": "Restart Vue Server"
        }
      ]
    }
  ],
  // will reload the server in parallel
  "reload-can-solve-any-problems.reloadServers": [
    {
      "extensionId": "dbaeumer.vscode-eslint",
      "commandId": "eslint.restart"
    },
    {
      "extensionId": "vscode.typescript-language-features",
      "commandId": "typescript.reloadProjects"
    },
    {
      "extensionId": "Vue.volar",
      "commandId": "volar.action.reloadProject"
    }
  ]
}

Inspiration

About the extension name

I mainly help my team to maintain the front-end build system this year. They often ask me about the vscode intelisence problem such as Why my eslint errors disappear? Most of their problems can be solved by reloading extension or reloading vscode. So, this is why I named the extension: Reload Can Solve Any Problems.

Why add reload window shortcut?

VSCode had a builtin command workbench.action.reloadWindow to reload window, but it's builtin shortcut can only be used under extension development host, which means you need to call it by command plate most of time.

But in fact, the reload command is almost daily used, and many users are not familiar with vscode settings. So, it would be convenient to provide it for new users.

Why add status bar?

I will throw a screenshot which means to reload the vscode first when my colleagues ask me about vscode issue. Click a button would be easier to understand than open command plate and run command.

This extension also help you to organize the common reload commands of extensions by status bar tooltip.

My extensions

Check all here: publishers/YuTengjing