Der Paketmanager wurde in Rhino 7 eingeführt. Er erleichtert das Entdecken, Installieren und Verwalten von Rhino-Plug-ins aus Rhino heraus. Diese Anleitung beschreibt, wie man ein Paket aus einem Rhino-Plug-in erstellt, das auf dem Paketserver veröffentlicht werden kann.
"/Applications/Rhino 8.app/Contents/Resources/bin/yak".Nehmen wir zunächst an, dass Sie einen Ordner auf Ihrem Computer haben, in dem alle Dateien enthalten sind, die Sie in Ihrem Paket verteilen möchten. Etwa so…
C:\Benutzer\Bozo\dist
├── Tamarin.rhp
├── icon.png
└── misc\
├── README.md
└── LICENSE.txt
Wir werden das Yak CLI Tool verwenden, um das Paket zu erstellen, öffnen Sie also eine Befehls-Eingabeaufforderung und navigieren Sie zu dem oben genannten Verzeichnis.
> cd C:\Benutzer\Bozo\dist
Jetzt brauchen wir eine Datei manifest.yml! Sie können leicht Ihre eigene erstellen, indem Sie
den Leitfaden der Manifest-Referenzen studieren. Alternativ können Sie den Befehl spec verwenden
um eine Skelettdatei zu erzeugen. Wir werden hier Letzteres tun.
> "C:\Programne\Rhino 8\System\Yak.exe" spec
Inspecting content: Tamarin.rhp
---
name: tamarin
version: 1.0.0
authors:
- Park Ranger
description: An example RhinoCommon plug-in
url: https://example.com
Saved to C:\Benutzer\Bozo\dist\manifest.yml
Der Befehl spec sieht sich das aktuelle Verzeichnis an und wird, falls vorhanden, nützliche Informationen aus der Baugruppe .rhp zu gewinnen versuchen und daraus eine mit Name, Version, Beschreibung usw. vorausgefüllte manifest.yml erstellen. Wenn Sie diese Informationen noch nicht hinzugefügt haben, werden Platzhalter verwendet.
Der RhinoCommon-Plug-in-Inspektor extrahiert die Baugruppenattribute, die Sie bei der Erstellung Ihres Plug-ins festgelegt haben. Das Attribut AssemblyInformationalVersion wird verwendet, um das Versionsfeld zu füllen, da dieses Attribut nicht an die vierstellige Versionsspezifikation von Microsoft gebunden ist und eine SemVer-kompatible Versionszeichenkette enthalten kann. Attribut AssemblyVersion wird als Ersatz verwendet.
spec ist nützlich, um zu Beginn die Datei manifest.yml zu erstellen. Wenn Sie eine haben, bewahren Sie sie zusammen mit Ihrem Projekt auf und aktualisieren Sie sie für jede Veröffentlichung.Als nächstes öffnen Sie die Manifestdatei mit Ihrem bevorzugten Editor und füllen Sie die Lücken aus.
Danach sollten Sie etwas haben, das in etwa so aussieht…
---
name: tamarin
version: 1.0.0
authors:
- Park Ranger
description: >
This plug-in does something. I'm not really sure exactly what it's supposed to
do, but it does it better than any other plug-in.
url: https://example.com
icon: icon.png
keywords:
- something
Jetzt, da wir eine Manifestdatei haben, können wir das Paket erstellen!
> "C:\Programme\Rhino 8\System\Yak.exe" build
Building package from contents of C:\Benutzer\Bozo\dist
Found manifest.yml for package: tamarin (1.0.0)
Inspecting content: Tamarin.rhp
Creating tamarin-1.0.0-rh6_18-any.yak
---
name: tamarin
version: 1.0.0
authors:
- Will Pearson
description: >
This plug-in does something. I'm not really sure exactly what it's supposed to
do, but it does it better than any other plug-in.
url: https://example.com
keywords:
- something
- guid:c9beedb9-07ec-4974-a0a2-44670ddb17e4
C:\Benutzer\Bozo\dist\tamarin-1.0.0-rh6_18-any.yak
├── Tamarin.dll
├── Tamarin.rhp
├── manifest.yml
└── misc/
├── LICENSE.txt
└── README.md
rh6_18-any). Der erste Teil, rh6_18, wird von der Version von Rhinocommon.dll oder Rhino C++ SDK abgeleitet, die im Plug-in-Projekt referenziert wird. Der zweite Teil, any, bezieht sich auf die Plattform, für die das Plug-in bestimmt ist. Um ein plattformspezifisches Paket zu erstellen, führen Sie den Befehl build erneut mit dem Argument --platform <platform> aus, wobei <platform> entweder win oder mac sein kann.rh6* Distribution Tag veröffentlichen, ist es nicht für Rhino 7 installierbar. Wenn Ihr Plug-in auch in Rhino 7 funktioniert, markieren Sie es bitte als kompatibel, indem Sie die .yak-Datei kopieren, den Teil des Dateinamens im Distribution Tag aktualisieren (also rh6_18 ➡ rh7_0) und beides auf den Paketserver pushen.Herzlichen Glückwunsch! 🙌 Sie haben gerade ein Paket für Ihr Grasshopper-Plug-in erstellt.
Weitere Schritte:
Nachdem Sie nun ein Paket erstellt haben, pushen Sie es auf den Paketserver, damit es im Paketmanager verfügbar ist!
