more RawFilePath conversion

Added a RawFilePath createDirectory and kept making stuff build.

Up to 296/645

This commit was sponsored by Mark Reidenbach on Patreon.
This commit is contained in:
Joey Hess 2020-10-28 17:25:59 -04:00
parent b8bd2e45e3
commit 8d66f7ba0f
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
18 changed files with 95 additions and 76 deletions

View file

@ -18,6 +18,8 @@ module Annex.View.ViewedFile (
import Annex.Common
import qualified Data.ByteString as S
type FileName = String
type ViewedFile = FileName
@ -34,14 +36,14 @@ type MkViewedFile = FilePath -> ViewedFile
-}
viewedFileFromReference :: MkViewedFile
viewedFileFromReference f = concat
[ escape base
[ escape (fromRawFilePath base)
, if null dirs then "" else "_%" ++ intercalate "%" (map escape dirs) ++ "%"
, escape $ concat extensions
, escape $ fromRawFilePath $ S.concat extensions
]
where
(path, basefile) = splitFileName f
dirs = filter (/= ".") $ map dropTrailingPathSeparator (splitPath path)
(base, extensions) = splitShortExtensions basefile
(base, extensions) = splitShortExtensions (toRawFilePath basefile)
{- To avoid collisions with filenames or directories that contain
- '%', and to allow the original directories to be extracted