diff --git a/compiler/commands.nim b/compiler/commands.nim index bb9356a173..63b3505215 100644 --- a/compiler/commands.nim +++ b/compiler/commands.nim @@ -392,15 +392,15 @@ proc processSwitch*(switch, arg: string, pass: TCmdLinePass, info: TLineInfo; conf.lazyPaths.keepItIf(it != path) of "nimcache": expectArg(conf, switch, arg, pass, info) - conf.nimcacheDir = processPath(conf, arg, info, true) + conf.nimcacheDir = processPath(conf, arg, info, notRelativeToProj=true) of "out", "o": expectArg(conf, switch, arg, pass, info) - let f = splitFile(arg.expandTilde) + let f = splitFile(processPath(conf, arg, info, notRelativeToProj=true).string) conf.outFile = RelativeFile f.name & f.ext conf.outDir = toAbsoluteDir f.dir of "outdir": expectArg(conf, switch, arg, pass, info) - conf.outDir = toAbsoluteDir arg.expandTilde + conf.outDir = processPath(conf, arg, info, notRelativeToProj=true) of "docseesrcurl": expectArg(conf, switch, arg, pass, info) conf.docSeeSrcUrl = arg diff --git a/compiler/options.nim b/compiler/options.nim index 06f30ef99f..c880534fd1 100644 --- a/compiler/options.nim +++ b/compiler/options.nim @@ -586,9 +586,7 @@ proc pathSubs*(conf: ConfigRef; p, config: string): string = "projectname", conf.projectName, "projectpath", conf.projectPath.string, "projectdir", conf.projectPath.string, - "nimcache", getNimcacheDir(conf).string]) - if "~/" in result: - result = result.replace("~/", home & '/') + "nimcache", getNimcacheDir(conf).string]).expandTilde iterator nimbleSubs*(conf: ConfigRef; p: string): string = let pl = p.toLowerAscii