Retrieving existing package by name
'MyPackage' asPackage
RPackage organizer packageNamed: 'MyPackage'
(RPackage named: 'MyPackage') register
pkg := (RPackage named: 'MyPackage').
RPackage organizer registerPackage: pkg.
'MyPackage' asPackage renameTo: 'YourPackage'
'MyPackage' asPackage unregister
- this will NOT remove the classes (they will be in _UnpackagedPackage
)
you might need 'MyPackage' asPackage definedClasses do: [ :each | each removeFromSystem ]
Tags RPackageTag
(package tags / class tags)
classTag := 'MyPackage' asPackage addClassTag: 'tag'
Retrieve tag from package
all tags - 'Nautilus' asPackage classTags
by name - 'Nautilus' asPackage classTagNamed: 'Tree'
('Nautilus' asPackage classTagNamed: 'Tree') renameTo: 'Forest'
Btw. Nautilus seems to ignore this kind of change and I have to close and open tags tree to see the updated name
'MyPackage' asPackage removeClassTag: 'tag'
removal of classes is required
Classes Class
and packages/tags
MyClass package classTagForClass: MyClass
the default tag (e.g. if you don't see any in Nautilus) has the same name as the package itself.
Move class to a package/tag
'MyPackage' asPackage addClass: MyClass
('MyPackage' asPackage classTagNamed: 'Tree') addClass: MyClass
Moving class to a tag and ensuring it exists
pkg := 'MyPackage' asPackage.
(pkg classTagNamed: 'tag' ifAbsent: [ pkg addClassTag: 'tag' ]) addClass: MyClass.