All Projects → usernamehw → vscode-commands

usernamehw / vscode-commands

Licence: MIT license
Run commands from Tree View / Status Bar / Quick Pick.

Programming Languages

typescript
32286 projects
javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to vscode-commands

droxy
Create commands on your machine that proxy docker run / exec calls
Stars: ✭ 12 (-73.33%)
Mutual labels:  command, run
genome updater
Bash script to download/update snapshots of files from NCBI genomes repository (refseq/genbank) with track of changes and without redundancy
Stars: ✭ 93 (+106.67%)
Mutual labels:  sequence
Pydesignpattern
Design Pattern that described by Python, This is the source code for the book of Everybody Know Design Patterns.
Stars: ✭ 174 (+286.67%)
Mutual labels:  command
Commando
🐳 Container registry which provides you all the commands you need in a lightweight Alpine image. DevOps and SysOps best friend. https://command-not-found.com
Stars: ✭ 243 (+440%)
Mutual labels:  command
Discord.ts
🤖 Create your discord bot by using TypeScript and decorators!
Stars: ✭ 172 (+282.22%)
Mutual labels:  command
Linux
🐧 以“标签”形式对Linux的命令进行的梳理
Stars: ✭ 15 (-66.67%)
Mutual labels:  command
Cbox
convert any python function to unix-style command
Stars: ✭ 154 (+242.22%)
Mutual labels:  command
say-it
TTS in command line -- Pronounce the Chinese and English words you typed in.
Stars: ✭ 19 (-57.78%)
Mutual labels:  command
QshOni
The QShell on IBM i library contains useful CL wrapper commands to allow QShell and PASE apps to be called and consumed from regular IBM i jobs via CL, RPG or COBOL programs.
Stars: ✭ 34 (-24.44%)
Mutual labels:  command
Xxexploiter
Tool to help exploit XXE vulnerabilities
Stars: ✭ 243 (+440%)
Mutual labels:  command
Serve
a static http server anywhere you need one.
Stars: ✭ 233 (+417.78%)
Mutual labels:  command
Alder
A minimal implementation of the UNIX tree command with colors!
Stars: ✭ 183 (+306.67%)
Mutual labels:  command
react-sequence-animator
A React library for sequence animations
Stars: ✭ 23 (-48.89%)
Mutual labels:  sequence
You Dont Need Gui
Stop relying on GUI; CLI **ROCKS**
Stars: ✭ 4,766 (+10491.11%)
Mutual labels:  command
laravel-admin
LaravelAdmin是基于PHP开发的基础管理后台系统,做到开箱即用,为新项目开发省去了基础功能开发的步骤;此系统采用前后端分离模式,后端使用Laravel,前端使用vue;主要包含:登录、注销、可视化数据大屏、管理员、角色管理、菜单管理、权限管理、错误日志、登录日志、访问日志、获取服务器CPU使用率、内存使用率等功能。后端主要使用Artisan命令行、Jobs消息队列、 Rules验证规则、Restful API、Composer扩展包、Redis秒杀、Extend自定义扩展类:微信授权、钉钉告警推送、MongoDB、阿里云OSS、七牛云存储、七牛云直播、php-jwt TOKEN、Phpoffice、MySql数据库字典、Elasticsearch等技术。
Stars: ✭ 45 (+0%)
Mutual labels:  command
Kommander Ios
A lightweight, pure-Swift library for manage the task execution in different threads. Through the definition a simple but powerful concept, Kommand.
Stars: ✭ 167 (+271.11%)
Mutual labels:  command
Neodoc
Beautiful, hand-crafted commandline interfaces for node.js
Stars: ✭ 221 (+391.11%)
Mutual labels:  command
Aiforms.effects
AiForms.Effects for Xamarin.Forms
Stars: ✭ 245 (+444.44%)
Mutual labels:  command
golden
a benchmark for compile-time and/or runtime Nim 🏆
Stars: ✭ 28 (-37.78%)
Mutual labels:  run
z-pot
project overview tool, used to analyze the amount of code, the number of files, code statistics and so on.
Stars: ✭ 18 (-60%)
Mutual labels:  command

Version Installs Rating OpenVSX Downloads

Features

  • Run commands with arguments ("args")
  • Run multiple commands (in sequence)
  • Use Tree View / Quick Pick / Status Bar / Document link to run commands
  • Assign keyboard shortcut to specified commands
  • Create alias for existing commands

Simple command

"Toggle activity": "workbench.action.toggleActivityBarVisibility",

simple

Command with arguments

"Typing": {
    "command": "editor.action.insertSnippet",
    "args": {
        "snippet": "Typing... ",
    },
},

arguments

Multiple commands (sequence)

"Toggle multiple settings": {
    "sequence": [
        "editor.action.toggleMinimap",
        "workbench.action.toggleStatusbarVisibility",
    ],
},

sequence

Tree View icons list | colors

"GitHub": {
    "icon": "github",
},
"Flame": {
    "icon": "flame",
    "iconColor": "errorForeground",
},

icons

Folders (nested items)

"folder": {
    "nestedItems": {
        "Flame": {
            "icon": "flame",
            "iconColor": "errorForeground",
        },
        "Trusted": {
            "icon": "workspace-trusted",
            "iconColor": "terminal.ansiGreen",
        },
    },
},

folder

Quick Pick commands.openAsQuickPick

quick_pick

Status Bar

"Toggle line numbers": {
    "command": "commands.toggleSetting",
    "args": {
        "setting": "editor.lineNumbers",
        "value": [
            "on",
            "off",
        ],
    },
    "statusBar": {
        "alignment": "left",
        "text": "🔢",
        "priority": -9999,
    },
},

status_bar

Commands (7)

Command Description
commands.openAsQuickPick Commands: Open as Quick Pick
commands.selectAndRun Commands: Select and run command
commands.rerun Commands: Rerun last command
commands.suggestCommands Commands: Suggest (autocomplete) commands
commands.suggestVariables Commands: Suggest variables that are supported by this extension's variable substitutions, e.g: ${workspaceFolderBasename}.
commands.newCommand Commands: Add new command to the list
commands.escapeCommandUriArgument Commands: Escape command uri argument

Settings (15)

Setting Default Description
commands.commands {} Main extension property. Commands that will be rendered in the View.
commands.workspaceCommands {} Commands that will be rendered in the View, specific to the workspace.
commands.alias {} Use shorter command ids. Extension registers aliased commands so that they can be also used in keybindings.
commands.showKeybindings false Whether or not to show keyboard shortcuts assigned to command contributed by user. (Currently only displayed in Tree View).
commands.treeViewCollapseFolders false Collapse folders by default. Requires reload before being applied.
commands.treeViewStatusBarVisibleSymbol "💠" Symbol used in the tree view to indicate that command is also visible in the status bar.
commands.treeViewWorkspaceCommandSymbol "🎯" Symbol used in the tree view to indicate workspace command (from #commands.workspaceCommands#) setting.
commands.statusBarDefaultText "same" Controls the text of Status Bar item when adding from Tree View context menu.
commands.statusBarDefaultPosition "left" Where to put command on Status Bar (left or right).
commands.quickPickIncludeAllCommands false EXPERIMENTAL: When checked - include all commands from Command Palette to the Quick Pick.
commands.populateCommandPalette false Adds all items to Command Palette (Requires editor reload after every change of main config #commands.commands#).
commands.documentLinksEnabled false Run commands as links in documents. Links have format @command?args@.
issues/2
commands.documentLinksPattern "" Glob for #commands.documentLinksEnabled#. Example: **/*.{ts,js} - only enable in TypeScript & JavaScript files.
commands.variableSubstitutionEnabled false Allow "args" (of type string) to contain some of the variables from variables-reference. Supported:
- ${file} - the current opened file absolute path
- ${fileBasename} - the current opened file's basename
- ${fileBasenameNoExtension} - the current opened file's basename with no file extension
- ${fileExtname} - the current opened file's extension
- ${fileDirname} - the current opened file's dirname
- ${fileWorkspaceFolder} - the path of the folder opened in VS Code
- ${workspaceFolderBasename} - the name of the folder opened in VS Code without any slashes (/)
- ${execPath} - location of Code.exe
- ${pathSeparator} - / on macOS or linux, \ on Windows
- ${lineNumber} - the current selected line number in the active file
- ${selectedText} - the current selected text in the active file
- ${clipboard} - current clipboard value
- ${random} - 6 random Base-10 digits
commands.toggleSettings.showNotification false When enabled - show notification after using commands.toggleSetting or commands.incrementSetting.
// Command object structure
interface CommandObject {
    command: string;// command id to execute
    args?: unknown;// command arguments to execute
    delay?: number;// delay (ms) BEFORE execution
    repeat?: number;// run this command or sequence this number of times
    icon?: string;// icon id https://code.visualstudio.com/api/references/icons-in-labels#icon-listing
    iconColor?: string;// color id https://code.visualstudio.com/api/references/theme-color
    markdownTooltip?: string;// add custom markdown text to hover tooltip
    disableTooltip?: boolean;// do not show the hover tooltip for this Tree View Item
    hidden?: boolean;// Do not show this in Tree View

    sequence?: (CommandObject | string)[];// execute multipe commands

    nestedItems: {// Make into folder: Group items (1 lvl nesting max)
        [key: string]: CommandObject
    }

    // add command or folder to status bar
    statusBar?: {
        alignment: 'left' | 'right';// status bar alignment
        text: string;// status bar item text
        name?: string;// name of the item in status bar context menu
        priority?: number;// item position (can also be a negative number)
        tooltip?: string;// hover text
        markdownTooltip?: string;// hover text (in markdown)
        hidden?: boolean;// do not show this status bar item
        color?: string;// color of status bar item text
        backgroundColor?: 'error' | 'warning';// status bar item background color
        activeEditorGlob?: string// only show status bar item when active editor matches glob pattern
        activeEditorLanguage?: string;// only show status bar item when active editor language id matches
    };
}

Built-in commands (with args)

type Type text into active editor

"Typing": {
    "command": "type",
    "args": {
        "text": "---",
    },
},

workbench.action.tasks.runTask Run task by its label

// tasks.json
{
    "label": "hello",
    "type": "shell",
    "command": "echo Hello",
},
// commands
"Run task": {
    "command": "workbench.action.tasks.runTask",
    "args": "hello",
},

editor.action.insertSnippet Insert Snippet

"Insert snippet": {
    "command": "editor.action.insertSnippet",
    "args": {
        "snippet": "$BLOCK_COMMENT_START ${0:?} $BLOCK_COMMENT_END",
    },
},

workbench.action.terminal.sendSequence Send text to active terminal

"Terminal: Run Watch": {
    "command": "workbench.action.terminal.sendSequence",
    "args": {
        "text": "npm run watch\r",
    },
},

workbench.action.quickOpen Quick access

Can open Quick Pick with prefilled prefix (@... - symbol, view ... - open view, ...)

"Quick open (symbol)": {
    "command": "workbench.action.quickOpen",
    "args": "?",
},

workbench.action.openSettings Open settings with prefilled input value

"Open Settings": {
    "command": "workbench.action.openSettings",
    "args": "commands",
},

workbench.action.openGlobalKeybindings Open keybindings with prefilled value

"Quick Keybindings Editor": {
    "command": "workbench.action.openGlobalKeybindings",
    "args": "commands.",
},

workbench.extensions.search Open Extensions View with prefilled value

"Quick Extensions View": {
    "command": "workbench.extensions.search",
    "args": "@builtin",
},

editor.action.codeAction Execute code action

"Organize imports": {
    "command": "editor.action.codeAction",
    "args": {
        "kind": "source.organizeImports",
    },
},

workbench.action.findInFiles Open search with specified args

"Search with args": {
    "command": "workbench.action.findInFiles",
    "args": {
        "query": "TODO",
        "isRegex": false,
        "isCaseSensitive": false,
        "matchWholeWord": false,
        "preserveCase": false,
        "excludeSettingAndIgnoreFiles": true,
        "triggerSearch": true,
        "onlyOpenEditors": false,
        // "replace": "",
        // "filesToInclude": "",
        // "filesToExclude": "",
    },
},

editor.actions.findWithArgs Open Editor Find Widget

"Find Widget with args": {
    "command": "editor.actions.findWithArgs",
    "args": {
        "searchString": "TODO",
        "replaceString": "",
        "isRegex": false,
        "isCaseSensitive": false,
        "matchWholeWord": false,
        "preserveCase": false,
        "findInSelection": false,
    },
},

search.action.openNewEditor Open Search Editor with specified args

"Open search editor with args": {
    "command": "search.action.openNewEditor",
    "args": {
        "query": "TODO",
        "isRegexp": false,
        "isCaseSensitive": false,
        "matchWholeWord": false,
        "preserveCase": false,
        "excludeSettingAndIgnoreFiles": true,
        "triggerSearch": true,
        "contextLines": 2,
        "showIncludesExcludes": true,
        // "filesToInclude": "",
        // "filesToExclude": "",
    },
},

cursorMove Move cursor to a logical position in the view

Arguments object:

  • to A mandatory logical position value providing where to move the cursor.

'left', 'right', 'up', 'down', 'prevBlankLine', 'nextBlankLine', 'wrappedLineStart', 'wrappedLineEnd', 'wrappedLineColumnCenter' 'wrappedLineFirstNonWhitespaceCharacter', 'wrappedLineLastNonWhitespaceCharacter' 'viewPortTop', 'viewPortCenter', 'viewPortBottom', 'viewPortIfOutside'

  • by Unit to move. Default is computed based on 'to' value.

'line', 'wrappedLine', 'character', 'halfLine'

  • value Number of units to move. Default is '1'.
  • select If 'true' makes the selection. Default is 'false'.
"Cursor move 10 down": {
    "command": "cursorMove",
    "args": {
        "to": "down",
        "by": "line",
        "value": 10,
    },
},

editorScroll Scroll editor in the given direction

Arguments object:

  • to A mandatory direction value (up or down).
  • by Unit to move. Default is computed based on 'to' value. (line, wrappedLine, page, halfPage).
  • value: Number of units to move. Default is 1.
  • revealCursor: If 'true' reveals the cursor when it is outside view port.
"Scroll 10 lines down": {
    "command": "editorScroll",
    "args": {
        "to": "down",
        "by": "line",
        "value": 10,
        "revealCursor": true,
    },
},

moveActiveEditor Move the active editor by tabs or groups

  • to String value providing where to move (left or right).
  • by String value providing the unit for move (by tab or by group).
  • value Number value providing how many positions or an absolute position to move.
"Move editor to the left": {
    "command": "moveActiveEditor",
    "args": {
        "to": "left",
        "by": "tab",
        "value": 50,
    },
},

vscode.setEditorLayout Sets the editor layout

Example for a 2x2 grid:

"2x2 grid": {
    "command": "vscode.setEditorLayout",
    "args": { "orientation": 0, "groups": [{ "groups": [{}, {}], "size": 0.5 }, { "groups": [{}, {}], "size": 0.5 }] },
},

editor.emmet.action.wrapWithAbbreviation Wrap text with emmet

"Wrap in div": {
    "command": "editor.emmet.action.wrapWithAbbreviation",
    "args": {
        "abbreviation": "div",
        "language": "html",
    },
},

vscode.openIssueReporter Opens the issue reporter with the provided extension id as the selected source

  • extensionId - extensionId to report an issue on
"Issue: preselect extension": {
    "command": "vscode.openIssueReporter",
    "args": "usernamehw.commands",
},

workbench.extensions.installExtension Install extension by id

"Install extension": {
    "command": "workbench.extensions.installExtension",
    "args": "usernamehw.errorlens",
},

workbench.extensions.uninstallExtension Uninstall extension by id

"Uninstall extension": {
    "command": "workbench.extensions.uninstallExtension",
    "args": "usernamehw.errorlens",
},

workbench.extensions.action.showExtensionsWithIds Show extensions in Extensions View by id

"Show specific extensions": {
    "command": "workbench.extensions.action.showExtensionsWithIds",
    "args": [
        "usernamehw.commands",
        "usernamehw.errorlens",
    ],
},

Additional commands

commands.toggleSetting Toggle settings

"Toggle boolean setting (pass string args)": {
    "command": "commands.toggleSetting",
    "args": "editor.renderIndentGuides",
},
"Pass array of values to cycle through": {
    "command": "commands.toggleSetting",
    "args": {
        "setting": "workbench.colorTheme",
        "value": ["Monokai", "Kimbie Dark"],
    },
    "icon": "symbol-color",
},
"Toggle workspace setting": {
	"command": "commands.toggleSetting",
	"args": {
		"setting": "workbench.editor.showTabs",
		"target": "workspace",
	},
},
"Set/reset setting": {
    "command": "commands.toggleSetting",
    "args": {
        "setting": "window.zoomLevel",
        "value": [0],
    },
},

commands.incrementSetting Increment/decrement setting

"Font size ++": {
    "command": "commands.incrementSetting",
    "args": {
        "setting": "editor.fontSize",
        "value": 0.5,
        // "target": "workspace",
    },
},
"Font size --": {
    "command": "commands.incrementSetting",
    "args": {
        "setting": "editor.fontSize",
        "value": -0.5,
    },
},

commands.toggleTheme Toggle themes by groups (depending on active theme kind)

"Toggle Themes": {
    "command": "commands.toggleTheme",
    "args": {
        "dark": "Default Dark+,GitHub Dark",
        "light": "Default Light+,GitHub Light",
    },
},

commands.openFolder Open file/folder in vscode

"Open file": {
    "command": "commands.openFolder",
    "args": "C:\\temp\\temp.txt",
},
"Open relative file": {
    "command": "commands.openFolder",
    "args": "./package.json",// open relative to the first opened workspace folder
},
"Open folder": {
    "command": "commands.openFolder",
    "args": "C:\\temp",
},

commands.runInTerminal Create new terminal and send text

"Terminal => watch (string argument)": {
    "command": "commands.runInTerminal",
    "args": "npm run watch"
},
"Terminal => watch": {
    "command": "commands.runInTerminal",
    "args": {
        "text": "npm run watch",
        "name": "watch",
        "reveal": true,
        "waitForExit": false,// will wait for terminal to exit before running next command
        // "cwd": "",
    },
},

commands.startDebugging Start debugging by "name" property from launch.json

"Debug extension": {
    "command": "commands.startDebugging",
    "args": "Extension",
},

commands.setEditorLanguage Change active editor language id

"Set Language JavaScript": {
    "command": "commands.setEditorLanguage",
    "args": "javascript",
},

commands.clipboardWrite Write text to clipboard

"Populate clipboard": {
    "command": "commands.clipboardWrite",
    "args": "||||||||",
},

commands.showNotification Show VSCode notification

"Msg": {
    "command": "commands.showNotification",
    "args": "info msg",
},
"Msg error": {
    "command": "commands.showNotification",
    "args": {
        "severity": "error",// "warning" | "info"
        "message": "bad",
    },
},

commands.showStatusBarNotification Show notification in status bar

"Notification in status bar": {
    "command": "commands.showStatusBarNotification",
    "args": {
        "message": "Read me fast",
        "color": "#f00",
        "timeout": 5000,
    },
},

commands.openExternal Open link in default browser

"Open google.com": {
    "command": "commands.openExternal",
    "args": "https://www.google.com",
},
"Open Extension Preview": {
    "command": "commands.openExternal",
    "args": "vscode:extension/usernamehw.commands",
},

commands.open Open file in default app (Uses open)

"Open in default app": {
    "command": "commands.open",
    "args": "C:\\temp\\img.png",
},
"Open in specified app": {
    "command": "commands.open",
    "args": {
        "target": "C:\\temp\\img.png",
        "app": "firefox",// Or absolute path
        "arguments": ["-devtools"],
    },
},

commands.revealFileInOS Open system file explorer and reveal the specified path

"commands.revealFileInOS": {
    "command": "commands.revealFileInOS",
    "args": "C:/Users",
},

Running sequence without adding it to settings.json

If the only purpose for a command sequence is to run it from a keybinding, then it might be easier to just run it from a keybindings.json file directly:

{
    "key": "ctrl+shift+9",
    "command": "commands.run",
    "args": [
        "editor.action.toggleMinimap",
        "workbench.action.toggleSidebarVisibility",
    ],
},

Codicons

To quickly find an icon (for Tree View or Status Bar) there's an extension that can show all codicons (with preview) and insert picked id into the editor:

Codicon Names

Codicon Names

There's also a vscode-codicons web page to browse codicons.

Using your own color for tree view icon

"workbench.colorCustomizations": {
    "mycolor": "#ffc01f",
},
"commands.commands": {
    "Command": {
        "icon": "dashboard",
        "iconColor": "mycolor",
    },
},

More examples

Upstream issues

Please upvote the following VS Code issues:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].