From 0b6f2b22f972b8e62f1d5eece72aea93043ffb90 Mon Sep 17 00:00:00 2001 From: Dmitry Jemerov Date: Mon, 9 Feb 2015 20:12:30 +0100 Subject: make sure that file names generated from identifiers are unique on case-insensitive file systems --- src/Locations/LocationService.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/Locations/LocationService.kt') diff --git a/src/Locations/LocationService.kt b/src/Locations/LocationService.kt index cb0a5670..26a67382 100644 --- a/src/Locations/LocationService.kt +++ b/src/Locations/LocationService.kt @@ -32,7 +32,11 @@ public trait LocationService { } -public fun escapeUri(path: String): String = path.replace('<', '-').replace('>', '-') +public fun identifierToFilename(path: String): String { + val escaped = path.replace('<', '-').replace('>', '-') + val lowercase = escaped.replaceAll("[A-Z]") { matchResult -> "-" + matchResult.group().toLowerCase() } + return if (lowercase == "index") "--index--" else lowercase +} /** * Returns relative location between two nodes. Used for relative links in documentation. -- cgit