#FEATURE by stefan
class: UnixFilename class
added: #nameWithSpecialExpansions:
support expansion
--- a/UnixFilename.st Thu Jan 10 19:14:42 2019 +0100
+++ b/UnixFilename.st Thu Jan 10 19:15:28 2019 +0100
@@ -85,6 +85,35 @@
"Modified (comment): / 31-05-2018 / 09:56:20 / Claus Gittinger"
! !
+!UnixFilename class methodsFor:'misc'!
+
+nameWithSpecialExpansions:aString
+ "return the nameString, expanding any OS specific macros.
+ Here, a ~/ or ~user/ prefix is expanded to the users home dir (as in csh)"
+
+ |expandedString|
+
+ expandedString := aString.
+ (expandedString includes:$$) ifTrue:[
+ expandedString := OperatingSystem expandEnvironmentStrings:expandedString.
+ ].
+
+ (expandedString startsWith:$~) ifTrue:[
+ ^ super nameWithSpecialExpansions:expandedString.
+ ].
+ ^ expandedString
+
+ "
+ self nameWithSpecialExpansions:'/usr/lib'
+ self nameWithSpecialExpansions:'$JAVA_HOME/bin'
+ self nameWithSpecialExpansions:'$(JAVA_HOME)/bin'
+ self nameWithSpecialExpansions:'~/work'
+ self nameWithSpecialExpansions:'~stefan/test'
+ "
+
+ "Created: / 10-01-2019 / 16:04:14 / Stefan Vogel"
+! !
+
!UnixFilename class methodsFor:'queries'!
isBadCharacter:aCharacter