Comments (5)
Visual Studio Code appears to use ${relativeFileDirname}
for this. It doesn't seem to be exposed by Run on Save at the moment though.
from vscode-runonsave.
FWIW, I managed to work around this limitation with a batch file. It looks something like this:
setlocal enabledelayedexpansion
set "WorkspaceFolder=%~1"
set "FileDirname=%~2"
set "FileBasename=%~3"
set "FileExtname=%~4"
call :strLen WorkspaceFolder length
set /A "length+=1"
set "RelativeDirname=!FileDirname:~%length%!"
rem Do other stuff.
endlocal
exit /b
:strLen
setlocal enabledelayedexpansion
if "!%1!" == "" (
set /A "len=0"
goto :strLen_End
)
:strLen_Loop
if not "!%1:~%len%,1!" == "" (
set /A "len+=1" & goto :strLen_Loop
)
:strLen_End
endlocal & set %2=%len%
exit /b
from vscode-runonsave.
I have a very similar problem and ${relativeFileDirname}
would help me out as well
from vscode-runonsave.
My workaround for now us to use dirname dist/${relativeFile}
:
"emeraldwalk.runonsave": {
"commands": [
{
"match": "\\.js$",
"cmd": "npx babel ${relativeFile} --out-dir `dirname dist/${relativeFile}` --source-type script --source-maps --minified"
}
]
},
from vscode-runonsave.
FWIW, I eventually switched from using a batch command to a PowerShell script, which is a bit less awkward (with commandlets like Split-Path). Of course, I then found myself having to get it working on Linux as well and ended up writing a dispatcher script based on https://nastytester.com/posts/script-that-works-in-windows-and-linux.html (so I'm back to using a batch command for at least part of the process).
from vscode-runonsave.
Related Issues (20)
- Command that runs in terminal not running in 'run on save'
- Support for VSCode commands?
- Use VS Code Language mode in addition to regex to filter files? HOT 1
- Escaping spaces in file path HOT 1
- [Solved] Extension forces default Auto Save Delay to not change HOT 1
- Unable to use the Regex string for the match for specific files
- Not working when opening files directly without a workspace/folder HOT 1
- how can I debug runonsave? HOT 1
- Make VSCode "wait" until command finishes HOT 1
- Run both user AND workspace settings
- RESOLVED: full path now needed for all programs to run HOT 3
- Extension can no longer format C++ files HOT 1
- multiple commands instead only one command
- how to match exclude .vscode folder HOT 1
- Run on Save runs even when using "Save without Formatting" option in VSCode (cmd+K S)
- delay before command runs HOT 4
- README: add info how to see the logs
- [feature] match host operating system
- Negotiation in match
- Handling Paths with Spaces HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vscode-runonsave.