mirror of
https://github.com/aphrody-labs/cadcraft.git
synced 2026-10-13 19:26:54 +00:00
Add German (de) interface language (#573)
Squash of PR #573 by @arekown. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f967dc7aca
commit
d7f3e48362
12 files changed
+1076
-26
No files matched your search
@@ -57,4 +57,5 @@ Generated-in-code assets are original and have no file to list:
|
||||
| Asset | Author | Source | Licence | Notes |
|
||||
|---|---|---|---|---|
|
||||
| `crates/ui-egui/src/i18n/uk.tsv` | @dmatviichuk | Original Ukrainian translations of CADCraft English strings | MIT OR Apache-2.0 (`LICENSE-MIT`, `LICENSE-APACHE`) | No proprietary localization resources copied |
|
||||
| `crates/ui-egui/src/i18n/de.tsv` | the CADCraft contributors | Original German translations of CADCraft English strings | MIT OR Apache-2.0 (`LICENSE-MIT`, `LICENSE-APACHE`) | No proprietary localization resources copied |
|
||||
| `crates/ui-egui/src/i18n/pt_br.tsv` | @WladmirJunior | Original Brazilian Portuguese translations of CADCraft English strings | MIT OR Apache-2.0 (`LICENSE-MIT`, `LICENSE-APACHE`) | No proprietary localization resources copied |
|
||||
@@ -111,7 +111,7 @@ numbers):
|
||||
| Layouts & plotting | Paper-space layouts, viewports (scale, lock, per-viewport layer freeze), MSPACE/PSPACE through viewports, page setups, PLOT and EXPORTPDF |
|
||||
| Parametric | Geometric and dimensional constraints, AUTOCONSTRAIN, PARAMETERS with expressions, conflict detection; constraints re-solve after every edit |
|
||||
| Grips | Hot grips with Space to cycle Stretch, Move, Rotate, Scale and Mirror |
|
||||
| Interface languages | English and Ukrainian (Українська), live switching and a remembered Auto/system-language choice; [details](docs/localization.md) |
|
||||
| Interface languages | English, Ukrainian (Українська) and German (Deutsch), live switching and a remembered Auto/system-language choice; [details](docs/localization.md) |
|
||||
| Automation | MCP server, JSON control channel, `cadcraft-cli` (info, convert, run, commands, mcp) |
|
||||
|
||||
## Quick start
|
||||
|
||||
+4
-4
@@ -80,8 +80,8 @@ Hours are Opus 5.5 agent wall-clock hours, calibrated on this repo's own build:
|
||||
|
||||
## Languages
|
||||
|
||||
AutoCAD 2027 for Mac ships 8 interface languages; CADCraft ships English only. Detail:
|
||||
[localization-parity.md](docs/localization-parity.md).
|
||||
AutoCAD 2027 for Mac ships 8 interface languages; CADCraft ships English plus partial
|
||||
Ukrainian and German. Detail: [localization-parity.md](docs/localization-parity.md).
|
||||
|
||||
| Language | Status | UI translated |
|
||||
|---|---|---:|
|
||||
@@ -94,11 +94,11 @@ AutoCAD 2027 for Mac ships 8 interface languages; CADCraft ships English only. D
|
||||
| Portuguese | none | 0% |
|
||||
| Indonesian | none | 0% |
|
||||
| Japanese | none | 0% |
|
||||
| German | none | 0% |
|
||||
| German | partial | ≈ 100% of the catalog (989 rows) |
|
||||
| Korean | none | 0% |
|
||||
| Vietnamese | none | 0% |
|
||||
|
||||
Other languages shipped: Ukrainian, partial (936 catalog rows, landed with #36; engine messages stay English).
|
||||
Other languages shipped: Ukrainian and German, both partial (989 catalog rows each; Ukrainian landed with #36; engine messages stay English).
|
||||
|
||||
## Upcoming
|
||||
|
||||
|
||||
@@ -0,0 +1,995 @@
|
||||
# CADCraft German interface catalog — original translations by the CADCraft contributors.
|
||||
# License: MIT OR Apache-2.0 (the repository LICENSE-MIT and LICENSE-APACHE).
|
||||
# Written from CADCraft's English strings; no proprietary translations were copied.
|
||||
# UTF-8: context<TAB>English source<TAB>German translation.
|
||||
# Empty context = ordinary label; @plural = one|other forms with {n}.
|
||||
# Keep command IDs, keywords, technology/product names and user data unchanged.
|
||||
Cancel Abbrechen
|
||||
OK OK
|
||||
or [ oder [
|
||||
% of all commits % aller Commits
|
||||
* Wildcard Match * Wildcard-Abgleich
|
||||
*VARIES* *VARIIERT*
|
||||
+ | Top | 2D Wireframe + | Oben | 2D-Drahtmodell
|
||||
+Bin +Binär
|
||||
+LOC +Zeilen
|
||||
1 Viewport 1 Ansichtsfenster
|
||||
2 Points 2 Punkte
|
||||
2 Viewports 2 Ansichtsfenster
|
||||
2D Solid 2D-Vollfläche
|
||||
3 Points 3 Punkte
|
||||
3 Viewports 3 Ansichtsfenster
|
||||
3D Face 3D-Fläche
|
||||
3D Operations 3D-Operationen
|
||||
3D Polyline 3D-Polylinie
|
||||
4 Viewports 4 Ansichtsfenster
|
||||
< Less than < Kleiner als
|
||||
<> Not Equal <> Ungleich
|
||||
= Equals = Gleich
|
||||
> Greater than > Größer als
|
||||
About Über
|
||||
About CADCraft Über CADCraft
|
||||
Absolute Absolut
|
||||
Add Leader Führungslinie hinzufügen
|
||||
Align Ausrichten
|
||||
Align Text Text ausrichten
|
||||
Aligned Ausgerichtet
|
||||
All Alle
|
||||
All Used Layers Alle verwendeten Layer
|
||||
All files Alle Dateien
|
||||
Angle Winkel
|
||||
Angular Winkelbemaßung
|
||||
Annotation Visibility Sichtbarkeit der Beschriftungen
|
||||
Annotation scale Beschriftungsmaßstab
|
||||
Apparent Intersection Scheinbarer Schnittpunkt
|
||||
Append to current selection set Zum aktuellen Auswahlsatz hinzufügen
|
||||
Apply to: Anwenden auf:
|
||||
Apply true color True Color anwenden
|
||||
Arc Bogen
|
||||
Arc Length Bogenlänge
|
||||
Area Fläche
|
||||
Arrange Panel Panel anordnen
|
||||
Array Reihe
|
||||
Attach Anhängen
|
||||
Attribute Attribut
|
||||
Attribute Definition Attributdefinition
|
||||
Attribute Display Attributanzeige
|
||||
Audit Zeichnung prüfen
|
||||
Auto (system language) Auto (Systemsprache)
|
||||
Auto Constrain Automatische Abhängigkeiten
|
||||
AutoConstrain Automatische Abhängigkeiten
|
||||
Axis, End Achse, Ende
|
||||
Base Basis
|
||||
Baseline Basislinie
|
||||
Batch Publish Stapelveröffentlichung
|
||||
Binary assets added Binärdateien hinzugefügt
|
||||
Binary assets removed Binärdateien entfernt
|
||||
Blend Übergang
|
||||
Block Block
|
||||
Block Attribute Manager... Blockattribut-Manager...
|
||||
Block Editor Blockeditor
|
||||
Block Reference Blockreferenz
|
||||
Block... Block...
|
||||
Blocks Blöcke
|
||||
Blue Blau
|
||||
Bold Fett
|
||||
Boolean Boolesche Operationen
|
||||
Boundary Begrenzung
|
||||
Boundary... Begrenzung...
|
||||
Box Quader
|
||||
Break Umbrechen
|
||||
Break At Point An Punkt umbrechen
|
||||
Bring to Front In den Vordergrund
|
||||
ByBlock VonBlock
|
||||
ByColor VonFarbe
|
||||
ByLayer VonLayer
|
||||
CADCraft Help CADCraft-Hilfe
|
||||
Cancel Abbrechen
|
||||
Cartesian (x, y) Kartesisch (x, y)
|
||||
Center Zentrum
|
||||
Center Line Mittellinie
|
||||
Center Mark Zentrumsmarke
|
||||
Center X Mitte X
|
||||
Center Y Mitte Y
|
||||
Center Z Mitte Z
|
||||
Center, Diameter Zentrum, Durchmesser
|
||||
Center, Radius Zentrum, Radius
|
||||
Center, Start, Angle Zentrum, Start, Winkel
|
||||
Center, Start, End Zentrum, Start, Ende
|
||||
Center, Start, Length Zentrum, Start, Länge
|
||||
Chamfer Fase
|
||||
Change Space Raum wechseln
|
||||
Change to Current Layer Auf aktuellen Layer ändern
|
||||
Circle Kreis
|
||||
Circumference Umfang
|
||||
Clear Leeren
|
||||
Clipboard Zwischenablage
|
||||
Close Schließen
|
||||
Close All Alle schließen
|
||||
Closed Geschlossen
|
||||
Coincident Koinzident
|
||||
Collapse Tool Sets Werkzeuggruppen einklappen
|
||||
Collinear Kollinear
|
||||
Color Farbe
|
||||
Color 8 Farbe 8
|
||||
Color 9 Farbe 9
|
||||
Color Index Farbindex
|
||||
Color... Farbe...
|
||||
Command History Befehlsprotokoll
|
||||
Command Line Befehlszeile
|
||||
Command Line History Lines Protokollzeilen der Befehlszeile
|
||||
Command Reference Befehlsreferenz
|
||||
Commits Commits
|
||||
Company Firma
|
||||
Computer-aided design and drafting: an open-source, clean-room CAD application written in pure Rust. Rechnergestütztes Konstruieren und Zeichnen: eine quelloffene, unabhängig entwickelte CAD-Anwendung in reinem Rust.
|
||||
Concentric Konzentrisch
|
||||
Cone Kegel
|
||||
Constraint Bars Abhängigkeitsleisten
|
||||
Constraint Settings Abhängigkeitseinstellungen
|
||||
Construction Line Konstruktionslinie
|
||||
Contents Inhalt
|
||||
Continue Fortfahren
|
||||
Contributors Mitwirkende
|
||||
Control Vertices Steuerpunkte
|
||||
Copy Kopieren
|
||||
Copy Layout Layout kopieren
|
||||
Copy Nested Objects Verschachtelte Objekte kopieren
|
||||
Copy Selection Auswahl kopieren
|
||||
Copy with Base Point Mit Basispunkt kopieren
|
||||
Count Anzahl
|
||||
Create Block Block erstellen
|
||||
Creates a user parameter Erstellt einen Benutzerparameter
|
||||
Ctrl+Enter to finish Strg+Eingabe zum Abschließen
|
||||
Current layer Aktueller Layer
|
||||
Current selection Aktuelle Auswahl
|
||||
Current: {color} Aktuell: {color}
|
||||
Cut Ausschneiden
|
||||
Cyan Cyan
|
||||
Cylinder Zylinder
|
||||
DWG DWG
|
||||
DXF DXF
|
||||
Dark Dunkel
|
||||
Default Standard
|
||||
Default Save Format Standard-Speicherformat
|
||||
Define Attributes Attribute definieren
|
||||
Define Attributes... Attribute definieren...
|
||||
Defined width Definierte Breite
|
||||
Degree Grad
|
||||
Delete Löschen
|
||||
Delete Column Spalte löschen
|
||||
Delete Constraints Abhängigkeiten löschen
|
||||
Delete Dimension Style Bemaßungsstil löschen
|
||||
Delete Duplicate Objects Doppelte Objekte löschen
|
||||
Delete Layer Layer löschen
|
||||
Delete Layer State Layerstatus löschen
|
||||
Delete Layout Layout löschen
|
||||
Delete Row Zeile löschen
|
||||
Delete Text Style Textstil löschen
|
||||
Delta X Delta X
|
||||
Delta Y Delta Y
|
||||
Description Beschreibung
|
||||
Deselect All Auswahl aufheben
|
||||
Diameter Durchmesser
|
||||
Dim style Bemaßungsstil
|
||||
Dimension Bemaßung
|
||||
Dimension Space Bemaßungsabstand
|
||||
Dimension Style Override Bemaßungsstil-Übersteuerung
|
||||
Dimension Style... Bemaßungsstil...
|
||||
Dimension Text Edit Bemaßungstext bearbeiten
|
||||
Dimension style Bemaßungsstil
|
||||
Dimensional Constraint Bemaßungsabhängigkeit
|
||||
Dimensional Constraint Parameters Parameter der Bemaßungsabhängigkeiten
|
||||
Dimensional Constraints Bemaßungsabhängigkeiten
|
||||
Disassociate Dimensions Assoziativität der Bemaßungen aufheben
|
||||
Display name Anzeigename
|
||||
Distance Abstand
|
||||
Divide Teilen
|
||||
Do not plot (click: plot) Nicht plotten (Klick: plotten)
|
||||
Donut Ring
|
||||
Double-click to edit the description Doppelklicken, um die Beschreibung zu bearbeiten
|
||||
Down Nach unten
|
||||
Drafting Zeichnen
|
||||
Drafting Settings Zeichnungseinstellungen
|
||||
Drafting Settings... Zeichnungseinstellungen...
|
||||
Draw Zeichnen
|
||||
Draw Order Anzeigereihenfolge
|
||||
Drawing (DWG) Zeichnung (DWG)
|
||||
Drawing (DXF) Zeichnung (DXF)
|
||||
Drawing Limits Zeichnungsgrenzen
|
||||
Drawing Utilities Zeichnungsdienstprogramme
|
||||
Drawings (DWG, DXF) Zeichnungen (DWG, DXF)
|
||||
Dynamic Dimensions Dynamische Bemaßungen
|
||||
Dynamic Input Dynamische Eingabe
|
||||
Dynamic Input (F12) Dynamische Eingabe (F12)
|
||||
E O
|
||||
Edit Bearbeiten
|
||||
Edit Text... Text bearbeiten...
|
||||
Elevation Höhenlage
|
||||
Ellipse Ellipse
|
||||
Elliptical Arc Ellipsenbogen
|
||||
Enable Dynamic Input (F12) Dynamische Eingabe aktivieren (F12)
|
||||
End Width Endbreite
|
||||
End X Ende X
|
||||
End Y Ende Y
|
||||
End angle Endwinkel
|
||||
Endpoint Endpunkt
|
||||
Enter Top, Zero or Bottom. Geben Sie Top, Zero oder Bottom ein.
|
||||
Enter a fit data option Geben Sie eine Option für die Anpassungsdaten ein
|
||||
Enter a pattern name Geben Sie einen Musternamen ein
|
||||
Enter a vertex editing option Geben Sie eine Option zur Scheitelpunktbearbeitung ein
|
||||
Enter an option Geben Sie eine Option ein
|
||||
Enter angle of xline Geben Sie den Winkel der Konstruktionslinie ein
|
||||
Enter angle of xline (0) or Geben Sie den Winkel der Konstruktionslinie ein (0) oder
|
||||
Enter area of rectangle in current units Geben Sie die Fläche des Rechtecks in den aktuellen Einheiten ein
|
||||
Enter attribute prompt Geben Sie die Attributaufforderung ein
|
||||
Enter attribute tag name Geben Sie den Attribut-Tag-Namen ein
|
||||
Enter attribute value Geben Sie den Attributwert ein
|
||||
Enter block name Geben Sie den Blocknamen ein
|
||||
Enter constraint type Geben Sie den Abhängigkeitstyp ein
|
||||
Enter continuity Geben Sie die Kontinuität ein
|
||||
Enter default attribute value Geben Sie den Standard-Attributwert ein
|
||||
Enter degree of spline Geben Sie den Grad des Splines ein
|
||||
Enter delta angle Geben Sie den Delta-Winkel ein
|
||||
Enter delta length or Geben Sie die Delta-Länge ein oder
|
||||
Enter dimension text Geben Sie den Bemaßungstext ein
|
||||
Enter dimension text (<> = measurement) Geben Sie den Bemaßungstext ein (<> = Messwert)
|
||||
Enter dimension value or [name=expression] Geben Sie einen Bemaßungswert oder [name=expression] ein
|
||||
Enter dimension variable name to override Geben Sie den Namen der zu übersteuernden Bemaßungsvariablen ein
|
||||
Enter justification type Geben Sie den Ausrichtungstyp ein
|
||||
Enter leader text Geben Sie den Führungslinientext ein
|
||||
Enter mline scale Geben Sie den Multilinien-Maßstab ein
|
||||
Enter mode Geben Sie den Modus ein
|
||||
Enter name of block to insert Geben Sie den Namen des einzufügenden Blocks ein
|
||||
Enter new text Geben Sie den neuen Text ein
|
||||
Enter next point Geben Sie den nächsten Punkt ein
|
||||
Enter number of columns Geben Sie die Anzahl der Spalten ein
|
||||
Enter number of data rows Geben Sie die Anzahl der Datenzeilen ein
|
||||
Enter number of items Geben Sie die Anzahl der Elemente ein
|
||||
Enter number of items along path Geben Sie die Anzahl der Elemente entlang des Pfads ein
|
||||
Enter number of sides Geben Sie die Anzahl der Seiten ein
|
||||
Enter number of turns Geben Sie die Anzahl der Windungen ein
|
||||
Enter percentage length Geben Sie die Länge in Prozent ein
|
||||
Enter rectangle length Geben Sie die Länge des Rechtecks ein
|
||||
Enter rectangle width Geben Sie die Breite des Rechtecks ein
|
||||
Enter scale factor Geben Sie den Skalierfaktor ein
|
||||
Enter text Geben Sie Text ein
|
||||
Enter text (use \P for new paragraphs) Geben Sie Text ein (\P beginnt einen neuen Absatz)
|
||||
Enter the number of segments Geben Sie die Anzahl der Segmente ein
|
||||
Enter twist direction of helix Geben Sie die Drehrichtung der Helix ein
|
||||
Entire drawing Gesamte Zeichnung
|
||||
Equal Gleich
|
||||
Erase Löschen
|
||||
Exclude from new selection set Aus neuem Auswahlsatz ausschließen
|
||||
Explode Auflösen
|
||||
Export Exportieren
|
||||
Export to PDF... In PDF exportieren...
|
||||
Expression Ausdruck
|
||||
Extend Dehnen
|
||||
Extension Verlängerung
|
||||
Extents Grenzen
|
||||
Extrude Extrudieren
|
||||
File Datei
|
||||
File Tab Dateireiter
|
||||
Fillet Abrunden
|
||||
Filter Filter
|
||||
Filters Filter
|
||||
Find and Replace Suchen und Ersetzen
|
||||
Find... Suchen...
|
||||
First Erster
|
||||
First commit Erster Commit
|
||||
Fit Points Anpassungspunkte
|
||||
Fix Fixieren
|
||||
Flatten Objects Objekte abflachen
|
||||
Format Format
|
||||
Freehand Freihand
|
||||
Freeze Frieren
|
||||
Freeze Layer Layer frieren
|
||||
Freeze in new viewports In neuen Ansichtsfenstern frieren
|
||||
Freeze/Thaw Frieren/Tauen
|
||||
Freeze/Thaw in all viewports In allen Ansichtsfenstern frieren/tauen
|
||||
Freeze/Thaw in the current viewport Im aktuellen Ansichtsfenster frieren/tauen
|
||||
From Von
|
||||
General Allgemein
|
||||
Geometric Center Geometrischer Mittelpunkt
|
||||
Geometric Constraint Geometrische Abhängigkeit
|
||||
Geometric Constraints Geometrische Abhängigkeiten
|
||||
Geometry Geometrie
|
||||
Get Variable Variable abrufen
|
||||
Get View Ansicht abrufen
|
||||
Global Global
|
||||
Global width Globale Breite
|
||||
Grab bag Sammelsurium
|
||||
Gradient Farbverlauf
|
||||
Gradient... Farbverlauf...
|
||||
Green Grün
|
||||
Grid (F7) Raster (F7)
|
||||
Grid Display Rasteranzeige
|
||||
Grid On (F7) Raster ein (F7)
|
||||
Grid spacing Rasterabstand
|
||||
Grip Mirror Mit Griffen spiegeln
|
||||
Grip Rotate Mit Griffen drehen
|
||||
Grip Scale Mit Griffen skalieren
|
||||
Grip Stretch Mit Griffen strecken
|
||||
Group Gruppieren
|
||||
Group Edit Gruppe bearbeiten
|
||||
Hatch Schraffur
|
||||
Hatch Edit Schraffur bearbeiten
|
||||
Hatch... Schraffur...
|
||||
Height Höhe
|
||||
Height: {height} Höhe: {height}
|
||||
Helix Helix
|
||||
Help Hilfe
|
||||
Hide All Alle ausblenden
|
||||
Hide All Constraint Bars Alle Abhängigkeitsleisten ausblenden
|
||||
Hide All Dynamic Dimensions Alle dynamischen Bemaßungen ausblenden
|
||||
Hide Layer List Layerliste ausblenden
|
||||
Hide Palettes Paletten ausblenden
|
||||
Home Startansicht
|
||||
Horizontal Horizontal
|
||||
HorizontalDistance Horizontaler Abstand
|
||||
How to apply: Anwendungsweise:
|
||||
ID Point Punktkoordinaten
|
||||
Import Importieren
|
||||
In Vergrößern
|
||||
In-window Menu Bar Menüleiste im Fenster
|
||||
Include in new selection set In neuen Auswahlsatz aufnehmen
|
||||
Increment angle Inkrementwinkel
|
||||
Index Color Indexfarbe
|
||||
Index color: {index} Indexfarbe: {index}
|
||||
Inquiry Abfrage
|
||||
Insert Einfügen
|
||||
Insert Block Block einfügen
|
||||
Insert Column Spalte einfügen
|
||||
Insert Row Zeile einfügen
|
||||
Insert this block Diesen Block einfügen
|
||||
Insertion Einfügepunkt
|
||||
Insertion X Einfügung X
|
||||
Insertion Y Einfügung Y
|
||||
Insertion Z Einfügung Z
|
||||
Inspect Constraints Abhängigkeiten prüfen
|
||||
Inspect Drawing Zeichnung untersuchen
|
||||
Interface Language Oberflächensprache
|
||||
Interface Theme Oberflächendesign
|
||||
Intersect Schnittmenge
|
||||
Intersection Schnittpunkt
|
||||
Isolate Isolieren
|
||||
Isolate Layer Layer isolieren
|
||||
Isometric Drafting Isometrisches Zeichnen
|
||||
Join Verbinden
|
||||
Join the ArtCraft Discord… Dem ArtCraft-Discord beitreten…
|
||||
Join us on Discord Treten Sie uns auf Discord bei
|
||||
Language Sprache
|
||||
Last Letzter
|
||||
Last commit Letzter Commit
|
||||
Layer Layer
|
||||
Layer Delete Layer samt Objekten löschen
|
||||
Layer Match Layer angleichen
|
||||
Layer Merge Layer zusammenführen
|
||||
Layer Off Layer ausschalten
|
||||
Layer Properties Layer-Eigenschaften
|
||||
Layer Properties Manager Layer-Eigenschaften-Manager
|
||||
Layer Properties Manager — current viewport Layer-Eigenschaften-Manager — aktuelles Ansichtsfenster
|
||||
Layer State Layerstatus
|
||||
Layer States Manager... Layerstatus-Manager...
|
||||
Layer Tools Layer-Werkzeuge
|
||||
Layer contains objects (double-click to make current) Layer enthält Objekte (doppelklicken, um ihn zum aktuellen zu machen)
|
||||
Layer is empty (double-click to make current) Layer ist leer (doppelklicken, um ihn zum aktuellen zu machen)
|
||||
Layers Layer
|
||||
Layers Palette Layer-Palette
|
||||
Layers displayed: {shown} of {total}. Current layer: {layer} Angezeigte Layer: {shown} von {total}. Aktueller Layer: {layer}
|
||||
Layout Layout
|
||||
Layout list Layoutliste
|
||||
Leader Führungslinie
|
||||
Left Links
|
||||
Length Länge
|
||||
Length X Länge X
|
||||
Length Y Länge Y
|
||||
Lengthen Länge ändern
|
||||
Light Hell
|
||||
Line Linie
|
||||
Line delta Zeilenänderung
|
||||
Linear Linear
|
||||
Lines +/− Zeilen +/−
|
||||
Lines added Zeilen hinzugefügt
|
||||
Lines deleted Zeilen gelöscht
|
||||
Linetype Linientyp
|
||||
Linetype Scale Linientypfaktor
|
||||
Linetype scale Linientypfaktor
|
||||
Ltscale Linientypfaktor
|
||||
Linetype... Linientyp...
|
||||
Lineweight Linienstärke
|
||||
Lineweight... Linienstärke...
|
||||
List Auflisten
|
||||
List Blocks Blöcke auflisten
|
||||
List Dimension Styles Bemaßungsstile auflisten
|
||||
List Groups Gruppen auflisten
|
||||
List Layer States Layerstatus auflisten
|
||||
List Layouts Layouts auflisten
|
||||
List System Variables Systemvariablen auflisten
|
||||
List Text Styles Textstile auflisten
|
||||
Load all Alle laden
|
||||
Load... Laden...
|
||||
Loaded linetypes Geladene Linientypen
|
||||
Lock Sperren
|
||||
Lock Layer Layer sperren
|
||||
Lock/Unlock Sperren/Entsperren
|
||||
Loft Erhebung
|
||||
MIT OR Apache-2.0. Not affiliated with Autodesk, Inc. MIT OR Apache-2.0. Keine Verbindung zu Autodesk, Inc.
|
||||
MODEL MODELL
|
||||
MText Mehrzeiliger Text
|
||||
Magenta Magenta
|
||||
Major line every Hauptlinie jede
|
||||
Make Current Als aktuell festlegen
|
||||
Make Object's Layer Current Layer des Objekts als aktuell festlegen
|
||||
Make... Erstellen...
|
||||
Match Layer Layer angleichen
|
||||
Match Properties Eigenschaften übertragen
|
||||
Measure Messen
|
||||
Measure Distance Abstand messen
|
||||
Measure Geometry Geometrie messen
|
||||
Merge Cells Zellen verbinden
|
||||
Merged PRs Gemergte PRs
|
||||
Mid Between 2 Points Mitte zwischen 2 Punkten
|
||||
Midpoint Mittelpunkt
|
||||
Mirror Spiegeln
|
||||
Model Modell
|
||||
Model Space (in viewport) Modellbereich (im Ansichtsfenster)
|
||||
Modeling Modellieren
|
||||
Models Modelle
|
||||
Modify Ändern
|
||||
Move Verschieben
|
||||
Multileader Multiführungslinie
|
||||
Multileader Style... Multiführungslinienstil...
|
||||
Multileader style Multiführungslinienstil
|
||||
Multiline Multilinie
|
||||
Multiline Text Mehrzeiliger Text
|
||||
Multiline Text... Mehrzeiliger Text...
|
||||
Multiple Verschiedene
|
||||
Multiple Point Mehrere Punkte
|
||||
My Meine
|
||||
My properties: not available yet Meine Eigenschaften: noch nicht verfügbar
|
||||
N N
|
||||
Name Name
|
||||
Name (A–Z) Name (A–Z)
|
||||
Nearest Nächstgelegener
|
||||
New Neu
|
||||
New (metric) Neu (metrisch)
|
||||
New Drawing Neue Zeichnung
|
||||
New Drawing (⌘N) Neue Zeichnung (⌘N)
|
||||
New Drawing... Neue Zeichnung...
|
||||
New Layer Neuer Layer
|
||||
New Layout Neues Layout
|
||||
New VP Freeze In neuen AF frieren
|
||||
New Viewports... Neue Ansichtsfenster...
|
||||
New layout Neues Layout
|
||||
New state name Name des neuen Status
|
||||
No Nein
|
||||
No blocks defined in this drawing. In dieser Zeichnung sind keine Blöcke definiert.
|
||||
No contributor data was built into this copy. In diese Kopie wurden keine Mitwirkendendaten eingebaut.
|
||||
No model credits were built into this copy. In diese Kopie wurden keine Modellnachweise eingebaut.
|
||||
No saved layer states Keine gespeicherten Layerstatus
|
||||
No selection Keine Auswahl
|
||||
Node Knoten
|
||||
None Keine
|
||||
Not available Nicht verfügbar
|
||||
Not available yet Noch nicht verfügbar
|
||||
OK OK
|
||||
Object Objekt
|
||||
Object Snap Objektfang
|
||||
Object Snap (F3) Objektfang (F3)
|
||||
Object Snap On (F3) Objektfang ein (F3)
|
||||
Object Snap Tracking Objektfangspur
|
||||
Object Snap Tracking (F11) Objektfangspur (F11)
|
||||
Object type: Objekttyp:
|
||||
Off Aus
|
||||
Offset Versatz
|
||||
On Ein
|
||||
On/Off Ein/Aus
|
||||
One of the Crafting Apps by the ArtCraft team and community. Eine der Crafting Apps vom ArtCraft-Team und seiner Community.
|
||||
Open (⌘O) Öffnen (⌘O)
|
||||
Open Sample Drawing Beispielzeichnung öffnen
|
||||
Open sample drawing Beispielzeichnung öffnen
|
||||
Open... Öffnen...
|
||||
Operator: Operator:
|
||||
Orbit Orbit
|
||||
Ordinate Koordinatenbemaßung
|
||||
Ortho (F8) Ortho (F8)
|
||||
Ortho Mode Ortho-Modus
|
||||
Ortho Mode (F8) Ortho-Modus (F8)
|
||||
Osnap Settings... Objektfang-Einstellungen...
|
||||
Out Verkleinern
|
||||
Override Übersteuern
|
||||
PAPER PAPIER
|
||||
Percent Prozent
|
||||
Polar (distance < angle) Polar (Abstand < Winkel)
|
||||
PRs PRs
|
||||
Page Setup Manager Seiteneinrichtungs-Manager
|
||||
Page Setup Manager... Seiteneinrichtungs-Manager...
|
||||
Pan Schwenken
|
||||
Pan Down Nach unten schwenken
|
||||
Pan Left Nach links schwenken
|
||||
Pan Right Nach rechts schwenken
|
||||
Pan Up Nach oben schwenken
|
||||
Paper Space Papierbereich
|
||||
Parallel Parallel
|
||||
Parameters Manager Parameter-Manager
|
||||
Parametric Parametrisch
|
||||
Paste Einfügen
|
||||
Paste as Block Als Block einfügen
|
||||
Paste to Original Coordinates In Originalkoordinaten einfügen
|
||||
Path Array Pfadreihe
|
||||
Pattern Muster
|
||||
Perpendicular Senkrecht
|
||||
Plot Plotten
|
||||
Plot (click: do not plot) Plotten (Klick: nicht plotten)
|
||||
Plot Preview Plotvorschau
|
||||
Plot style Plotstil
|
||||
Plot style attached to Plotstil zugeordnet zu
|
||||
Plot style table Plotstiltabelle
|
||||
Plot Style... Plotstil...
|
||||
Plot Style Manager Plotstil-Manager
|
||||
Plot Style Manager... Plotstil-Manager...
|
||||
Plot Styles... Plotstile...
|
||||
New CTB Neue CTB
|
||||
New STB Neue STB
|
||||
New style Neuer Stil
|
||||
Reset Panel Layout Panel-Anordnung zurücksetzen
|
||||
Use for this layout Für dieses Layout verwenden
|
||||
Display plot styles Plotstile anzeigen
|
||||
No plot style tables. Keine Plotstiltabellen.
|
||||
A built-in table: editing it keeps an edited copy in the drawing. Eine integrierte Tabelle: Beim Bearbeiten wird eine bearbeitete Kopie in der Zeichnung gespeichert.
|
||||
Keep an editable copy of this table in the drawing Eine bearbeitbare Kopie dieser Tabelle in der Zeichnung behalten
|
||||
Layout {name}: {table} Layout {name}: {table}
|
||||
Grayscale Graustufen
|
||||
Screening Rasterung
|
||||
Use object linetype Linientyp des Objekts verwenden
|
||||
Use object lineweight Linienstärke des Objekts verwenden
|
||||
Remove Entfernen
|
||||
Add Hinzufügen
|
||||
Open a drawing first. Öffnen Sie zuerst eine Zeichnung.
|
||||
Plot table type Plottabellentyp
|
||||
Color-dependent Farbbasiert
|
||||
Named Benannt
|
||||
Plus/minus Plus/Minus
|
||||
Point Punkt
|
||||
Point Filters Punktfilter
|
||||
Point Style... Punktstil...
|
||||
Polar Array Polare Reihe
|
||||
Polar Tracking Polarspur
|
||||
Polar Tracking (F10) Polarspur (F10)
|
||||
Polar Tracking On (F10) Polarspur ein (F10)
|
||||
Polar: {distance} < {angle}° Polar: {distance} < {angle}°
|
||||
Polygon Polygon
|
||||
Polygonal Polygonal
|
||||
Polyline Polylinie
|
||||
Position X Position X
|
||||
Position Y Position Y
|
||||
Position Z Position Z
|
||||
Previous Zurück
|
||||
Previous Layer Vorheriger Layer
|
||||
Primitives Primitive
|
||||
Print Drucken
|
||||
Print... Drucken...
|
||||
Properties Eigenschaften
|
||||
Properties Inspector Eigenschafteninspektor
|
||||
Properties: Eigenschaften:
|
||||
Proxy Proxy-Objekt
|
||||
Purge Bereinigen
|
||||
Pyramid Pyramide
|
||||
Quadrant Quadrant
|
||||
Query Entities Objekte abfragen
|
||||
Quick Schnell
|
||||
Quick Dimension Schnellbemaßung
|
||||
Quick Properties Schnelleigenschaften
|
||||
Quick Select Schnellauswahl
|
||||
Quick Select Properties Schnellauswahl-Eigenschaften
|
||||
Quick Select... Schnellauswahl...
|
||||
QuickCalc QuickCalc
|
||||
Quit CADCraft CADCraft beenden
|
||||
Radius Radius
|
||||
Raster Image Rasterbild
|
||||
Ray Strahl
|
||||
Read-only Schreibgeschützt
|
||||
Real name Echter Name
|
||||
Realtime In Echtzeit
|
||||
Reassociate Dimensions Bemaßungen neu zuordnen
|
||||
Recent Zuletzt verwendet
|
||||
Recover... Wiederherstellen...
|
||||
Rectangle Rechteck
|
||||
Rectangular Rechteckig
|
||||
Rectangular Array Rechteckige Reihe
|
||||
Red Rot
|
||||
Redo Wiederholen
|
||||
Redo (⇧⌘Z) Wiederholen (⇧⌘Z)
|
||||
Redraw Neu zeichnen
|
||||
Regen Regenerieren
|
||||
Regen All Alle regenerieren
|
||||
Region Region
|
||||
Region/Mass Properties Regions-/Masseneigenschaften
|
||||
Relative Relativ
|
||||
Remove Leader Führungslinie entfernen
|
||||
Remove the viewport override Ansichtsfenster-Übersteuerung entfernen
|
||||
Rename Dimension Style Bemaßungsstil umbenennen
|
||||
Rename Layer Layer umbenennen
|
||||
Rename Layer State Layerstatus umbenennen
|
||||
Rename Layout Layout umbenennen
|
||||
Rename Text Style Textstil umbenennen
|
||||
Rename... Umbenennen...
|
||||
Repeat {command} {command} wiederholen
|
||||
Requires a point (x,y, @dx,dy or @d<a). Erfordert einen Punkt (x,y, @dx,dy oder @d<a).
|
||||
Reset Palettes Paletten zurücksetzen
|
||||
Restore Wiederherstellen
|
||||
Restore Layer State Layerstatus wiederherstellen
|
||||
Reverse Umkehren
|
||||
Reverse the order Reihenfolge umkehren
|
||||
Revision Cloud Revisionswolke
|
||||
Revolve Rotieren
|
||||
Right Rechts
|
||||
Rotate Drehen
|
||||
Rotation Drehwinkel
|
||||
S S
|
||||
Save Speichern
|
||||
Save (⌘S) Speichern (⌘S)
|
||||
Save As Speichern unter
|
||||
Save As... Speichern unter...
|
||||
Save Layer State Layerstatus speichern
|
||||
Save State Status speichern
|
||||
Scale Skalieren
|
||||
Search for layer Layer suchen
|
||||
Search for parameter Parameter suchen
|
||||
Second and next points: Zweiter und nächste Punkte:
|
||||
Select Auswählen
|
||||
Select 2D polyline 2D-Polylinie wählen
|
||||
Select All Alle auswählen
|
||||
Select Objects Objekte wählen
|
||||
Select a 2D polyline. Wählen Sie eine 2D-Polylinie.
|
||||
Select a block reference. Wählen Sie eine Blockreferenz.
|
||||
Select a circle or arc. Wählen Sie einen Kreis oder Bogen.
|
||||
Select a closed polyline Wählen Sie eine geschlossene Polylinie
|
||||
Select a closed polyline, circle, ellipse or closed spline. Wählen Sie eine geschlossene Polylinie, einen Kreis, eine Ellipse oder einen geschlossenen Spline.
|
||||
Select a closed polyline. Wählen Sie eine geschlossene Polylinie.
|
||||
Select a curve as the path. Wählen Sie eine Kurve als Pfad.
|
||||
Select a dimension constraint type Wählen Sie einen Bemaßungsabhängigkeitstyp
|
||||
Select a line object Wählen Sie ein Linienobjekt
|
||||
Select a line object. Wählen Sie ein Linienobjekt.
|
||||
Select a line or an arc. Wählen Sie eine Linie oder einen Bogen.
|
||||
Select a line or polyline segment Wählen Sie eine Linie oder ein Polyliniensegment
|
||||
Select a line, arc or open polyline. Wählen Sie eine Linie, einen Bogen oder eine offene Polylinie.
|
||||
Select a line, arc, circle, polyline, ellipse or spline as the path. Wählen Sie eine Linie, einen Bogen, einen Kreis, eine Polylinie, eine Ellipse oder einen Spline als Pfad.
|
||||
Select a line, circle, arc or polyline segment. Wählen Sie eine Linie, einen Kreis, einen Bogen oder ein Polyliniensegment.
|
||||
Select a line. Wählen Sie eine Linie.
|
||||
Select a polyline. Wählen Sie eine Polylinie.
|
||||
Select a text, mtext, attribute definition or dimension. Wählen Sie einen Text, MText, eine Attributdefinition oder eine Bemaßung.
|
||||
Select an annotation object Wählen Sie ein Beschriftungsobjekt
|
||||
Select an arc or circle Wählen Sie einen Bogen oder Kreis
|
||||
Select an arc. Wählen Sie einen Bogen.
|
||||
Select an object Wählen Sie ein Objekt
|
||||
Select an object to change or Wählen Sie ein zu änderndes Objekt oder
|
||||
Select an object to measure or Wählen Sie ein zu messendes Objekt oder
|
||||
Select an object. Wählen Sie ein Objekt.
|
||||
Select an open curve. Wählen Sie eine offene Kurve.
|
||||
Select an open line, arc, polyline, ellipse arc or spline. Wählen Sie eine offene Linie, einen Bogen, eine Polylinie, einen Ellipsenbogen oder einen Spline.
|
||||
Select arc or circle Wählen Sie einen Bogen oder Kreis
|
||||
Select arc or polyline arc segment Wählen Sie einen Bogen oder ein Polylinienbogensegment
|
||||
Select arc style Wählen Sie einen Bogenstil
|
||||
Select arc, circle, line Wählen Sie Bogen, Kreis oder Linie
|
||||
Select at least two objects to join. Wählen Sie mindestens zwei zu verbindende Objekte.
|
||||
Select circle or arc to add center mark Wählen Sie einen Kreis oder Bogen für die Zentrumsmarke
|
||||
Select closed objects (regions, closed polylines, circles). Wählen Sie geschlossene Objekte (Regionen, geschlossene Polylinien, Kreise).
|
||||
Select first line Wählen Sie die erste Linie
|
||||
Select first line or arc Wählen Sie die erste Linie oder den ersten Bogen
|
||||
Select first object Wählen Sie das erste Objekt
|
||||
Select first object or Wählen Sie das erste Objekt oder
|
||||
Select first point Wählen Sie den ersten Punkt
|
||||
Select nested objects to copy or Wählen Sie zu kopierende verschachtelte Objekte oder
|
||||
Select object Wählen Sie ein Objekt
|
||||
Select object to dimension Wählen Sie das zu bemaßende Objekt
|
||||
Select object to divide Wählen Sie das zu teilende Objekt
|
||||
Select object to extend or shift-select to trim Wählen Sie das zu dehnende Objekt oder wählen Sie mit der Umschalttaste zum Stutzen
|
||||
Select object to measure Wählen Sie das zu messende Objekt
|
||||
Select object to offset Wählen Sie das Objekt für den Versatz
|
||||
Select object to trim or shift-select to extend Wählen Sie das zu stutzende Objekt oder wählen Sie mit der Umschalttaste zum Dehnen
|
||||
Select objects Wählen Sie Objekte
|
||||
Select objects (crossing window first corner) Wählen Sie Objekte (erste Ecke des Kreuzungsfensters)
|
||||
Select objects to array. Wählen Sie die Objekte für die Reihe.
|
||||
Select objects to stretch by crossing-window or crossing-polygon... Wählen Sie die zu streckenden Objekte mit einem Kreuzungsfenster oder Kreuzungspolygon...
|
||||
Select objects: Objekte wählen:
|
||||
Select one polyline (Multiple is available through the JSON form). Wählen Sie eine Polylinie (Multiple ist über die JSON-Form verfügbar).
|
||||
Select path curve Wählen Sie die Pfadkurve
|
||||
Select point or object Wählen Sie einen Punkt oder ein Objekt
|
||||
Select polyline or Wählen Sie eine Polylinie oder
|
||||
Select second line Wählen Sie die zweite Linie
|
||||
Select second line or shift-select to apply corner Wählen Sie die zweite Linie oder wählen Sie mit der Umschalttaste, um eine Ecke anzuwenden
|
||||
Select second object Wählen Sie das zweite Objekt
|
||||
Select second object or shift-select to apply corner Wählen Sie das zweite Objekt oder wählen Sie mit der Umschalttaste, um eine Ecke anzuwenden
|
||||
Select second point Wählen Sie den zweiten Punkt
|
||||
Select spline Wählen Sie einen Spline
|
||||
Select symmetry line Wählen Sie die Symmetrielinie
|
||||
Select two points Wählen Sie zwei Punkte
|
||||
Selection Cycling Auswahlzyklus
|
||||
Send to Back In den Hintergrund
|
||||
Set Current Als aktuell festlegen
|
||||
Set Current Dimension Style Bemaßungsstil als aktuell festlegen
|
||||
Set Current Text Style Textstil als aktuell festlegen
|
||||
Set Layer Properties Layer-Eigenschaften festlegen
|
||||
Set Properties Eigenschaften festlegen
|
||||
Set Table Cell Tabellenzelle festlegen
|
||||
Set Variable Variable festlegen
|
||||
Set View Ansicht festlegen
|
||||
Share Teilen
|
||||
Show Anzeigen
|
||||
Show All Alle anzeigen
|
||||
Show All Constraint Bars Alle Abhängigkeitsleisten anzeigen
|
||||
Show All Dynamic Dimensions Alle dynamischen Bemaßungen anzeigen
|
||||
Show Layer List Layerliste anzeigen
|
||||
Show/Hide Lineweight Linienstärke ein-/ausblenden
|
||||
Show/Hide Transparency Transparenz ein-/ausblenden
|
||||
Single Line Text Einzeiliger Text
|
||||
Single Point Einzelner Punkt
|
||||
Single... Einzeln...
|
||||
Smooth Glatt
|
||||
Snap Fang
|
||||
Snap Mode Fangmodus
|
||||
Snap Mode (F9) Fangmodus (F9)
|
||||
Snap On (F9) Fang ein (F9)
|
||||
Snap X spacing Fangabstand X
|
||||
Snap and Grid Fang und Raster
|
||||
Solid Volumenkörper
|
||||
Sort Sortieren
|
||||
Specify a point Geben Sie einen Punkt an
|
||||
Specify a scale for the hatch pattern Geben Sie einen Maßstab für das Schraffurmuster an
|
||||
Specify a second extension line origin Geben Sie den Ursprung der zweiten Hilfslinie an
|
||||
Specify an angle for the hatch pattern Geben Sie einen Winkel für das Schraffurmuster an
|
||||
Specify angle end point Geben Sie den Endpunkt des Winkels an
|
||||
Specify angle of dimension line Geben Sie den Winkel der Bemaßungslinie an
|
||||
Specify angle of dimension text Geben Sie den Winkel des Bemaßungstexts an
|
||||
Specify angle start point Geben Sie den Startpunkt des Winkels an
|
||||
Specify angle vertex Geben Sie den Winkelscheitel an
|
||||
Specify angle vertex point Geben Sie den Winkelscheitelpunkt an
|
||||
Specify arc length dimension location Geben Sie die Position der Bogenlängenbemaßung an
|
||||
Specify axis endpoint of ellipse Geben Sie den Achsenendpunkt der Ellipse an
|
||||
Specify base diameter Geben Sie den Basisdurchmesser an
|
||||
Specify base point Geben Sie den Basispunkt an
|
||||
Specify base point or Geben Sie den Basispunkt an oder
|
||||
Specify base point or displacement (drag with the middle mouse button for realtime pan) Geben Sie den Basispunkt oder die Verschiebung an (ziehen Sie mit der mittleren Maustaste zum Schwenken in Echtzeit)
|
||||
Specify base radius or Geben Sie den Basisradius an oder
|
||||
Specify center of donut Geben Sie den Mittelpunkt des Rings an
|
||||
Specify center of ellipse Geben Sie den Mittelpunkt der Ellipse an
|
||||
Specify center of polygon Geben Sie den Mittelpunkt des Polygons an
|
||||
Specify center point for circle Geben Sie den Mittelpunkt des Kreises an
|
||||
Specify center point of arc Geben Sie den Mittelpunkt des Bogens an
|
||||
Specify center point of array Geben Sie den Mittelpunkt der Reihe an
|
||||
Specify center point of base Geben Sie den Mittelpunkt der Basis an
|
||||
Specify corner of viewport Geben Sie die Ecke des Ansichtsfensters an
|
||||
Specify corner of window, enter a scale factor (nX or nXP) Geben Sie die Ecke des Fensters an, geben Sie einen Skalierfaktor ein (nX oder nXP)
|
||||
Specify diameter of circle Geben Sie den Durchmesser des Kreises an
|
||||
Specify dimension arc line location Geben Sie die Position der Bemaßungsbogenlinie an
|
||||
Specify dimension line location Geben Sie die Position der Bemaßungslinie an
|
||||
Specify distance between turns Geben Sie den Abstand zwischen den Windungen an
|
||||
Specify distance to other axis Geben Sie den Abstand zur anderen Achse an
|
||||
Specify end angle Geben Sie den Endwinkel an
|
||||
Specify end point of arc Geben Sie den Endpunkt des Bogens an
|
||||
Specify end point of arc (hold Ctrl to switch direction) Geben Sie den Endpunkt des Bogens an (Strg halten, um die Richtung zu wechseln)
|
||||
Specify ending width Geben Sie die Endbreite an
|
||||
Specify ending width for next segment Geben Sie die Endbreite des nächsten Segments an
|
||||
Specify endpoint of arc Geben Sie den Endpunkt des Bogens an
|
||||
Specify endpoint of axis Geben Sie den Endpunkt der Achse an
|
||||
Specify endpoint of line Geben Sie den Endpunkt der Linie an
|
||||
Specify feature location Geben Sie die Position des Elements an
|
||||
Specify fillet radius Geben Sie den Abrundungsradius an
|
||||
Specify fillet radius for rectangles Geben Sie den Abrundungsradius für Rechtecke an
|
||||
Specify first angle endpoint Geben Sie den ersten Endpunkt des Winkels an
|
||||
Specify first chamfer distance Geben Sie den ersten Fasenabstand an
|
||||
Specify first chamfer distance for rectangles Geben Sie den ersten Fasenabstand für Rechtecke an
|
||||
Specify first constraint point Geben Sie den ersten Abhängigkeitspunkt an
|
||||
Specify first corner Geben Sie die erste Ecke an
|
||||
Specify first corner point Geben Sie den ersten Eckpunkt an
|
||||
Specify first destination point Geben Sie den ersten Zielpunkt an
|
||||
Specify first end point of circle's diameter Geben Sie den ersten Endpunkt des Kreisdurchmessers an
|
||||
Specify first endpoint of edge Geben Sie den ersten Endpunkt der Kante an
|
||||
Specify first extension line origin Geben Sie den Ursprung der ersten Hilfslinie an
|
||||
Specify first point Geben Sie den ersten Punkt an
|
||||
Specify first point of mirror line Geben Sie den ersten Punkt der Spiegellinie an
|
||||
Specify first point on circle Geben Sie den ersten Punkt auf dem Kreis an
|
||||
Specify first point on circle: _tan to Geben Sie den ersten Punkt auf dem Kreis an: _tan zu
|
||||
Specify first source point Geben Sie den ersten Quellpunkt an
|
||||
Specify height Geben Sie die Höhe an
|
||||
Specify helix height or Geben Sie die Höhe der Helix an oder
|
||||
Specify included angle Geben Sie den eingeschlossenen Winkel an
|
||||
Specify insertion base point Geben Sie den Einfügebasispunkt an
|
||||
Specify insertion point Geben Sie den Einfügepunkt an
|
||||
Specify inside diameter of donut Geben Sie den Innendurchmesser des Rings an
|
||||
Specify leader arrowhead location Geben Sie die Position der Pfeilspitze der Führungslinie an
|
||||
Specify leader endpoint Geben Sie den Endpunkt der Führungslinie an
|
||||
Specify leader landing location Geben Sie die Position des Führungslinienabsatzes an
|
||||
Specify length for rectangles Geben Sie die Länge für Rechtecke an
|
||||
Specify length of chord Geben Sie die Länge der Sehne an
|
||||
Specify length of segment Geben Sie die Länge des Segments an
|
||||
Specify line width for rectangles Geben Sie die Linienbreite für Rechtecke an
|
||||
Specify location for new vertex Geben Sie die Position des neuen Scheitelpunkts an
|
||||
Specify minimum length of arc Geben Sie die minimale Länge des Bogens an
|
||||
Specify new end point Geben Sie den neuen Endpunkt an
|
||||
Specify new location for marked vertex Geben Sie die neue Position des markierten Scheitelpunkts an
|
||||
Specify new width for all segments Geben Sie die neue Breite für alle Segmente an
|
||||
Specify next point Geben Sie den nächsten Punkt an
|
||||
Specify offset distance Geben Sie den Versatzabstand an
|
||||
Specify offset distance or Geben Sie den Versatzabstand an oder
|
||||
Specify opposite corner Geben Sie die gegenüberliegende Ecke an
|
||||
Specify other corner point Geben Sie den anderen Eckpunkt an
|
||||
Specify other endpoint of axis Geben Sie den anderen Endpunkt der Achse an
|
||||
Specify outside diameter of donut Geben Sie den Außendurchmesser des Rings an
|
||||
Specify point Geben Sie einen Punkt an
|
||||
Specify point on object for first tangent of circle Geben Sie einen Punkt auf dem Objekt für die erste Tangente des Kreises an
|
||||
Specify point on object for second tangent of circle Geben Sie einen Punkt auf dem Objekt für die zweite Tangente des Kreises an
|
||||
Specify point on side to offset Geben Sie einen Punkt auf der Seite des Versatzes an
|
||||
Specify radius of arc Geben Sie den Radius des Bogens an
|
||||
Specify radius of circle Geben Sie den Radius des Kreises an
|
||||
Specify rotation angle Geben Sie den Drehwinkel an
|
||||
Specify rotation angle of text Geben Sie den Drehwinkel des Textes an
|
||||
Specify rotation angle or Geben Sie den Drehwinkel an oder
|
||||
Specify scale factor Geben Sie den Skalierfaktor an
|
||||
Specify second angle endpoint Geben Sie den zweiten Endpunkt des Winkels an
|
||||
Specify second break point Geben Sie den zweiten Unterbrechungspunkt an
|
||||
Specify second chamfer distance for rectangles Geben Sie den zweiten Fasenabstand für Rechtecke an
|
||||
Specify second constraint point Geben Sie den zweiten Abhängigkeitspunkt an
|
||||
Specify second destination point Geben Sie den zweiten Zielpunkt an
|
||||
Specify second end point of circle's diameter Geben Sie den zweiten Endpunkt des Kreisdurchmessers an
|
||||
Specify second endpoint of edge Geben Sie den zweiten Endpunkt der Kante an
|
||||
Specify second extension line origin Geben Sie den Ursprung der zweiten Hilfslinie an
|
||||
Specify second point Geben Sie den zweiten Punkt an
|
||||
Specify second point of arc Geben Sie den zweiten Punkt des Bogens an
|
||||
Specify second point of mirror line Geben Sie den zweiten Punkt der Spiegellinie an
|
||||
Specify second point on circle Geben Sie den zweiten Punkt auf dem Kreis an
|
||||
Specify second point on circle: _tan to Geben Sie den zweiten Punkt auf dem Kreis an: _tan zu
|
||||
Specify second point or <use first point as displacement> Geben Sie den zweiten Punkt an oder <ersten Punkt als Verschiebung verwenden>
|
||||
Specify second source point Geben Sie den zweiten Quellpunkt an
|
||||
Specify side to offset Geben Sie die Seite für den Versatz an
|
||||
Specify start angle Geben Sie den Startwinkel an
|
||||
Specify start point Geben Sie den Startpunkt an
|
||||
Specify start point of arc Geben Sie den Startpunkt des Bogens an
|
||||
Specify start point of polyline Geben Sie den Startpunkt der Polylinie an
|
||||
Specify start point of text Geben Sie den Startpunkt des Textes an
|
||||
Specify starting width Geben Sie die Startbreite an
|
||||
Specify starting width for next segment Geben Sie die Startbreite des nächsten Segments an
|
||||
Specify tangent direction for the start point of arc Geben Sie die Tangentenrichtung für den Startpunkt des Bogens an
|
||||
Specify the elevation for rectangles Geben Sie die Höhenlage für Rechtecke an
|
||||
Specify thickness for rectangles Geben Sie die Stärke für Rechtecke an
|
||||
Specify third point on circle Geben Sie den dritten Punkt auf dem Kreis an
|
||||
Specify third point on circle: _tan to Geben Sie den dritten Punkt auf dem Kreis an: _tan zu
|
||||
Specify third source point or <continue> Geben Sie den dritten Quellpunkt an oder <fortfahren>
|
||||
Specify through point Geben Sie den Durchgangspunkt an
|
||||
Specify top diameter Geben Sie den oberen Durchmesser an
|
||||
Specify top radius or Geben Sie den oberen Radius an oder
|
||||
Specify total angle Geben Sie den Gesamtwinkel an
|
||||
Specify total length or Geben Sie die Gesamtlänge an oder
|
||||
Specify width for rectangles Geben Sie die Breite für Rechtecke an
|
||||
Sphere Kugel
|
||||
Spline Spline
|
||||
Stack (type 1/2 then select) Bruch (1/2 eingeben, dann auswählen)
|
||||
Standard Standard
|
||||
Start Start
|
||||
Start Width Startbreite
|
||||
Start X Start X
|
||||
Start Y Start Y
|
||||
Start angle Startwinkel
|
||||
Start, Center, Angle Start, Zentrum, Winkel
|
||||
Start, Center, End Start, Zentrum, Ende
|
||||
Start, Center, Length Start, Zentrum, Länge
|
||||
Start, End, Angle Start, Ende, Winkel
|
||||
Start, End, Direction Start, Ende, Richtung
|
||||
Start, End, Radius Start, Ende, Radius
|
||||
Status Status
|
||||
Status Bar Statusleiste
|
||||
Stretch Strecken
|
||||
Style: Standard Stil: Standard
|
||||
Subtract Subtrahieren
|
||||
Sweep Sweep
|
||||
Switch Drawing Zeichnung wechseln
|
||||
Switch Layout Layout wechseln
|
||||
Switch between model space in a viewport and paper space Zwischen Modellbereich in einem Ansichtsfenster und Papierbereich wechseln
|
||||
Symmetric Symmetrisch
|
||||
Synchronize Attributes Attribute synchronisieren
|
||||
Toggle PICKADD (off: each pick replaces the selection) PICKADD umschalten (aus: jede Auswahl ersetzt die bisherige Auswahl)
|
||||
Toggle PICKADD (on: picks add to the selection) PICKADD umschalten (ein: Auswahl wird zur bisherigen Auswahl hinzugefügt)
|
||||
TOP OBEN
|
||||
Table Tabelle
|
||||
Table Style... Tabellenstil...
|
||||
Table style Tabellenstil
|
||||
Table... Tabelle...
|
||||
Tan, Tan, Radius Tan, Tan, Radius
|
||||
Tan, Tan, Tan Tan, Tan, Tan
|
||||
Tangent Tangente
|
||||
Text Text
|
||||
Text Editor Texteditor
|
||||
Text Height Texthöhe
|
||||
Text Style... Textstil...
|
||||
Text height Texthöhe
|
||||
Text override Textübersteuerung
|
||||
Text style Textstil
|
||||
Thaw All Layers Alle Layer tauen
|
||||
There is nothing here yet. Hier gibt es noch nichts.
|
||||
Thickness Stärke
|
||||
Time Zeit
|
||||
To get started, create or open a drawing. Erstellen oder öffnen Sie eine Zeichnung, um zu beginnen.
|
||||
Tool Bar Werkzeugleiste
|
||||
Tool Sets Werkzeuggruppen
|
||||
Tools Werkzeuge
|
||||
Torus Torus
|
||||
Trace Spur
|
||||
Transparency Transparenz
|
||||
Trim Stutzen
|
||||
True Color True Color
|
||||
Turn All Layers On Alle Layer einschalten
|
||||
Turn Off Layer Layer ausschalten
|
||||
Turn Quick Properties off (QPMODE) Schnelleigenschaften ausschalten (QPMODE)
|
||||
Type Typ
|
||||
Type a command Befehl eingeben
|
||||
Type text; Enter starts a new paragraph Text eingeben; Eingabetaste beginnt einen neuen Absatz
|
||||
UCS Icon BKS-Symbol
|
||||
Undo Rückgängig
|
||||
Undo (⌘Z) Rückgängig (⌘Z)
|
||||
Ungroup Gruppierung aufheben
|
||||
Union Vereinigungsmenge
|
||||
Unisolate Layer Layer-Isolierung aufheben
|
||||
Units... Einheiten...
|
||||
Unlock Layer Layer entsperren
|
||||
Unmerge Cells Zellen trennen
|
||||
Unsaved Layer State Ungespeicherter Layerstatus
|
||||
Up Nach oben
|
||||
Update Aktualisieren
|
||||
Use System Setting Systemeinstellung verwenden
|
||||
User Benutzer
|
||||
User Parameters Benutzerparameter
|
||||
Username Benutzername
|
||||
VP Color AF-Farbe
|
||||
VP Freeze AF-Frieren
|
||||
Value Wert
|
||||
Value: Wert:
|
||||
Version Version
|
||||
Version {version} Version {version}
|
||||
Vertical Vertikal
|
||||
VerticalDistance Vertikaler Abstand
|
||||
View Ansicht
|
||||
ViewCube ViewCube
|
||||
Viewport Ansichtsfenster
|
||||
Viewport Layer Freeze Layer im Ansichtsfenster frieren
|
||||
Viewport Properties Ansichtsfenster-Eigenschaften
|
||||
Viewport {id} Ansichtsfenster {id}
|
||||
Viewports Ansichtsfenster
|
||||
W W
|
||||
WCS ⌄ WKS ⌄
|
||||
White Weiß
|
||||
Width factor Breitenfaktor
|
||||
Window Fenster
|
||||
Wipeout Abdeckung
|
||||
Workspace Switching Arbeitsbereich wechseln
|
||||
Write Block Block in Datei schreiben
|
||||
Xline Konstruktionslinie
|
||||
Yellow Gelb
|
||||
Yes Ja
|
||||
Zoom Zoom
|
||||
Zoom All Zoom Alles
|
||||
Zoom Extents Zoom Grenzen
|
||||
Zoom In Zoom Ein
|
||||
Zoom Object Zoom Objekt
|
||||
Zoom Out Zoom Aus
|
||||
Zoom Previous Zoom Zurück
|
||||
Zoom Window Zoom Fenster
|
||||
error Fehler
|
||||
{contributors} · {commits} {contributors} · {commits}
|
||||
{kind} (constraint {id}) {kind} (Abhängigkeit {id})
|
||||
{kind} constraint {name} = {expression} (double-click to edit) Abhängigkeit {kind} {name} = {expression} (Doppelklick zum Bearbeiten)
|
||||
{name}: {distance} < {angle}° {name}: {distance} < {angle}°
|
||||
ƒx New User Parameter ƒx Neuer Benutzerparameter
|
||||
ΔLOC ΔZeilen
|
||||
−Bin −Binär
|
||||
−LOC −Zeilen
|
||||
⌘↩ to finish ⌘↩ zum Abschließen
|
||||
@plural {n} commit {n} Commit|{n} Commits
|
||||
@plural {n} contributor {n} Mitwirkender|{n} Mitwirkende
|
||||
Drawing as bytes Zeichnung als Bytes
|
||||
Services Dienste
|
||||
Hide CADCraft CADCraft ausblenden
|
||||
Hide Others Andere ausblenden
|
||||
Accessibility Bedienungshilfen
|
||||
Show System Cursor Systemzeiger anzeigen
|
||||
|
@@ -19,10 +19,12 @@ pub enum Preference {
|
||||
Ukrainian,
|
||||
#[serde(rename = "pt-BR")]
|
||||
BrazilianPortuguese,
|
||||
#[serde(rename = "de")]
|
||||
German,
|
||||
}
|
||||
|
||||
impl Preference {
|
||||
pub const ALL: [Self; 4] = [Self::Auto, Self::English, Self::Ukrainian, Self::BrazilianPortuguese];
|
||||
pub const ALL: [Self; 5] = [Self::Auto, Self::English, Self::Ukrainian, Self::BrazilianPortuguese, Self::German];
|
||||
|
||||
/// The codes a preference can be given as, for messages ("auto, en or uk").
|
||||
pub fn codes() -> String {
|
||||
@@ -39,6 +41,7 @@ impl Preference {
|
||||
Self::English => "en",
|
||||
Self::Ukrainian => "uk",
|
||||
Self::BrazilianPortuguese => "pt-BR",
|
||||
Self::German => "de",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -48,6 +51,7 @@ impl Preference {
|
||||
Self::English => "English",
|
||||
Self::Ukrainian => "Українська",
|
||||
Self::BrazilianPortuguese => "Português (Brasil)",
|
||||
Self::German => "Deutsch",
|
||||
}
|
||||
}
|
||||
|
||||
@@ -65,6 +69,7 @@ impl Preference {
|
||||
Self::English => "en",
|
||||
Self::Ukrainian => "uk",
|
||||
Self::BrazilianPortuguese => "pt-BR",
|
||||
Self::German => "de",
|
||||
Self::Auto => locales.iter().find_map(|s| locale_language(s)).unwrap_or("en"),
|
||||
}
|
||||
}
|
||||
@@ -81,7 +86,7 @@ pub struct Language {
|
||||
catalog: OnceLock<Catalog<'static>>,
|
||||
}
|
||||
|
||||
pub static LANGUAGES: [Language; 3] = [
|
||||
pub static LANGUAGES: [Language; 4] = [
|
||||
Language { code: "en", name: "English", source: "", plural: plural_en, plural_forms: 2, catalog: OnceLock::new() },
|
||||
Language {
|
||||
code: "uk", name: "Українська", source: include_str!("uk.tsv"), plural: plural_uk, plural_forms: 3, catalog: OnceLock::new()
|
||||
@@ -94,6 +99,8 @@ pub static LANGUAGES: [Language; 3] = [
|
||||
plural_forms: 2,
|
||||
catalog: OnceLock::new(),
|
||||
},
|
||||
// German plurals follow the English rule: one (1), other.
|
||||
Language { code: "de", name: "Deutsch", source: include_str!("de.tsv"), plural: plural_en, plural_forms: 2, catalog: OnceLock::new() },
|
||||
];
|
||||
|
||||
/// BCP 47 and POSIX locale tags, including `uk-UA`, `uk_UA.UTF-8` and `pt_BR.UTF-8`.
|
||||
|
||||
@@ -39,7 +39,7 @@ fn catalog_is_valid_and_preserves_placeholders_and_ellipses() {
|
||||
/// to English for what they don't cover yet; their gaps are reported, not enforced, so adding a
|
||||
/// command doesn't require a row in every language.
|
||||
const REQUIRED: &[&str] = &["uk"];
|
||||
const REPORTED: &[&str] = &["pt-BR"];
|
||||
const REPORTED: &[&str] = &["pt-BR", "de"];
|
||||
|
||||
fn check(language: &str, what: &str, missing: Vec<String>) {
|
||||
if REQUIRED.contains(&language) {
|
||||
@@ -142,6 +142,9 @@ fn locale_and_saved_preference_resolution() {
|
||||
for tag in ["uk", "uk-UA", "uk_UA.UTF-8", "UK-ua", " uk-UA ", "uk_UA@euro"] {
|
||||
assert_eq!(locale_language(tag), Some("uk"), "{tag}");
|
||||
}
|
||||
for tag in ["de", "de-DE", "de_DE.UTF-8", "DE-at", "de-CH"] {
|
||||
assert_eq!(locale_language(tag), Some("de"), "{tag}");
|
||||
}
|
||||
for tag in ["ua", "ukulele", "ru-RU", "", "garbage", "💙"] {
|
||||
assert_eq!(locale_language(tag), None, "{tag}");
|
||||
}
|
||||
@@ -155,6 +158,8 @@ fn locale_and_saved_preference_resolution() {
|
||||
let locales = vec!["pl-PL".into(), "uk-UA".into(), "en-US".into()];
|
||||
assert_eq!(Preference::Auto.resolve(&locales), "uk");
|
||||
assert_eq!(Preference::English.resolve(&locales), "en");
|
||||
assert_eq!(Preference::German.resolve(&locales), "de");
|
||||
assert_eq!(Preference::Auto.resolve(&["de-DE".into(), "en-US".into()]), "de");
|
||||
assert_eq!(Preference::Auto.resolve(&["en-US".into(), "uk-UA".into()]), "en");
|
||||
assert_eq!(Preference::Auto.resolve(&[]), "en");
|
||||
assert_eq!(Preference::restore(None), Preference::Auto);
|
||||
@@ -205,6 +210,12 @@ fn plural_forms_and_templates_preserve_inserted_user_data() {
|
||||
assert_eq!(format("{b}/{a}", &[("a", "А".into()), ("b", "Б".into())]), "Б/А");
|
||||
});
|
||||
assert_eq!(t("Layers"), "Layers");
|
||||
with_language("de", || {
|
||||
assert_eq!(t("Layers"), "Layer");
|
||||
assert_eq!(count(1, "{n} contributor", "{n} contributors"), "1 Mitwirkender");
|
||||
assert_eq!(count(2, "{n} contributor", "{n} contributors"), "2 Mitwirkende");
|
||||
assert_eq!(count(11, "{n} contributor", "{n} contributors"), "11 Mitwirkende");
|
||||
});
|
||||
with_language("uk", || {
|
||||
assert_eq!(t("Layers"), "Шари");
|
||||
with_language("en", || assert_eq!(t("Layers"), "Layers"));
|
||||
@@ -338,6 +349,22 @@ fn dialogs_render_in_ukrainian_and_keep_their_source_ids() {
|
||||
}
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn default_fonts_cover_every_german_special_letter_in_the_catalog() {
|
||||
let ctx = egui::Context::default();
|
||||
let mut output = ctx.run_ui(Default::default(), |_| {});
|
||||
output.textures_delta.clear();
|
||||
let letters: BTreeSet<_> = include_str!("de.tsv").chars().filter(|c| ('\u{00c0}'..='\u{00ff}').contains(c)).collect();
|
||||
ctx.fonts_mut(|view| {
|
||||
for family in [egui::FontFamily::Proportional, egui::FontFamily::Monospace] {
|
||||
let mut font = view.fonts.font(&family);
|
||||
for c in &letters {
|
||||
assert!(font.characters().contains_key(c), "missing {c} in {family:?}");
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
#[test]
|
||||
fn default_fonts_cover_every_ukrainian_letter_in_the_catalog() {
|
||||
let ctx = egui::Context::default();
|
||||
|
||||
@@ -22,7 +22,7 @@ About 57,000 lines of Rust in 12 library crates, 3 apps and `xtask` (counted 202
|
||||
| L3 | `io` | 5,124 | DXF ⇄ document mapping (`dxf_read.rs`, `dxf_write.rs`, CADCraft xdata in `dxf_ext.rs`), PDF plotting, SVG and PNG export |
|
||||
| L3 | `dwg` | 149 | DWG through a DXF bridge: the `acadrust` crate (MPL-2.0, unmodified) converts DWG ⇄ DXF bytes; nothing else sees its types. Native only |
|
||||
| L4 | `engine` | 25,090 | `Session`, the command registry (`cmd/*`), command-line parser and prompt machines, object snaps and polar/ortho (`snap.rs`), selection (`select.rs`), grips (`grips.rs`), associativity (`assoc.rs`), system variables, units, undo, R-tree spatial index (`spatial.rs`) |
|
||||
| L5 | `ui-egui` | 9,849 | The swappable egui front end: GPU canvas (`gpu.rs`, wgpu), menus and shortcuts (`menus.rs`), command line, palettes, Layer Properties Manager and other dialogs, ViewCube, icons drawn in code, themes, the interface string catalog (`i18n/`, English and Ukrainian), JSON control channel (`control.rs`) |
|
||||
| L5 | `ui-egui` | 9,849 | The swappable egui front end: GPU canvas (`gpu.rs`, wgpu), menus and shortcuts (`menus.rs`), command line, palettes, Layer Properties Manager and other dialogs, ViewCube, icons drawn in code, themes, the interface string catalog (`i18n/`, English, Ukrainian and German), JSON control channel (`control.rs`) |
|
||||
| L5 | `mcp` | 559 | MCP server (JSON-RPC 2.0 over stdio) on a headless session or bridged to a running app |
|
||||
| app | `cadcraft` | 1,102 | Desktop app (eframe/wgpu; DirectX 12 by default on Windows) |
|
||||
| app | `cadcraft-cli` | 823 | `info`, `convert`, `run` (scripts), `commands`, `sample`, `mcp` |
|
||||
|
||||
@@ -115,7 +115,7 @@ Select a language with `engine.execute` and the UI command `ui.language`:
|
||||
{"id":1,"method":"engine.execute","params":{"command":"ui.language","params":{"lang":"uk"}}}
|
||||
```
|
||||
|
||||
Supported values are `auto`, `en` and `uk`. `ui.set` also accepts
|
||||
Supported values are `auto`, `en`, `uk` and `de`. `ui.set` also accepts
|
||||
`{"interfaceLanguage":"uk"}`; `ui.inspect` reports the saved choice in its UI state.
|
||||
Invalid choices leave the current language unchanged. Menus, command labels and prompt text
|
||||
returned by the control channel retain their English source text. See [localization.md](localization.md).
|
||||
+4
-3
@@ -1,6 +1,6 @@
|
||||
# Where CADCraft falls short of AutoCAD
|
||||
|
||||
> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-11 · **Change:** minor (SPLINE, MTEXT and MLEADER prompt options landed, #408: top-10 row 5, F1 and F10 narrowed) · **Target:** Autodesk AutoCAD 2027
|
||||
> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-11 · **Change:** minor (German catalog landed, L2 narrowed; SPLINE, MTEXT and MLEADER prompt options landed, #408: top-10 row 5, F1 and F10 narrowed) · **Target:** Autodesk AutoCAD 2027
|
||||
|
||||
Every known shortfall, one row each, ranked within each section by user impact. This is the work
|
||||
list: agents pick from here (top of a section first), and remove or update a row in the same PR
|
||||
@@ -108,8 +108,8 @@ Detail: [localization-parity.md](localization-parity.md).
|
||||
|
||||
| # | Gap | Est. |
|
||||
|---|---|---|
|
||||
| L1 | Catalog covers the UI (936 rows, #36) but not engine diagnostics, CLI/MCP replies or command history | 4–6 |
|
||||
| L2 | AutoCAD for Mac's 7 other languages (zh-Hans, es, fr, ja, de, ko, it) plus pt, hi, ar, id, vi from the standard's list | 40–60 + native review |
|
||||
| L1 | Catalog covers the UI (989 rows, #36) but not engine diagnostics, CLI/MCP replies or command history | 4–6 |
|
||||
| L2 | AutoCAD for Mac's other languages (zh-Hans, es, fr, ja, ko, it; de landed 2026-10-11) plus pt, hi, ar, id, vi from the standard's list | 35–55 + native review |
|
||||
| L3 | Complex-script shaping for Devanagari and other Indic scripts in drawing text; RTL (mirrored) UI. Arabic-script shaping and bidi in drawing text landed (#287) | 20–30 |
|
||||
| L4 | IME fixes on every platform (PRs #110–#119); vertical text styles | 6–10 |
|
||||
|
||||
@@ -154,6 +154,7 @@ Detail: [localization-parity.md](localization-parity.md).
|
||||
|
||||
| Date | Change | Summary |
|
||||
|---|---|---|
|
||||
| 2026-10-11 | minor | German interface catalog landed: L1 row count 936 → 989, L2 narrowed (de done; 40–60 → 35–55 h) |
|
||||
| 2026-10-11 | minor | SPLINE Knots/Tangency/toLerance/Object, MTEXT Height/Justify/Line spacing/Rotation/Style/Width/Columns, MLEADER spline and no-leader types and block content landed (#408): top-10 row 5, F1 and F10 narrowed |
|
||||
| 2026-10-11 | minor | Object snap tracking, Extension, Parallel and true Apparent Intersection landed (#379): top-10 row 3 and U1 narrowed to the leftovers |
|
||||
| 2026-10-10 | minor | Merged main: closed or narrowed rows for the Ukrainian catalog, UNITS dialog, shortcut display, dynamic input pointer boxes, press-drag windows, SETVAR DIM*, WIPEOUT and gradients, fmt |
|
||||
|
||||
+12
-10
@@ -1,6 +1,6 @@
|
||||
# Localization parity
|
||||
|
||||
> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-10 · **Change:** minor (right-to-left drawing text and Arabic-script shaping, #287) · **Target:** Autodesk AutoCAD 2027 for Mac (26.0)
|
||||
> **Last reviewed:** 2026-10-10 · **Last updated:** 2026-10-11 · **Change:** minor (German catalog landed: second non-English language, per-language plural rules) · **Target:** Autodesk AutoCAD 2027 for Mac (26.0)
|
||||
|
||||
How far CADCraft's interface and drawing text are from AutoCAD's languages. Summarised in
|
||||
[ROADMAP.md](../ROADMAP.md#languages); work items in [gaps.md](gaps.md#localization).
|
||||
@@ -23,7 +23,8 @@ shaping and right-to-left text through TrueType, vertical SHX text styles.
|
||||
- **A display-time string catalog** (`crates/ui-egui/src/i18n/`, landed with #36): a TSV per
|
||||
language (context, English source, translation, `@plural` rows), Edit → Interface Language with
|
||||
Auto (system language), live switching, a saved choice, and tests for coverage, placeholders
|
||||
and plurals ([localization.md](localization.md)). The Ukrainian catalog has **936 rows**,
|
||||
and plurals ([localization.md](localization.md)). The Ukrainian and German catalogs have
|
||||
**989 rows** each,
|
||||
covering menus, command labels, tool groups and tooltips, the Start page, tabs, status
|
||||
controls, object snaps, drafting prompts, property labels and dialogs. Engine diagnostics,
|
||||
CLI/MCP responses and command history stay English, and uncatalogued text falls back to
|
||||
@@ -44,7 +45,7 @@ shaping and right-to-left text through TrueType, vertical SHX text styles.
|
||||
|
||||
Order and columns from craftrules' progress-docs standard. Every UI percentage is **measured**
|
||||
from the catalogs (0 rows for every language without a catalog file). Hours are **estimated**:
|
||||
about 3–5 h per language for an Opus 5.5 agent to translate the ~940 catalog rows and fix layout,
|
||||
about 3–5 h per language for an Opus 5.5 agent to translate the ~990 catalog rows and fix layout,
|
||||
plus native review by a human; extending the catalog to the remaining English-only strings
|
||||
(engine diagnostics, uncatalogued text) is about 4–6 h, counted once in the first row.
|
||||
|
||||
@@ -59,23 +60,24 @@ plus native review by a human; extending the catalog to the remaining English-on
|
||||
| Portuguese | pt | 0 (0%) | 0% | Latin: yes | no | none | 3–5 h |
|
||||
| Indonesian | id | 0 (0%) | 0% | Latin: yes | no | none | 3–5 h |
|
||||
| Japanese | ja | 0 (0%) | 0% | CJK glyphs render; IME pending; no vertical text | no | none | 4–6 h |
|
||||
| German | de | 0 (0%) | 0% | Latin: yes (long strings will need layout checks) | no | none | 3–5 h |
|
||||
| German | de | 989 catalog rows (≈ 100% of the catalog; ≈ 80% of all UI strings, estimated: engine diagnostics and uncatalogued text stay English) | dialogs and tooltips yes; command reference searchable in German | Latin: yes (bundled egui fonts cover ä ö ü Ä Ö Ü ß; long strings will need layout checks) | no native review | partial | 1–2 h |
|
||||
| Korean | ko | 0 (0%) | 0% | Hangul renders; macOS Korean IME fixes pending (#118, #119) | no | none | 4–6 h |
|
||||
| Vietnamese | vi | 0 (0%) | 0% | Latin with stacked diacritics: renders per code point, untested | no | none | 3–5 h |
|
||||
| Ukrainian | uk | 936 catalog rows (≈ 100% of the catalog; ≈ 80% of all UI strings, estimated: engine diagnostics and uncatalogued text stay English) | dialogs and tooltips yes; command reference searchable in Ukrainian | Cyrillic: yes (bundled egui fonts) | translated by a contributor; no second review | partial | 2–4 h |
|
||||
| Ukrainian | uk | 989 catalog rows (≈ 100% of the catalog; ≈ 80% of all UI strings, estimated: engine diagnostics and uncatalogued text stay English) | dialogs and tooltips yes; command reference searchable in Ukrainian | Cyrillic: yes (bundled egui fonts) | translated by a contributor; no second review | partial | 2–4 h |
|
||||
|
||||
Other languages shipped: Ukrainian (partial). AutoCAD for Mac ships 7 non-English languages
|
||||
(zh-Hans, es, fr, ja, de, ko, it); CADCraft ships none of those, and Ukrainian, which AutoCAD
|
||||
for Mac doesn't ship.
|
||||
Other languages shipped: Ukrainian, Brazilian Portuguese and German (all partial). AutoCAD for Mac ships 7
|
||||
non-English languages (zh-Hans, es, fr, ja, de, ko, it); of those, CADCraft now ships German,
|
||||
and additionally Ukrainian, which AutoCAD for Mac doesn't ship.
|
||||
|
||||
**Total to put all twelve at `full`:** about 60–100 Opus 5.5 hours (catalog extension 4–6 h,
|
||||
eleven translations 35–55 h, complex-script shaping and RTL 30–45 h), plus native-speaker review for
|
||||
**Total to put all twelve at `full`:** about 55–95 Opus 5.5 hours (catalog extension 4–6 h,
|
||||
ten translations 30–50 h, complex-script shaping and RTL 30–45 h), plus native-speaker review for
|
||||
each language, which needs humans. Translations parallelise fully once the catalog exists.
|
||||
|
||||
## Revision history
|
||||
|
||||
| Date | Change | Summary |
|
||||
|---|---|---|
|
||||
| 2026-10-11 | minor | German catalog landed: `de` preference and catalog, per-language plural rules; non-English languages 1 → 2; total hours 60–100 → 55–95 |
|
||||
| 2026-10-10 | minor | Right-to-left drawing text: bidi and Arabic-script shaping in TEXT and MTEXT (#287) |
|
||||
| 2026-10-10 | minor | Ukrainian catalog landed on main (#36): catalog infrastructure exists, Ukrainian partial; total hours 70–110 → 60–100 |
|
||||
| 2026-10-10 | major | First localization measurement against AutoCAD 2027 for Mac's bundle localizations |
|
||||
+19
-2
@@ -1,6 +1,8 @@
|
||||
# Interface languages
|
||||
|
||||
Choose **Edit → Interface Language** and select **Auto (system language)**, **English**,
|
||||
**Українська**, or **Deutsch**. The interface updates without restarting, including the native
|
||||
macOS menus.
|
||||
**Українська**, or **Português (Brasil)**. The interface updates without restarting, including the native macOS menus.
|
||||
The choice is saved with the other interface preferences (`cadcraft.prefs`, beside the theme):
|
||||
eframe storage on the desktop, browser local storage on the web. Installations without a saved
|
||||
@@ -8,6 +10,10 @@ choice use Auto.
|
||||
|
||||
Auto uses the first supported language in the operating system's preferred locales, or the
|
||||
browser's `navigator.languages` on the web. Ukrainian tags such as `uk-UA` and `uk_UA.UTF-8`
|
||||
resolve to `uk`, German tags such as `de-DE` and `de_AT.UTF-8` resolve to `de`; unsupported
|
||||
languages fall back to English. Set `CADCRAFT_LOCALE=uk-UA` to
|
||||
override the desktop's locale for a launch. An explicit saved English, Ukrainian or German
|
||||
choice takes precedence over that override.
|
||||
resolve to `uk`, and Portuguese tags such as `pt-BR` and `pt_BR.UTF-8` resolve to `pt-BR`;
|
||||
unsupported languages fall back to English. Set `CADCRAFT_LOCALE=uk-UA` to
|
||||
override the desktop's locale for a launch. An explicit saved English, Ukrainian or Brazilian Portuguese choice
|
||||
@@ -20,11 +26,17 @@ Automation can select the language through the existing control channel:
|
||||
```
|
||||
|
||||
The `ui.set` method also accepts `{"interfaceLanguage":"uk"}`. Supported values are `auto`,
|
||||
`en`, `uk`, and `de`; invalid values are rejected without changing the current selection.
|
||||
Resetting palettes keeps the language choice.
|
||||
`en`, `uk`, and `pt-BR`; invalid values are rejected without changing the current selection. Resetting
|
||||
palettes keeps the language choice.
|
||||
|
||||
## Translation coverage
|
||||
|
||||
Ukrainian and German cover command and menu labels, tool groups and tooltips, the Start page,
|
||||
file and model-space tabs, status controls, object snaps, drafting prompts, property labels,
|
||||
dialogs, and the About window's controls. The command reference can be searched by English
|
||||
command ID, English label, or translated label.
|
||||
The Ukrainian and Brazilian Portuguese catalogs cover command and menu labels, tool groups and tooltips, the Start page, file and
|
||||
model-space tabs, status controls, object snaps, drafting prompts, property labels, dialogs,
|
||||
and the About window's controls. The command reference can be searched by English command
|
||||
@@ -37,8 +49,9 @@ by the engine. CLI/MCP/control responses, engine diagnostics and command history
|
||||
English. Uncatalogued text also falls back to English. Number formatting and the operating
|
||||
system's own file-picker controls follow the existing behavior.
|
||||
|
||||
The bundled egui fonts cover Ukrainian, including `Ґґ Єє Іі Її`; the translation adds no font
|
||||
assets and works on the web without system fonts.
|
||||
The bundled egui fonts cover Ukrainian, including `Ґґ Єє Іі Її`, and German, including
|
||||
`ÄÖÜ äöü ß`; the translations add no font
|
||||
assets and work on the web without system fonts.
|
||||
|
||||
## Adding translations
|
||||
|
||||
@@ -47,8 +60,12 @@ The implementation follows the display-time catalog pattern used by
|
||||
[PdfCraft #106](https://github.com/storytold/pdfcraft/pull/106), and
|
||||
[FilmCraft #238](https://github.com/storytold/filmcraft/pull/238). Its code is local to CADCraft.
|
||||
|
||||
- `crates/ui-egui/src/i18n/uk.tsv` and `crates/ui-egui/src/i18n/de.tsv` are UTF-8 with three
|
||||
tab-separated columns:
|
||||
- `crates/ui-egui/src/i18n/uk.tsv` and `pt_br.tsv` are UTF-8 with three tab-separated columns:
|
||||
`context`, `English source`, and `translation`. Ordinary labels have an empty context.
|
||||
`@plural` entries hold Ukrainian `one|few|many` forms for integer counts; German uses
|
||||
`one|other|other` (singular/plural only, so the third form repeats the plural).
|
||||
`@plural` entries hold the language's plural forms for integer counts: Ukrainian
|
||||
`one|few|many`, Brazilian Portuguese `one|other` (0 and 1 are `one`).
|
||||
- Register a new catalog in `i18n::LANGUAGES`, add its preference variant and code/name,
|
||||
|
||||
+1
-1
@@ -86,7 +86,7 @@ agents that built each milestone, are in the progress log of [ROADMAP.md](../ROA
|
||||
| M10 | Performance: 1M entities at 60 fps, large DWG loads | ≈ 60% (internal numbers only) | 20–40 |
|
||||
| M11 | 3D: UCS, orbit, visual styles, solids, surfaces, meshes, sections, rendering | ≈ 2% | 300–450 |
|
||||
| M12 | Automation: AutoLISP, SCRIPT, action recorder, sheet sets, Express Tools | ≈ 15% (MCP, CLI, control channel done) | 130–220 |
|
||||
| M13 | 1.0 polish: preferences, workspaces, localisation, accessibility, signed packages, docs | ≈ 15% (signed packages for every platform exist; themes done; string catalog with Ukrainian, live language switching, #36) | 110–170 |
|
||||
| M13 | 1.0 polish: preferences, workspaces, localisation, accessibility, signed packages, docs | ≈ 15% (signed packages for every platform exist; themes done; string catalog with Ukrainian and German, live language switching, #36) | 110–170 |
|
||||
| — | Geometry precision (cross-cutting, see [geometry-parity.md](geometry-parity.md)) | ≈ 40% | 70–110 |
|
||||
| — | AI features | ≈ 0% in-app | 40–80 |
|
||||
| | **Remaining to full parity** | | **≈ 1,300–2,100** |
|
||||
|
||||
Reference in new issue
Block a user