This content originally appeared on DEV Community and was authored by Elio Struyf
Recently I switched from using Alfred over to Raycast. What convinced me of Raycast is the simplicity the tool provides, plus the ability to simply create your custom commands/scripts.
Info: I already wrote about it: Using Raycast to speed up my productivity.
The more I use Raycast, the more I want to automate. A script I created was to start up my daily development tasks:
- Open my VSCode editor with the right project loaded
- Open my terminal to the right folder
- Open
Microsoft Edge
to the Azure Portal - Open
Google Chrome
with my application URL
These tasks typically do not take a lot of time, but automating this by one command is so easy.
Taking it to the next level
To take it to the next level, I wanted to start my commands in VSCode as well. For my project I use two terminals:
- Open
ngrok
as my application needs to be accessible remotely. - Start the local development server (Next.js in my case).
Unfortunately, you can only trigger certain actions in VSCode by shortcuts. That is why I thought to create a new VSCode Remote Control
extension which allows you to send commands from anywhere on your device to the running VSCode instance.
Info: Check out the extension here: VSCode Remote Control.
The extension spins up a WebSocket
server. By default, it will start it on port: 3710
, but is configurable from the settings.
Show me what it can do
To speed up my process, I wanted to open two terminal instances in VSCode and run my commands in each of them.
In my Raycast script, all I had to do is add the following code:
echo "{ \"command\": \"workbench.action.terminal.newWithCwd\" }" | websocat ws://localhost:3710
echo "{ \"command\": \"workbench.action.terminal.sendSequence\", \"args\": { \"text\": \"npm run ngrok\\n\" } }" | websocat ws://localhost:3710
echo "{ \"command\": \"workbench.action.terminal.split\" }" | websocat ws://localhost:3710
echo "{ \"command\": \"workbench.action.terminal.focusAtIndex2\" }" | websocat ws://localhost:3710
echo "{ \"command\": \"workbench.action.terminal.sendSequence\", \"args\": { \"text\": \"cd solutions/msteams/webapp && npm run dev\\n\" } }" | websocat ws://localhost:3710
Important: this is not only created for Raycast. Once installed, you can run commands from anywhere on your device.
Here the result of this script:
Check out the VSCode extension here: VSCode Remote Control.
This content originally appeared on DEV Community and was authored by Elio Struyf
Elio Struyf | Sciencx (2021-04-22T08:14:32+00:00) New VSCode extension that takes automation to the next level. Retrieved from https://www.scien.cx/2021/04/22/new-vscode-extension-that-takes-automation-to-the-next-level/
Please log in to upload a file.
There are no updates yet.
Click the Upload button above to add an update.