#FEATURE by cg
class: Smalltalk
changed: #start
allow multiple (comma separated) files in
packagePath and --load options.
--- a/Smalltalk.st Sat Nov 05 14:04:35 2016 +0100
+++ b/Smalltalk.st Sat Nov 05 17:18:58 2016 +0100
@@ -4374,9 +4374,11 @@
] whileTrue:[
arg := CommandLineArguments at:idx + 1.
CommandLineArguments removeAtIndex:idx+1; removeAtIndex:idx.
- self packagePath addLast:arg.
- VerboseStartup == true ifTrue:[
- ('Smalltalk [info]: add to packagePath: "', arg, '".') infoPrintCR.
+ (arg asCollectionOfSubstringsSeparatedByAny:',;') do:[:each |
+ self packagePath addLast:each.
+ VerboseStartup == true ifTrue:[
+ ('Smalltalk [info]: add to packagePath: "', arg, '".') infoPrintCR.
+ ].
].
].
@@ -4387,10 +4389,18 @@
arg := CommandLineArguments at:idx + 1.
CommandLineArguments removeAtIndex:idx+1; removeAtIndex:idx.
Smalltalk silentlyLoadingDo:[
- arg asFilename exists ifTrue:[
- Smalltalk fileIn:arg
- ] ifFalse:[
- Smalltalk loadPackage:arg
+ (arg asCollectionOfSubstringsSeparatedByAny:',;') do:[:each |
+ each asFilename exists ifTrue:[
+ VerboseStartup == true ifTrue:[
+ ('Smalltalk [info]: loading file: "', each, '".') infoPrintCR.
+ ].
+ Smalltalk fileIn:each
+ ] ifFalse:[
+ VerboseStartup == true ifTrue:[
+ ('Smalltalk [info]: loading package: "', each, '".') infoPrintCR.
+ ].
+ Smalltalk loadPackage:each
+ ].
].
].
].