On Thursday, 21 July 2016 at 22:39:45 UTC, Steven Schveighoffer
wrote:
On 7/21/16 3:54 PM, Jonathan Marler wrote:
Is there a way to get the full path of the current source file?
Something like:
__FILE_FULL_PATH__
I'm asking because I'm rewriting a batch script in D, meant to
be ran
with rdmd. However, the script needs to know it's own path.
The
original batch script uses the %~dp0 variable for this, but
I'm at a
loss on how to do this in D. Since rdmd compiles the
executable to the
%TEMP% directory, thisExePath won't work.
BATCH
-----
echo "Directory of this script is " %~dp0
DLANG
-----
import std.stdio;
int main(string[] args) {
writeln("Directory of this script is ", ???);
}
Sure seems like an unwanted limitation.
rdmd does forward all dmd options, but there isn't really an
option to say "put the exe in the source path".
You should file an enhancement.
-Steve
An option for rdmd would be good, but then requires the user to
call rdmd in a particular way. It doesnt allow the script itself
know where it lives, which is needed in my case.