de.ts 183 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430
  1. export default {
  2. // Navigation
  3. nav: {
  4. printers: 'Drucker',
  5. archives: 'Archiv',
  6. queue: 'Warteschlange',
  7. stats: 'Statistiken',
  8. profiles: 'Profile',
  9. maintenance: 'Wartung',
  10. projects: 'Projekte',
  11. inventory: 'Filament',
  12. files: 'Dateimanager',
  13. settings: 'Einstellungen',
  14. system: 'System',
  15. collapseSidebar: 'Seitenleiste einklappen',
  16. expandSidebar: 'Seitenleiste ausklappen',
  17. update: 'Update',
  18. updateAvailable: 'Update verfügbar: v{{version}}',
  19. updateAvailableBanner: 'Version {{version}} ist verfügbar!',
  20. viewUpdate: 'Update anzeigen',
  21. viewOnGithub: 'Auf GitHub ansehen',
  22. keyboardShortcuts: 'Tastaturkürzel (?)',
  23. switchToLight: 'Zum hellen Modus wechseln',
  24. switchToDark: 'Zum dunklen Modus wechseln',
  25. smartSwitches: 'Smart Switches',
  26. logout: 'Abmelden',
  27. },
  28. // Common
  29. common: {
  30. save: 'Speichern',
  31. saving: 'Speichern...',
  32. cancel: 'Abbrechen',
  33. delete: 'Löschen',
  34. edit: 'Bearbeiten',
  35. add: 'Hinzufügen',
  36. close: 'Schließen',
  37. confirm: 'Bestätigen',
  38. loading: 'Lädt...',
  39. error: 'Fehler',
  40. success: 'Erfolg',
  41. warning: 'Warnung',
  42. enabled: 'Aktiviert',
  43. disabled: 'Deaktiviert',
  44. yes: 'Ja',
  45. no: 'Nein',
  46. on: 'An',
  47. off: 'Aus',
  48. all: 'Alle',
  49. none: 'Keine',
  50. search: 'Suchen',
  51. filter: 'Filtern',
  52. sort: 'Sortieren',
  53. refresh: 'Aktualisieren',
  54. download: 'Herunterladen',
  55. upload: 'Hochladen',
  56. uploading: 'Hochladen...',
  57. uploadFailed: 'Hochladen fehlgeschlagen',
  58. actions: 'Aktionen',
  59. status: 'Status',
  60. name: 'Name',
  61. description: 'Beschreibung',
  62. date: 'Datum',
  63. time: 'Zeit',
  64. hours: 'Stunden',
  65. minutes: 'Minuten',
  66. seconds: 'Sekunden',
  67. days: 'Tage',
  68. enable: 'Aktivieren',
  69. disable: 'Deaktivieren',
  70. permissions: 'Berechtigungen',
  71. noPrinters: 'Keine Drucker konfiguriert',
  72. noData: 'Keine Daten verfügbar',
  73. linkNotFound: 'Link nicht gefunden',
  74. required: 'Erforderlich',
  75. optional: 'Optional',
  76. dismiss: 'Schließen',
  77. apply: 'Anwenden',
  78. reset: 'Zurücksetzen',
  79. export: 'Exportieren',
  80. import: 'Importieren',
  81. clear: 'Leeren',
  82. selectAll: 'Alle auswählen',
  83. deselectAll: 'Auswahl aufheben',
  84. noChange: '— Keine Änderung —',
  85. unchanged: 'Unverändert',
  86. unassigned: 'Nicht zugewiesen',
  87. unknown: 'Unbekannt',
  88. unknownError: 'Unbekannter Fehler',
  89. today: 'Heute',
  90. tomorrow: 'Morgen',
  91. asap: 'Sofort',
  92. overdue: 'Überfällig',
  93. now: 'Jetzt',
  94. collapse: 'Einklappen',
  95. expand: 'Ausklappen',
  96. viewArchive: 'Archiv anzeigen',
  97. viewInFileManager: 'Im Dateimanager anzeigen',
  98. addedBy: 'Hinzugefügt von {{username}}',
  99. prints: 'Drucke',
  100. more: '+{{count}} weitere',
  101. ascending: 'Aufsteigend',
  102. descending: 'Absteigend',
  103. printer: 'Drucker',
  104. remove: 'Entfernen',
  105. type: 'Typ',
  106. print: 'Drucken',
  107. rename: 'Umbenennen',
  108. move: 'Verschieben',
  109. create: 'Erstellen',
  110. duplicate: 'Duplizieren',
  111. left: 'Links',
  112. right: 'Rechts',
  113. },
  114. // Printers page
  115. printers: {
  116. title: 'Drucker',
  117. addPrinter: 'Drucker hinzufügen',
  118. editPrinter: 'Drucker bearbeiten',
  119. deletePrinter: 'Drucker löschen',
  120. printerName: 'Druckername',
  121. serialNumber: 'Seriennummer',
  122. ipAddress: 'IP-Adresse / Hostname',
  123. accessCode: 'Zugangscode',
  124. model: 'Modell',
  125. nozzleCount: 'Düsenanzahl',
  126. autoArchive: 'Automatische Archivierung',
  127. status: {
  128. available: 'Verfügbar',
  129. idle: 'Bereit',
  130. printing: 'Druckt',
  131. paused: 'Pausiert',
  132. offline: 'Offline',
  133. error: 'Fehler',
  134. finished: 'Fertig',
  135. unknown: 'Unbekannt',
  136. },
  137. temperatures: {
  138. nozzle: 'Düse',
  139. bed: 'Druckbett',
  140. chamber: 'Kammer',
  141. },
  142. progress: '{{percent}}% abgeschlossen',
  143. timeRemaining: 'Noch {{time}}',
  144. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  145. maintenanceOk: 'Wartung OK',
  146. maintenanceWarning: '{{count}} Warnung',
  147. maintenanceWarning_plural: '{{count}} Warnungen',
  148. maintenanceDue: '{{count}} fällig',
  149. maintenanceDue_plural: '{{count}} fällig',
  150. // Sort options
  151. sort: {
  152. name: 'Name',
  153. status: 'Status',
  154. model: 'Modell',
  155. location: 'Standort',
  156. ascending: 'Aufsteigend sortieren',
  157. descending: 'Absteigend sortieren',
  158. },
  159. // Card size
  160. cardSize: {
  161. small: 'Kleine Karten',
  162. medium: 'Mittlere Karten',
  163. large: 'Große Karten',
  164. extraLarge: 'Extra große Karten',
  165. },
  166. // Controls
  167. hideOffline: 'Offline ausblenden',
  168. nextAvailable: 'Nächster verfügbar',
  169. powerOn: 'Einschalten',
  170. offlinePrintersWithPlugs: 'Offline-Drucker mit Smart-Plugs',
  171. noPrintersConfigured: 'Noch keine Drucker konfiguriert',
  172. // Printer card
  173. readyToPrint: 'Druckbereit',
  174. external: 'Extern',
  175. extL: 'Ext-L',
  176. extR: 'Ext-R',
  177. deleteArchives: 'Druckarchive löschen',
  178. noLabel: 'Keine Bezeichnung',
  179. printPreview: 'Druckvorschau',
  180. width: 'Breite',
  181. height: 'Höhe',
  182. noObjectsFound: 'Keine Objekte gefunden',
  183. objectsLoadedOnPrintStart: 'Objekte werden beim Druckstart geladen',
  184. willBeSkipped: 'Wird übersprungen',
  185. name: 'Name',
  186. serialCannotBeChanged: 'Seriennummer kann nicht geändert werden',
  187. locationHelp: 'Dient zur Gruppierung von Druckern und zum Filtern von Warteschlangenaufträgen',
  188. // WiFi signal strength
  189. wifiSignal: {
  190. veryWeak: 'Sehr schwach',
  191. weak: 'Schwach',
  192. fair: 'Ausreichend',
  193. good: 'Gut',
  194. excellent: 'Ausgezeichnet',
  195. },
  196. // Maintenance
  197. maintenanceUpToDate: 'Alle Wartungen aktuell - Klicken zum Anzeigen',
  198. // Chamber light
  199. chamberLightOn: 'Kammerbeleuchtung einschalten',
  200. chamberLightOff: 'Kammerbeleuchtung ausschalten',
  201. // Files
  202. files: 'Dateien',
  203. browseFiles: 'Druckerdateien durchsuchen',
  204. // Smart plug
  205. autoOffAfterPrint: 'Automatisches Ausschalten nach Druck',
  206. autoOffExecuted: 'Auto-off wurde ausgeführt - Drucker einschalten zum Zurücksetzen',
  207. // HMS errors
  208. hmsErrors: 'HMS-Fehler',
  209. viewHmsErrors: '{{count}} HMS-Fehler anzeigen',
  210. // Actions
  211. resume: 'Fortsetzen',
  212. pause: 'Pausieren',
  213. stop: 'Stoppen',
  214. camera: 'Kamera',
  215. skipObject: 'Objekt überspringen',
  216. reconnect: 'Neu verbinden',
  217. mqttDebug: 'MQTT-Debug',
  218. printerInformation: 'Druckerinformationen',
  219. copyToClipboard: 'Kopieren',
  220. copied: 'Kopiert!',
  221. state: 'Zustand',
  222. wifiSignalLabel: 'WLAN-Signal',
  223. developerMode: 'Entwicklermodus',
  224. enabled: 'Aktiviert',
  225. disabled: 'Deaktiviert',
  226. addedOn: 'Hinzugefügt',
  227. sdCard: 'SD-Karte',
  228. inserted: 'Eingelegt',
  229. notInserted: 'Nicht eingelegt',
  230. totalPrintHours: 'Druckstunden',
  231. activeNozzle: 'Aktiv: {{nozzle}} Düse',
  232. nozzleRack: 'Düsenhalter',
  233. nozzleDocked: 'Angedockt',
  234. nozzleMounted: 'Montiert',
  235. nozzleActive: 'Aktiv',
  236. nozzleIdle: 'Inaktiv',
  237. nozzleDiameter: 'Durchmesser',
  238. nozzleType: 'Typ',
  239. nozzleStatus: 'Status',
  240. nozzleFilament: 'Filament',
  241. nozzleWear: 'Verschleiß',
  242. nozzleMaxTemp: 'Max Temp',
  243. nozzleSerial: 'Seriennr.',
  244. nozzleHardenedSteel: 'Gehärteter Stahl',
  245. nozzleStainlessSteel: 'Edelstahl',
  246. nozzleTungstenCarbide: 'Wolframkarbid',
  247. nozzleFlow: 'Durchfluss',
  248. nozzleHighFlow: 'High Flow',
  249. nozzleStandardFlow: 'Standard',
  250. // Firmware
  251. firmwareUpdate: 'Firmware-Update',
  252. firmwareInstructions: 'Gehen Sie auf dem Touchscreen des Druckers zu',
  253. firmwareNav: 'Navigieren Sie zu',
  254. settings: 'Einstellungen',
  255. firmware: 'Firmware',
  256. // Discovery
  257. discoverPrinters: 'Drucker entdecken',
  258. searching: 'Suche...',
  259. manualEntry: 'Manuelle Eingabe',
  260. addFromCloud: 'Aus Cloud hinzufügen',
  261. // Toast messages
  262. toast: {
  263. printerDeleted: 'Drucker gelöscht',
  264. printerAdded: 'Drucker hinzugefügt',
  265. printerUpdated: 'Drucker aktualisiert',
  266. failedToDelete: 'Drucker konnte nicht gelöscht werden',
  267. failedToAdd: 'Drucker konnte nicht hinzugefügt werden',
  268. failedToUpdate: 'Drucker konnte nicht aktualisiert werden',
  269. commandSent: 'Befehl gesendet',
  270. failedToSendCommand: 'Befehl konnte nicht gesendet werden',
  271. turnedOn: '{{name}} eingeschaltet',
  272. failedToPowerOn: '{{name}} konnte nicht eingeschaltet werden',
  273. scriptTriggered: 'Skript ausgelöst',
  274. printStopped: 'Druck gestoppt',
  275. printPaused: 'Druck pausiert',
  276. printResumed: 'Druck fortgesetzt',
  277. referenceDeleted: 'Referenz gelöscht',
  278. detectionAreaSaved: 'Erkennungsbereich gespeichert',
  279. failedToRunScript: 'Skript konnte nicht ausgeführt werden',
  280. failedToStopPrint: 'Druck konnte nicht gestoppt werden',
  281. failedToPausePrint: 'Druck konnte nicht pausiert werden',
  282. failedToResumePrint: 'Druck konnte nicht fortgesetzt werden',
  283. failedToControlChamberLight: 'Kammerbeleuchtung konnte nicht gesteuert werden',
  284. failedToUpdateSetting: 'Einstellung konnte nicht aktualisiert werden',
  285. failedToSkipObjects: 'Objekte konnten nicht übersprungen werden',
  286. failedToRereadRfid: 'RFID konnte nicht erneut gelesen werden',
  287. failedToCheckPlate: 'Platte konnte nicht überprüft werden',
  288. failedToUpdateLabel: 'Bezeichnung konnte nicht aktualisiert werden',
  289. failedToDeleteReference: 'Referenz konnte nicht gelöscht werden',
  290. failedToSaveDetectionArea: 'Erkennungsbereich konnte nicht gespeichert werden',
  291. plateCheckEnabled: 'Plattenprüfung aktiviert',
  292. plateCheckDisabled: 'Plattenprüfung deaktiviert',
  293. calibrationSaved: 'Kalibrierung gespeichert!',
  294. calibrationFailed: 'Kalibrierung fehlgeschlagen',
  295. rfidRereadInitiated: 'RFID-Neueinlesen gestartet',
  296. },
  297. // Connection status
  298. connection: {
  299. connected: 'Verbunden',
  300. offline: 'Offline',
  301. },
  302. // Queue info
  303. queue: {
  304. inQueue: '{{count}} Druck in Warteschlange',
  305. inQueue_plural: '{{count}} Drucke in Warteschlange',
  306. },
  307. // Controls section
  308. controls: 'Steuerung',
  309. // RFID
  310. rfid: {
  311. reread: 'RFID neu lesen',
  312. },
  313. // Permissions
  314. permission: {
  315. noAdd: 'Sie haben keine Berechtigung, Drucker hinzuzufügen',
  316. noEdit: 'Sie haben keine Berechtigung, Drucker zu bearbeiten',
  317. noDelete: 'Sie haben keine Berechtigung, Drucker zu löschen',
  318. noControl: 'Sie haben keine Berechtigung, Drucker zu steuern',
  319. noFiles: 'Sie haben keine Berechtigung, auf Druckerdateien zuzugreifen',
  320. noAmsRfid: 'Sie haben keine Berechtigung, AMS-RFID erneut zu lesen',
  321. noSmartPlugControl: 'Sie haben keine Berechtigung, Smart Plugs zu steuern',
  322. noCamera: 'Sie haben keine Berechtigung, Kameras anzuzeigen',
  323. },
  324. // Add/Edit modal
  325. modal: {
  326. addTitle: 'Drucker hinzufügen',
  327. editTitle: 'Drucker bearbeiten',
  328. myPrinter: 'Mein Drucker',
  329. selectModel: 'Modell auswählen...',
  330. locationGroup: 'Standort / Gruppe (optional)',
  331. locationPlaceholder: 'z.B. Werkstatt, Büro, Keller',
  332. autoArchiveLabel: 'Abgeschlossene Drucke automatisch archivieren',
  333. fromPrinterSettings: 'Aus Druckereinstellungen',
  334. modelOptional: 'Modell (optional)',
  335. saveChanges: 'Änderungen speichern',
  336. },
  337. // Skip objects
  338. skipObjects: {
  339. tooltip: 'Objekte überspringen',
  340. onlyWhilePrinting: 'Objekte überspringen (nur während des Drucks)',
  341. requiresMultiple: 'Objekte überspringen (erfordert 2+ Objekte)',
  342. title: 'Objekte überspringen',
  343. matchIdsInfo: 'IDs mit Drucker-Display abgleichen',
  344. printerShowsIds: 'Der Druckerbildschirm zeigt Objekt-IDs auf der Bauplatte',
  345. skipSelected: 'Ausgewählte überspringen',
  346. skipping: 'Überspringe...',
  347. noObjectsSelected: 'Keine Objekte ausgewählt',
  348. selectObjectsToSkip: 'Wählen Sie Objekte aus, die Sie vom aktuellen Druck überspringen möchten',
  349. skipped: 'übersprungen',
  350. objectsSkipped: 'Objekte übersprungen',
  351. activeCount: '{{count}} aktiv',
  352. waitForLayer: 'Warten Sie auf Schicht 2+ zum Überspringen von Objekten (aktuell Schicht {{layer}})',
  353. skip: 'Überspringen',
  354. confirmTitle: 'Objekt überspringen?',
  355. confirmMessage: 'Möchten Sie "{{name}}" wirklich überspringen? Dies kann nicht rückgängig gemacht werden.',
  356. },
  357. // Confirm modals
  358. confirm: {
  359. deleteTitle: 'Drucker löschen',
  360. deleteMessage: 'Möchten Sie "{{name}}" wirklich löschen? Alle Verbindungseinstellungen werden entfernt.',
  361. deleteArchivesNote: 'Der gesamte Druckverlauf für diesen Drucker wird dauerhaft gelöscht.',
  362. keepArchivesNote: 'Der Druckverlauf wird beibehalten, aber nicht mehr mit diesem Drucker verknüpft.',
  363. stopTitle: 'Druck stoppen',
  364. stopMessage: 'Möchten Sie den aktuellen Druck auf "{{name}}" wirklich stoppen? Der Druckauftrag wird abgebrochen.',
  365. stopButton: 'Druck stoppen',
  366. pauseTitle: 'Druck pausieren',
  367. pauseMessage: 'Möchten Sie den aktuellen Druck auf "{{name}}" wirklich pausieren?',
  368. pauseButton: 'Druck pausieren',
  369. resumeTitle: 'Druck fortsetzen',
  370. resumeMessage: 'Möchten Sie den Druck auf "{{name}}" fortsetzen?',
  371. resumeButton: 'Druck fortsetzen',
  372. powerOnTitle: 'Drucker einschalten',
  373. powerOnMessage: 'Möchten Sie die Stromversorgung für "{{name}}" wirklich EINSCHALTEN?',
  374. powerOnButton: 'Einschalten',
  375. powerOffTitle: 'Drucker ausschalten',
  376. powerOffMessage: 'Möchten Sie die Stromversorgung für "{{name}}" wirklich AUSSCHALTEN?',
  377. powerOffWarning: 'WARNUNG: "{{name}}" druckt gerade! Möchten Sie die Stromversorgung wirklich AUSSCHALTEN? Dies unterbricht den Druck und kann den Drucker beschädigen.',
  378. powerOffButton: 'Ausschalten',
  379. },
  380. // Discovery
  381. discovery: {
  382. title: 'Drucker entdecken',
  383. searching: 'Suche...',
  384. scanning: 'Scanne...',
  385. scanProgress: 'Scanne... {{scanned}}/{{total}}',
  386. foundPrinters: '{{count}} Drucker gefunden',
  387. noPrintersFound: 'Keine Drucker gefunden',
  388. noPrintersFoundSubnet: 'Keine Drucker im angegebenen Subnetz gefunden.',
  389. noPrintersFoundNetwork: 'Keine Drucker im Netzwerk gefunden.',
  390. allConfigured: 'Alle erkannten Drucker sind bereits konfiguriert.',
  391. alreadyAdded: 'Bereits hinzugefügt',
  392. select: 'Auswählen',
  393. manualEntry: 'Manuelle Eingabe',
  394. addFromCloud: 'Aus Cloud hinzufügen',
  395. subnetToScan: 'Zu scannendes Subnetz',
  396. dockerNote: 'Docker erkannt. Geben Sie das Subnetz Ihres Druckers in CIDR-Notation ein. Erfordert network_mode: host in docker-compose.yml.',
  397. scanSubnet: 'Subnetz nach Druckern scannen',
  398. discoverNetwork: 'Drucker im Netzwerk suchen',
  399. scanningSubnet: 'Subnetz wird nach Bambu-Druckern gescannt...',
  400. scanningNetwork: 'Netzwerk wird gescannt...',
  401. serialRequired: 'Seriennummer erforderlich',
  402. unknown: 'Unbekannt',
  403. failedToStart: 'Erkennung konnte nicht gestartet werden',
  404. },
  405. // Filaments section
  406. filaments: 'Filamente',
  407. // Camera
  408. openCameraOverlay: 'Kamera-Overlay öffnen',
  409. openCameraWindow: 'Kamera in neuem Fenster öffnen',
  410. // Firmware
  411. firmwareUpdateAvailable: 'Firmware-Update verfügbar: {{current}} → {{latest}}',
  412. firmwareUpToDate: 'Firmware {{version}} — Aktuell',
  413. firmwareUpdateButton: 'Update',
  414. // Plate detection
  415. plateDetection: {
  416. noPermission: 'Sie haben keine Berechtigung, Drucker zu aktualisieren',
  417. enabledClick: 'Plattenprüfung aktiviert - Klicken zum Deaktivieren',
  418. disabledClick: 'Plattenprüfung deaktiviert - Klicken zum Aktivieren',
  419. manageCalibration: 'Platten-Erkennungskalibrierung verwalten',
  420. calibrationRequired: 'Kalibrierung erforderlich',
  421. calibrationInstructions: 'Bitte stellen Sie sicher, dass die Druckplatte <strong>vollständig leer</strong> ist, und klicken Sie dann auf Kalibrieren.',
  422. calibrationDescription: 'Die Kalibrierung erfasst ein Referenzbild der leeren Platte. Zukünftige Prüfungen vergleichen mit dieser Referenz, um Objekte zu erkennen.',
  423. calibrationTip: '<strong>Tipp:</strong> Sie können bis zu 5 Kalibrierungen für verschiedene Platten speichern. Das System verwendet automatisch die beste Übereinstimmung bei der Prüfung.',
  424. plateEmpty: 'Platte erscheint leer',
  425. objectsDetected: 'Objekte auf Platte erkannt',
  426. confidence: 'Konfidenz',
  427. difference: 'Differenz',
  428. analysisPreview: 'Analysevorschau:',
  429. analysisLegend: 'Grüner Rahmen = Erkennungsbereich, Rote Überlagerung = Unterschiede zur Kalibrierung',
  430. savedReferences: 'Gespeicherte Referenzen ({{count}}/{{max}})',
  431. deleteReference: 'Referenz löschen',
  432. labelPlaceholder: 'Bezeichnung...',
  433. clickToEdit: '{{label}} - Zum Bearbeiten klicken',
  434. clickToAddLabel: 'Zum Hinzufügen einer Bezeichnung klicken',
  435. },
  436. // Fans
  437. fans: {
  438. partCooling: 'Bauteilkühlung',
  439. auxiliary: 'Hilfsventilator',
  440. chamber: 'Kammerventilator',
  441. },
  442. // HMS errors
  443. clickToViewHmsErrors: 'Klicken, um HMS-Fehler anzuzeigen',
  444. estimatedCompletion: 'Geschätzte Fertigstellungszeit',
  445. slotOptions: 'Slot-Optionen',
  446. // AMS hover popup
  447. amsPopup: {
  448. friendlyName: 'AMS-Name',
  449. friendlyNamePlaceholder: 'z. B. AMS-Anzeigename',
  450. serialNumber: 'Seriennummer',
  451. firmwareVersion: 'Firmware',
  452. save: 'Speichern',
  453. clear: 'Löschen',
  454. noEditPermission: 'Sie haben keine Berechtigung, AMS-Einheiten umzubenennen',
  455. },
  456. // Firmware modal
  457. firmwareModal: {
  458. title: 'Firmware-Update',
  459. titleUpToDate: 'Firmware-Info',
  460. currentVersion: 'Aktuell:',
  461. latestVersion: 'Neueste:',
  462. releaseNotes: 'Versionshinweise',
  463. checkingPrereqs: 'Prüfe Voraussetzungen...',
  464. sdCardReady: 'SD-Karte bereit. Klicken Sie unten, um die Firmware hochzuladen.',
  465. uploadedSuccess: 'Firmware auf SD-Karte hochgeladen!',
  466. applyInstructions: 'So wenden Sie das Update auf Ihrem Drucker an:',
  467. step1: 'Gehen Sie auf dem Touchscreen des Druckers zu <strong>Einstellungen</strong>',
  468. step2: 'Navigieren Sie zu <strong>Firmware</strong>',
  469. step3: 'Wählen Sie <strong>Update von SD-Karte</strong>',
  470. step4: 'Das Update dauert 10-20 Minuten',
  471. done: 'Fertig',
  472. starting: 'Starte...',
  473. uploadFirmware: 'Firmware hochladen',
  474. uploadFailed: 'Upload fehlgeschlagen: {{error}}',
  475. uploadedToast: 'Firmware hochgeladen! Starten Sie das Update vom Druckerbildschirm.',
  476. },
  477. accessCodePlaceholder: 'Leer lassen, um den aktuellen zu behalten',
  478. // ROI editor
  479. roi: {
  480. title: 'Erkennungsbereich (ROI)',
  481. xStart: 'X-Start',
  482. yStart: 'Y-Start',
  483. width: 'Breite',
  484. height: 'Höhe',
  485. instruction: 'Passen Sie den Erkennungsbereich an, um sich auf die Druckplatte zu konzentrieren. Der grüne Rahmen in der Vorschau zeigt den aktuellen Bereich.',
  486. },
  487. developerModeWarning: 'Der Entwickler-LAN-Modus ist nicht aktiviert auf: {{names}}. Einige Funktionen funktionieren möglicherweise nicht.',
  488. howToEnable: 'Aktivieren',
  489. incompatibleFile: 'Diese Datei wurde für {{slicedFor}} geslicet, aber dieser Drucker ist ein {{printerModel}}',
  490. dropNotPrintable: 'Nur .gcode- und .gcode.3mf-Dateien können gedruckt werden',
  491. dropToPrint: 'Zum Drucken ablegen',
  492. cannotPrint: 'Drucker beschäftigt',
  493. },
  494. // Archives page
  495. archives: {
  496. title: 'Druckarchiv',
  497. searchPlaceholder: 'Archiv durchsuchen...',
  498. filterByPrinter: 'Nach Drucker filtern',
  499. filterByStatus: 'Nach Status filtern',
  500. sortBy: 'Sortieren nach',
  501. sortNewest: 'Neueste zuerst',
  502. sortOldest: 'Älteste zuerst',
  503. sortName: 'Name',
  504. sortDuration: 'Dauer',
  505. sortLargest: 'Größte zuerst',
  506. sortSmallest: 'Kleinste zuerst',
  507. sortSize: 'Größe',
  508. noArchives: 'Keine Archive gefunden',
  509. noArchivesSearch: 'Keine Archive entsprechen Ihrer Suche',
  510. noArchivesYet: 'Noch keine Archive',
  511. loadingArchives: 'Lade Archive...',
  512. releaseToUpload: 'Loslassen zum Hochladen',
  513. showAll: 'Alle anzeigen',
  514. showFavoritesOnly: 'Nur Favoriten anzeigen',
  515. gridView: 'Rasteransicht',
  516. listView: 'Listenansicht',
  517. calendarView: 'Kalenderansicht',
  518. logView: 'Druckprotokoll',
  519. manageTags: 'Tags verwalten',
  520. showFailedPrints: 'Fehlgeschlagene Drucke anzeigen',
  521. hideFailedPrints: 'Fehlgeschlagene Drucke ausblenden',
  522. printTime: 'Druckzeit',
  523. filamentUsed: 'Verbrauchtes Filament',
  524. cost: 'Kosten',
  525. reprint: 'Drucken',
  526. preview: 'Vorschau',
  527. deleteArchive: 'Archiv löschen',
  528. deleteConfirm: 'Möchten Sie dieses Archiv wirklich löschen?',
  529. favorite: 'Favorit',
  530. unfavorite: 'Aus Favoriten entfernen',
  531. viewDetails: 'Details anzeigen',
  532. status: {
  533. completed: 'Abgeschlossen',
  534. failed: 'Fehlgeschlagen',
  535. stopped: 'Gestoppt',
  536. },
  537. toast: {
  538. source3mfAttached: 'Quell-3MF angehängt: {{filename}}',
  539. failedUploadSource3mf: 'Fehler beim Hochladen der Quell-3MF',
  540. source3mfRemoved: 'Quell-3MF entfernt',
  541. failedRemoveSource3mf: 'Fehler beim Entfernen der Quell-3MF',
  542. f3dAttached: 'F3D angehängt: {{filename}}',
  543. failedUploadF3d: 'Fehler beim Hochladen der F3D',
  544. f3dRemoved: 'F3D entfernt',
  545. failedRemoveF3d: 'Fehler beim Entfernen der F3D',
  546. timelapseAttached: 'Zeitraffer angehängt: {{filename}}',
  547. timelapseAlreadyAttached: 'Zeitraffer bereits angehängt',
  548. noMatchingTimelapse: 'Kein passender Zeitraffer gefunden',
  549. failedScanTimelapse: 'Fehler beim Suchen nach Zeitraffer',
  550. failedAttachTimelapse: 'Fehler beim Anhängen des Zeitraffers',
  551. timelapseRemoved: 'Zeitraffer entfernt',
  552. failedRemoveTimelapse: 'Fehler beim Entfernen des Zeitraffers',
  553. timelapseUploaded: 'Zeitraffer hochgeladen: {{filename}}',
  554. failedUploadTimelapse: 'Fehler beim Hochladen des Zeitraffers',
  555. archiveDeleted: 'Archiv gelöscht',
  556. failedDeleteArchive: 'Fehler beim Löschen des Archivs',
  557. addedToFavorites: 'Zu Favoriten hinzugefügt',
  558. removedFromFavorites: 'Aus Favoriten entfernt',
  559. projectUpdated: 'Projekt aktualisiert',
  560. failedUpdateProject: 'Fehler beim Aktualisieren des Projekts',
  561. linkCopied: 'Link in die Zwischenablage kopiert',
  562. failedCopyLink: 'Fehler beim Kopieren des Links',
  563. photoDeleted: 'Foto gelöscht',
  564. failedDeletePhoto: 'Fehler beim Löschen des Fotos',
  565. failedDeleteArchives: 'Fehler beim Löschen der Archive',
  566. failedUpdateFavorites: 'Fehler beim Aktualisieren der Favoriten',
  567. exportDownloaded: 'Export heruntergeladen',
  568. exportFailed: 'Export fehlgeschlagen',
  569. },
  570. menu: {
  571. print: 'Drucken',
  572. schedule: 'Planen',
  573. openInBambuStudio: 'Im Slicer öffnen',
  574. slice: 'Slicen',
  575. externalLink: 'Externer Link',
  576. viewOnMakerWorld: 'Auf MakerWorld ansehen',
  577. preview3d: '3D-Vorschau',
  578. viewTimelapse: 'Zeitraffer ansehen',
  579. scanForTimelapse: 'Nach Zeitraffer suchen',
  580. uploadTimelapse: 'Zeitraffer hochladen',
  581. removeTimelapse: 'Zeitraffer entfernen',
  582. downloadSource3mf: 'Quell-3MF herunterladen',
  583. uploadSource3mf: 'Quell-3MF hochladen',
  584. replaceSource3mf: 'Quell-3MF ersetzen',
  585. removeSource3mf: 'Quell-3MF entfernen',
  586. uploadF3d: 'F3D hochladen',
  587. replaceF3d: 'F3D ersetzen',
  588. downloadF3d: 'F3D herunterladen',
  589. removeF3d: 'F3D entfernen',
  590. download: 'Herunterladen',
  591. copyDownloadLink: 'Download-Link kopieren',
  592. qrCode: 'QR-Code',
  593. viewPhotos: 'Fotos ansehen',
  594. viewPhotosCount: 'Fotos ansehen ({{count}})',
  595. projectPage: 'Projektseite',
  596. addToFavorites: 'Zu Favoriten hinzufügen',
  597. removeFromFavorites: 'Aus Favoriten entfernen',
  598. edit: 'Bearbeiten',
  599. goToProject: 'Zum Projekt: {{name}}',
  600. addToProject: 'Zu Projekt hinzufügen',
  601. removeFromProject: 'Aus Projekt entfernen',
  602. loading: 'Laden...',
  603. noProjectsAvailable: 'Keine Projekte verfügbar',
  604. select: 'Auswählen',
  605. deselect: 'Abwählen',
  606. delete: 'Löschen',
  607. },
  608. permission: {
  609. noReprint: 'Sie haben keine Berechtigung, dieses Archiv erneut zu drucken',
  610. noAddToQueue: 'Sie haben keine Berechtigung, zur Warteschlange hinzuzufügen',
  611. noUpdateArchives: 'Sie haben keine Berechtigung, Archive zu aktualisieren',
  612. noUploadFiles: 'Sie haben keine Berechtigung, Dateien hochzuladen',
  613. noDownload: 'Sie haben keine Berechtigung, Archive herunterzuladen',
  614. noCopyLink: 'Sie haben keine Berechtigung, Download-Links zu kopieren',
  615. noDelete: 'Sie haben keine Berechtigung, dieses Archiv zu löschen',
  616. noCreate: 'Sie haben keine Berechtigung, Archive zu erstellen',
  617. },
  618. card: {
  619. previousPlate: 'Vorherige Platte',
  620. nextPlate: 'Nächste Platte',
  621. plateNumber: 'Platte {{index}}',
  622. moreOptions: 'Rechtsklick für mehr Optionen',
  623. addToFavorites: 'Zu Favoriten hinzufügen',
  624. removeFromFavorites: 'Aus Favoriten entfernen',
  625. cancelled: 'abgebrochen',
  626. failed: 'fehlgeschlagen',
  627. duplicate: 'Duplikat',
  628. duplicateTitle: 'Dieses Modell wurde bereits zuvor gedruckt',
  629. openSource3mf: 'Quell-3MF in Bambu Studio öffnen (Rechtsklick für mehr Optionen)',
  630. downloadF3d: 'Fusion 360 Designdatei herunterladen',
  631. viewTimelapse: 'Zeitraffer ansehen',
  632. viewPhoto: '1 Foto ansehen',
  633. viewPhotos: '{{count}} Fotos ansehen',
  634. openFolder: 'Ordner öffnen: {{name}}',
  635. slicedFile: 'Geslicte Datei - druckbereit',
  636. sourceFile: 'Nur Quelldatei - keine AMS-Zuordnung verfügbar',
  637. gcode: 'GCODE',
  638. source: 'QUELLE',
  639. project: 'Projekt: {{name}}',
  640. estimated: 'Geschätzt: {{time}}',
  641. actual: 'Tatsächlich: {{time}}',
  642. accuracy: 'Genauigkeit: {{percent}}%',
  643. filament: '{{weight}}g',
  644. layer: '{{count}} Schicht',
  645. layers: '{{count}} Schichten',
  646. object: '{{count}} Objekt',
  647. objects: '{{count}} Objekte',
  648. slicedFor: 'Geslict für {{model}}',
  649. uploadedBy: 'Hochgeladen von',
  650. noPermissionReprint: 'Sie haben keine Berechtigung, erneut zu drucken',
  651. noFileForReprint: 'Keine 3MF-Datei verfügbar — die Datei konnte beim Aufzeichnen des Drucks nicht vom Drucker heruntergeladen werden',
  652. noPermissionEdit: 'Sie haben keine Berechtigung, Archive zu bearbeiten',
  653. noPermissionDelete: 'Sie haben keine Berechtigung, Archive zu löschen',
  654. reprint: 'Drucken',
  655. schedulePrint: 'Druck planen',
  656. schedule: 'Planen',
  657. openInBambuStudio: 'Im Slicer öffnen',
  658. openInBambuStudioToSlice: 'Im Slicer öffnen zum Slicen',
  659. slice: 'Slicen',
  660. externalLink: 'Externer Link',
  661. makerWorld: 'MakerWorld: {{designer}}',
  662. viewProject: 'Projekt ansehen',
  663. noExternalLink: 'Kein externer Link',
  664. preview3d: '3D-Vorschau',
  665. download: 'Herunterladen',
  666. edit: 'Bearbeiten',
  667. delete: 'Löschen',
  668. },
  669. modal: {
  670. deleteArchive: 'Archiv löschen',
  671. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.',
  672. deleteButton: 'Löschen',
  673. removeSource3mf: 'Quell-3MF entfernen',
  674. removeSource3mfConfirm: 'Möchten Sie die Quell-3MF-Datei wirklich von "{{name}}" entfernen? Die ursprüngliche Slicer-Projektdatei wird gelöscht.',
  675. removeButton: 'Entfernen',
  676. removeF3d: 'F3D entfernen',
  677. removeF3dConfirm: 'Möchten Sie die Fusion 360 Designdatei wirklich von "{{name}}" entfernen?',
  678. removeTimelapse: 'Zeitraffer entfernen',
  679. removeTimelapseConfirm: 'Möchten Sie das Zeitraffervideo wirklich von "{{name}}" entfernen?',
  680. timelapse: '{{name}} - Zeitraffer',
  681. selectTimelapse: 'Zeitraffer auswählen',
  682. selectTimelapseDesc: 'Keine automatische Übereinstimmung gefunden. Wählen Sie den Zeitraffer für diesen Druck:',
  683. deleteArchives: 'Archive löschen',
  684. deleteArchivesConfirm: 'Möchten Sie wirklich {{count}} Archiv(e) löschen? Diese Aktion kann nicht rückgängig gemacht werden.',
  685. deleteCount: '{{count}} löschen',
  686. },
  687. page: {
  688. title: 'Archive',
  689. printsCount: '{{filtered}} von {{total}} Drucken',
  690. dropFilesHere: '.3mf-Dateien hier ablegen',
  691. releaseToUpload: 'Loslassen zum Hochladen',
  692. only3mfSupported: 'Nur .3mf-Dateien werden unterstützt',
  693. close: 'Schließen',
  694. selected: '{{count}} ausgewählt',
  695. selectAll: 'Alle auswählen',
  696. tags: 'Tags',
  697. project: 'Projekt',
  698. favorite: 'Favorit',
  699. delete: 'Löschen',
  700. toggledFavorites: 'Favoriten für {{count}} Archiv(e) umgeschaltet',
  701. failedUpdateFavorites: 'Fehler beim Aktualisieren der Favoriten',
  702. archivesDeleted: '{{count}} Archiv(e) gelöscht',
  703. failedDeleteArchives: 'Fehler beim Löschen der Archive',
  704. photoDeleted: 'Foto gelöscht',
  705. failedDeletePhoto: 'Fehler beim Löschen des Fotos',
  706. },
  707. list: {
  708. name: 'Name',
  709. printer: 'Drucker',
  710. date: 'Datum',
  711. size: 'Größe',
  712. actions: 'Aktionen',
  713. hasTimelapse: 'Hat Zeitraffer',
  714. },
  715. log: {
  716. date: 'Datum',
  717. printName: 'Druckname',
  718. printer: 'Drucker',
  719. user: 'Benutzer',
  720. status: 'Status',
  721. duration: 'Dauer',
  722. filament: 'Filament',
  723. allPrinters: 'Alle Drucker',
  724. allUsers: 'Alle Benutzer',
  725. allStatuses: 'Alle Status',
  726. cancelled: 'Abgebrochen',
  727. skipped: 'Übersprungen',
  728. dateFrom: 'Von',
  729. dateTo: 'Bis',
  730. noEntries: 'Keine Druckprotokolleinträge gefunden',
  731. showing: '{{count}} von {{total}} Einträgen',
  732. rowsPerPage: 'Zeilen',
  733. page: 'Seite',
  734. prev: 'Zurück',
  735. next: 'Weiter',
  736. clearLog: 'Protokoll löschen',
  737. clearLogTitle: 'Druckprotokoll löschen',
  738. clearLogConfirm: 'Alle Druckprotokolleinträge werden dauerhaft gelöscht. Archive und Warteschlangeneinträge sind nicht betroffen. Diese Aktion kann nicht rückgängig gemacht werden. Sind Sie sicher?',
  739. clearLogButton: 'Alle löschen',
  740. cleared: '{{count}} Protokolleinträge gelöscht',
  741. clearFailed: 'Druckprotokoll konnte nicht gelöscht werden',
  742. },
  743. },
  744. // Queue page
  745. queue: {
  746. title: 'Druckwarteschlange',
  747. subtitle: 'Planen und verwalten Sie Ihre Druckaufträge',
  748. addToQueue: 'Zur Warteschlange hinzufügen',
  749. // Print modal
  750. print: 'Drucken',
  751. reprint: 'Erneut drucken',
  752. schedulePrint: 'Druck planen',
  753. editQueueItem: 'Warteschlangeneintrag bearbeiten',
  754. printToPrinters: 'Auf {{count}} Druckern drucken',
  755. queueToPrinters: 'Zu {{count}} Druckern hinzufügen',
  756. sending: 'Wird gesendet...',
  757. sendingProgress: 'Sende {{current}}/{{total}}...',
  758. adding: 'Wird hinzugefügt...',
  759. addingProgress: 'Füge hinzu {{current}}/{{total}}...',
  760. savingProgress: 'Speichere {{current}}/{{total}}...',
  761. clearQueue: 'Warteschlange leeren',
  762. clearHistory: 'Verlauf löschen',
  763. emptyQueue: 'Warteschlange ist leer',
  764. position: 'Position',
  765. scheduledTime: 'Geplante Zeit',
  766. moveUp: 'Nach oben',
  767. moveDown: 'Nach unten',
  768. startNow: 'Jetzt starten',
  769. printingInProgress: 'Druck läuft...',
  770. viewArchive: 'Archiv anzeigen',
  771. viewInFileManager: 'Im Dateimanager anzeigen',
  772. itemCount: '{{count}} Element',
  773. itemCount_plural: '{{count}} Elemente',
  774. dragToReorder: 'Ziehen zum Neuordnen (nur Sofort)',
  775. reorderHint: 'Position betrifft nur Sofort-Elemente. Geplante Elemente werden zur festgelegten Zeit ausgeführt.',
  776. addedBy: 'Hinzugefügt von {{name}}',
  777. nextInQueue: 'Nächster in der Warteschlange',
  778. clearPlate: 'Druckplatte freigeben & Nächsten starten',
  779. clearPlateSuccess: 'Druckplatte freigegeben — bereit für nächsten Druck',
  780. plateReady: 'Druckplatte freigegeben — bereit für nächsten Druck',
  781. plateNumber: 'Platte {{index}}',
  782. // Sections
  783. sections: {
  784. currentlyPrinting: 'Aktuell druckend',
  785. queued: 'In Warteschlange',
  786. history: 'Verlauf',
  787. },
  788. // Status
  789. status: {
  790. pending: 'Ausstehend',
  791. waiting: 'Wartend',
  792. printing: 'Druckt',
  793. paused: 'Pausiert',
  794. completed: 'Abgeschlossen',
  795. failed: 'Fehlgeschlagen',
  796. skipped: 'Übersprungen',
  797. cancelled: 'Abgebrochen',
  798. },
  799. // Summary cards
  800. summary: {
  801. printing: 'Druckt',
  802. queued: 'In Warteschlange',
  803. totalTime: 'Gesamte Wartezeit',
  804. totalWeight: 'Gesamtgewicht der Warteschlange',
  805. history: 'Verlauf',
  806. },
  807. // Filters
  808. filter: {
  809. allPrinters: 'Alle Drucker',
  810. unassigned: 'Nicht zugewiesen',
  811. allStatus: 'Alle Status',
  812. allLocations: 'Alle Standorte',
  813. any: 'Beliebig',
  814. },
  815. // Sort
  816. sort: {
  817. byPosition: 'Nach Position sortieren',
  818. byName: 'Nach Name sortieren',
  819. byPrinter: 'Nach Drucker sortieren',
  820. bySchedule: 'Nach Zeitplan sortieren',
  821. byDate: 'Nach Datum sortieren',
  822. ascendingOldest: 'Aufsteigend (älteste zuerst)',
  823. descendingNewest: 'Absteigend (neueste zuerst)',
  824. },
  825. // Badges
  826. badges: {
  827. staged: 'Bereitgestellt',
  828. requiresPrevious: 'Erfordert vorherigen Erfolg',
  829. autoPowerOff: 'Automatisch ausschalten',
  830. },
  831. // Empty state
  832. empty: {
  833. title: 'Keine Drucke geplant',
  834. description: 'Planen Sie einen Druck von der Archivseite über die Option "Planen" im Kontextmenü oder ziehen Sie Dateien hierher.',
  835. },
  836. // Time
  837. time: {
  838. asap: 'Sofort',
  839. overdue: 'Überfällig',
  840. now: 'Jetzt',
  841. lessThanMinute: 'In weniger als einer Minute',
  842. inMinutes: 'In {{count}} Min',
  843. inHours: 'In {{count}} Stunden',
  844. },
  845. // Actions
  846. actions: {
  847. stopPrint: 'Druck stoppen',
  848. startPrint: 'Druck starten',
  849. requeue: 'Erneut einreihen',
  850. },
  851. // Bulk edit
  852. bulkEdit: {
  853. title: '{{count}} Element bearbeiten',
  854. title_plural: '{{count}} Elemente bearbeiten',
  855. description: 'Nur geänderte Einstellungen werden auf ausgewählte Elemente angewendet.',
  856. printer: 'Drucker',
  857. noChange: '— Keine Änderung —',
  858. queueOptions: 'Warteschlangenoptionen',
  859. staged: 'Bereitgestellt (manueller Start)',
  860. autoPowerOff: 'Nach Druck automatisch ausschalten',
  861. requirePrevious: 'Vorherigen Erfolg erfordern',
  862. printOptions: 'Druckoptionen',
  863. bedLevelling: 'Bett-Nivellierung',
  864. flowCalibration: 'Fluss-Kalibrierung',
  865. vibrationCalibration: 'Vibrations-Kalibrierung',
  866. layerInspection: 'Erste-Schicht-Prüfung',
  867. timelapse: 'Zeitraffer',
  868. useAms: 'AMS verwenden',
  869. applyChanges: 'Änderungen übernehmen',
  870. selectAll: 'Alle auswählen',
  871. deselectAll: 'Auswahl aufheben',
  872. selected: '{{count}} ausgewählt',
  873. editSelected: 'Ausgewählte bearbeiten',
  874. cancelSelected: 'Ausgewählte abbrechen',
  875. },
  876. // Confirmations
  877. confirm: {
  878. cancelTitle: 'Geplanten Druck abbrechen',
  879. cancelMessage: 'Möchten Sie "{{name}}" wirklich abbrechen?',
  880. stopTitle: 'Druck stoppen',
  881. stopMessage: 'Möchten Sie den aktuellen Druck "{{name}}" wirklich stoppen? Der Druckauftrag wird am Drucker abgebrochen.',
  882. removeTitle: 'Aus Verlauf entfernen',
  883. removeMessage: 'Möchten Sie "{{name}}" wirklich aus dem Warteschlangenverlauf entfernen?',
  884. clearHistoryTitle: 'Verlauf löschen',
  885. clearHistoryMessage: 'Möchten Sie alle {{count}} Element(e) aus dem Verlauf entfernen?',
  886. cancelButton: 'Druck abbrechen',
  887. stopButton: 'Druck stoppen',
  888. thisPrint: 'diesen Druck',
  889. thisItem: 'dieses Element',
  890. },
  891. // Toast messages
  892. toast: {
  893. cancelled: 'Warteschlangenelement abgebrochen',
  894. cancelFailed: 'Element konnte nicht abgebrochen werden',
  895. removed: 'Warteschlangenelement entfernt',
  896. removeFailed: 'Element konnte nicht entfernt werden',
  897. stopped: 'Druck gestoppt',
  898. stopFailed: 'Druck konnte nicht gestoppt werden',
  899. released: 'Druck in Warteschlange freigegeben',
  900. startFailed: 'Druck konnte nicht gestartet werden',
  901. reorderFailed: 'Warteschlange konnte nicht neu geordnet werden',
  902. historyCleared: '{{count}} Verlaufselement(e) gelöscht',
  903. clearHistoryFailed: 'Verlauf konnte nicht gelöscht werden',
  904. updateFailed: 'Elemente konnten nicht aktualisiert werden',
  905. bulkCancelled: '{{count}} Element(e) abgebrochen',
  906. bulkCancelFailed: 'Elemente konnten nicht abgebrochen werden',
  907. },
  908. // Permissions
  909. permissions: {
  910. noStopPrint: 'Sie haben keine Berechtigung, Drucke zu stoppen',
  911. noStartPrint: 'Sie haben keine Berechtigung, Drucke zu starten',
  912. noEdit: 'Sie haben keine Berechtigung, dieses Warteschlangenelement zu bearbeiten',
  913. noCancel: 'Sie haben keine Berechtigung, dieses Warteschlangenelement abzubrechen',
  914. noRequeue: 'Sie haben keine Berechtigung, Elemente erneut einzureihen',
  915. noRemove: 'Sie haben keine Berechtigung, dieses Warteschlangenelement zu entfernen',
  916. noClearHistory: 'Sie haben keine Berechtigung, den gesamten Verlauf zu löschen',
  917. noEditItems: 'Sie haben keine Berechtigung, Warteschlangenelemente zu bearbeiten',
  918. noCancelItems: 'Sie haben keine Berechtigung, Warteschlangenelemente abzubrechen',
  919. },
  920. },
  921. backgroundDispatch: {
  922. unknownFile: 'Unbekannte Datei',
  923. unknownPrinter: 'Unbekannter Drucker',
  924. startingPrints: 'Starte Drucke',
  925. progressSummary: '{{complete}}/{{total}} abgeschlossen • Geplant: {{dispatched}} • In Bearbeitung: {{processing}}',
  926. expandDetails: 'Dispatch-Details ausklappen',
  927. collapseDetails: 'Dispatch-Details einklappen',
  928. dismissToast: 'Dispatch-Hinweis schließen',
  929. cancelDispatchJob: 'Dispatch-Job abbrechen',
  930. cancel: 'Abbrechen',
  931. cancelling: 'Wird abgebrochen…',
  932. status: {
  933. dispatched: 'Geplant',
  934. processing: 'In Bearbeitung',
  935. completed: 'Abgeschlossen',
  936. failed: 'Fehlgeschlagen',
  937. cancelled: 'Abgebrochen',
  938. },
  939. toast: {
  940. cancellingUpload: 'Upload wird abgebrochen...',
  941. cancelled: 'Dispatch abgebrochen',
  942. cancelFailed: 'Dispatch konnte nicht abgebrochen werden',
  943. completeWithFailures: 'Background Dispatch abgeschlossen: {{completed}} erfolgreich, {{failed}} fehlgeschlagen',
  944. completeSuccess: 'Background Dispatch abgeschlossen: {{completed}} erfolgreich',
  945. printStartedRemaining: '{{completed}} Druck(e) gestartet, {{remaining}} weitere werden gesendet...',
  946. },
  947. },
  948. // Statistics page
  949. stats: {
  950. title: 'Dashboard',
  951. subtitle: 'Widgets zum Neuanordnen ziehen. Auf das Augensymbol klicken zum Ausblenden.',
  952. overview: 'Übersicht',
  953. totalPrints: 'Gesamtdrucke',
  954. successRate: 'Erfolgsrate',
  955. totalPrintTime: 'Gesamtdruckzeit',
  956. printTime: 'Druckzeit',
  957. totalFilament: 'Gesamtverbrauch Filament',
  958. filamentUsed: 'Filamentverbrauch',
  959. filamentCost: 'Filamentkosten',
  960. totalCost: 'Gesamtkosten',
  961. energyUsed: 'Energieverbrauch',
  962. energyCost: 'Energiekosten',
  963. averagePrintTime: 'Durchschnittliche Druckzeit',
  964. printsPerDay: 'Drucke pro Tag',
  965. byPrinter: 'Nach Drucker',
  966. printsByPrinter: 'Drucke nach Drucker',
  967. byMaterial: 'Nach Material',
  968. byMonth: 'Nach Monat',
  969. last7Days: 'Letzte 7 Tage',
  970. last30Days: 'Letzte 30 Tage',
  971. last90Days: 'Letzte 90 Tage',
  972. allTime: 'Gesamt',
  973. // Widgets
  974. quickStats: 'Schnellstatistiken',
  975. printActivity: 'Druckaktivität',
  976. filamentTypes: 'Filamenttypen',
  977. filamentTrends: 'Filamenttrends',
  978. failureAnalysis: 'Fehleranalyse',
  979. timeAccuracy: 'Zeitgenauigkeit',
  980. successful: 'Erfolgreich:',
  981. failed: 'Fehlgeschlagen:',
  982. perfectEstimate: '100% = perfekte Schätzung',
  983. noTimeAccuracyData: 'Noch keine Zeitgenauigkeitsdaten',
  984. noFilamentData: 'Keine Filamentdaten verfügbar',
  985. noPrinterData: 'Keine Druckerdaten verfügbar',
  986. noPrintData: 'Keine Druckdaten verfügbar',
  987. noPrintDataLast30Days: 'Keine Druckdaten in den letzten 30 Tagen',
  988. failureReasons: 'Fehlerursachen',
  989. topFailureReasons: 'Häufigste Fehlerursachen',
  990. failedPrintsCount: '{{failed}} / {{total}} Drucke fehlgeschlagen',
  991. lastWeekRate: 'Letzte Woche: {{rate}}%',
  992. // Actions
  993. resetLayout: 'Layout zurücksetzen',
  994. recalculateCosts: 'Kosten neu berechnen',
  995. recalculateCostsHint: 'Alle Archivkosten mit aktuellen Filamentpreisen neu berechnen',
  996. exportStats: 'Statistiken exportieren',
  997. exportAsCsv: 'Als CSV exportieren',
  998. exportAsExcel: 'Als Excel exportieren',
  999. hiddenCount: '{{count}} ausgeblendet',
  1000. // Toast
  1001. exportDownloaded: 'Export heruntergeladen',
  1002. exportFailed: 'Export fehlgeschlagen',
  1003. layoutReset: 'Layout zurückgesetzt',
  1004. recalculatedCosts: 'Kosten für {{count}} Archive neu berechnet',
  1005. recalculateFailed: 'Kosten konnten nicht neu berechnet werden',
  1006. // Loading
  1007. loadingStats: 'Statistiken werden geladen...',
  1008. // Permissions
  1009. noPermissionResetLayout: 'Sie haben keine Berechtigung, das Layout zurückzusetzen',
  1010. noPermissionRecalculate: 'Sie haben keine Berechtigung, Kosten neu zu berechnen',
  1011. noPrintDataInRange: 'Keine Druckdaten im ausgewählten Zeitraum',
  1012. periodFilament: 'Filamentverbrauch',
  1013. periodCost: 'Kosten',
  1014. avgPerPrint: 'Durchschnitt pro Druck',
  1015. usageOverTime: 'Verbrauch im Zeitverlauf',
  1016. filamentByWeight: 'Gewicht',
  1017. printDuration: 'Druckdauer',
  1018. printerUtilization: 'Druckerauslastung',
  1019. filamentSuccess: 'Erfolg nach Material',
  1020. printHabits: 'Druckgewohnheiten',
  1021. printTimeOfDay: 'Druck-Tageszeit',
  1022. colorDistribution: 'Farbverteilung',
  1023. noColorData: 'Keine Farbdaten verfügbar',
  1024. records: 'Rekorde',
  1025. longestPrint: 'Längster Druck',
  1026. heaviestPrint: 'Schwerster Druck',
  1027. mostExpensivePrint: 'Teuerster Druck',
  1028. busiestDay: 'Aktivster Tag',
  1029. successStreak: 'Erfolgsserie',
  1030. streakPrint: 'aufeinanderfolgender Druck',
  1031. streakPrints: '{{count}} aufeinanderfolgende Drucke',
  1032. printerStats: 'Druckerstatistiken',
  1033. hours: 'Stunden',
  1034. avgPrints: 'Ø Drucke',
  1035. noArchiveData: 'Keine Druckdaten verfügbar',
  1036. filamentByTime: 'Zeitverlauf',
  1037. avgWeight: 'Ø Gewicht',
  1038. avgTime: 'Ø Zeit',
  1039. filamentByPrints: 'Drucke',
  1040. timeframe: {
  1041. 'today': 'Heute',
  1042. 'this-week': 'Diese Woche',
  1043. 'this-month': 'Dieser Monat',
  1044. 'last-7': 'Letzte 7 Tage',
  1045. 'last-30': 'Letzte 30 Tage',
  1046. 'last-90': 'Letzte 90 Tage',
  1047. 'this-year': 'Dieses Jahr',
  1048. 'all-time': 'Gesamt',
  1049. 'custom': 'Benutzerdefiniert',
  1050. from: 'Von',
  1051. to: 'Bis',
  1052. },
  1053. },
  1054. // Maintenance page
  1055. maintenance: {
  1056. title: 'Wartung',
  1057. overview: 'Übersicht',
  1058. allOk: 'Alle Wartungen aktuell',
  1059. dueCount: '{{count}} Aufgabe fällig',
  1060. dueCount_plural: '{{count}} Aufgaben fällig',
  1061. warningCount: '{{count}} Warnung',
  1062. warningCount_plural: '{{count}} Warnungen',
  1063. totalPrintTime: 'Gesamtdruckzeit',
  1064. nextMaintenance: 'Nächste Wartung',
  1065. nothingDue: 'Nichts fällig',
  1066. tasks: 'Aufgaben',
  1067. lastPerformed: 'Zuletzt durchgeführt',
  1068. interval: 'Intervall',
  1069. hoursRemaining: '{{hours}}h verbleibend',
  1070. hoursOverdue: '{{hours}}h überfällig',
  1071. markDone: 'Als erledigt markieren',
  1072. performMaintenance: 'Wartung durchführen',
  1073. history: 'Verlauf',
  1074. noHistory: 'Kein Wartungsverlauf',
  1075. editPrintHours: 'Druckstunden bearbeiten',
  1076. currentHours: 'Aktuelle Stunden',
  1077. // Tabs
  1078. statusTab: 'Status',
  1079. settingsTab: 'Einstellungen',
  1080. // Status
  1081. overdueCount: '{{count}} überfällig',
  1082. dueSoonCount: '{{count}} bald fällig',
  1083. dueSoon: 'Bald fällig',
  1084. allGood: 'Alles in Ordnung',
  1085. overdueBy: 'Überfällig um {{duration}}',
  1086. dueIn: 'Fällig in {{duration}}',
  1087. timeLeft: '{{duration}} verbleibend',
  1088. // Duration formats
  1089. day: '1 Tag',
  1090. days: '{{count}} Tage',
  1091. week: '1 Woche',
  1092. weeks: '{{count}} Wochen',
  1093. month: '1 Monat',
  1094. months: '{{count}} Monate',
  1095. year: '1 Jahr',
  1096. // Settings
  1097. maintenanceTypes: 'Wartungstypen',
  1098. maintenanceTypesDescription: 'Systemtypen und Ihre benutzerdefinierten Wartungsaufgaben',
  1099. addCustomType: 'Benutzerdefinierten Typ hinzufügen',
  1100. restoreDefaults: 'Standardaufgaben wiederherstellen',
  1101. intervalType: 'Intervalltyp',
  1102. intervalValue: 'Intervall ({{type}})',
  1103. icon: 'Symbol',
  1104. documentationLink: 'Dokumentationslink (optional)',
  1105. assignToPrinters: 'Druckern zuweisen',
  1106. selectAtLeastOnePrinter: 'Wählen Sie mindestens einen Drucker',
  1107. addType: 'Typ hinzufügen',
  1108. custom: 'Benutzerdefiniert',
  1109. printHours: 'Druckstunden',
  1110. calendarDays: 'Kalendertage',
  1111. exampleName: 'z.B. HEPA-Filter ersetzen',
  1112. viewDocumentation: 'Dokumentation anzeigen',
  1113. timeBasedInterval: 'Zeitbasiertes Intervall',
  1114. // Interval overrides
  1115. intervalOverrides: 'Intervall-Überschreibungen',
  1116. intervalOverridesDescription: 'Intervalle für bestimmte Drucker anpassen',
  1117. // Printer assignment
  1118. assignedToPrinters: 'Druckern zugewiesen:',
  1119. noPrintersAssigned: 'Keine Drucker zugewiesen',
  1120. addPrinterShort: 'Hinzufügen:',
  1121. printersAssignedClick: '{{count}} Drucker zugewiesen - klicken zum Verwalten',
  1122. removeFromPrinter: 'Von diesem Drucker entfernen',
  1123. // Types
  1124. types: {
  1125. lubricateCarbonRods: 'Karbonstäbe schmieren',
  1126. lubricateRails: 'Linearschienen schmieren',
  1127. cleanNozzle: 'Düse/Hotend reinigen',
  1128. checkBelts: 'Riemenspannung prüfen',
  1129. cleanBuildPlate: 'Druckbett reinigen',
  1130. checkExtruder: 'Extruderzahnräder prüfen',
  1131. checkCooling: 'Kühlungslüfter prüfen',
  1132. generalInspection: 'Allgemeine Inspektion',
  1133. cleanCarbonRods: 'Kohlenstoffstangen reinigen',
  1134. lubricateSteelRods: 'Stahlstangen schmieren',
  1135. cleanSteelRods: 'Stahlstangen reinigen',
  1136. cleanLinearRails: 'Linearschienen reinigen',
  1137. checkPtfeTube: 'PTFE-Schlauch prüfen',
  1138. replaceHepaFilter: 'HEPA-Filter ersetzen',
  1139. replaceCarbonFilter: 'Aktivkohlefilter ersetzen',
  1140. lubricateLeftNozzleRail: 'Linke Düsenschiene schmieren',
  1141. },
  1142. // Toast
  1143. maintenanceComplete: 'Wartung als abgeschlossen markiert',
  1144. typeUpdated: 'Wartungstyp aktualisiert',
  1145. typeDeleted: 'Wartungstyp gelöscht',
  1146. defaultsRestored: '{{count}} Standardaufgabe(n) wiederhergestellt',
  1147. printHoursUpdated: 'Druckstunden aktualisiert',
  1148. printerAssigned: 'Drucker zugewiesen',
  1149. printerRemoved: 'Drucker entfernt',
  1150. // Confirmation
  1151. deleteTypeConfirm: '"{{name}}" löschen?',
  1152. deleteSystemTypeTitle: 'Standard-Wartungsaufgabe löschen?',
  1153. deleteSystemTypeMessage: 'Möchten Sie die Standard-Wartungsaufgabe "{{name}}" wirklich löschen?',
  1154. // Permissions
  1155. noPermissionUpdate: 'Sie haben keine Berechtigung, Wartungselemente zu aktualisieren',
  1156. noPermissionPerform: 'Sie haben keine Berechtigung, Wartungen durchzuführen',
  1157. noPermissionEditTypes: 'Sie haben keine Berechtigung, Wartungstypen zu bearbeiten',
  1158. noPermissionDeleteTypes: 'Sie haben keine Berechtigung, Wartungstypen zu löschen',
  1159. noPermissionEditHours: 'Sie haben keine Berechtigung, Druckstunden zu bearbeiten',
  1160. noPermissionRemovePrinter: 'Sie haben keine Berechtigung, Druckerzuweisungen zu entfernen',
  1161. noPermissionAssignPrinter: 'Sie haben keine Berechtigung, Drucker zuzuweisen',
  1162. noPermissionEditIntervals: 'Sie haben keine Berechtigung, Intervalle zu bearbeiten',
  1163. // Configure link
  1164. configureSettings: 'Wartungstypen und Intervalle konfigurieren',
  1165. },
  1166. // Settings page
  1167. settings: {
  1168. title: 'Einstellungen',
  1169. general: 'Allgemein',
  1170. // Tab names
  1171. tabs: {
  1172. general: 'Allgemein',
  1173. smartPlugs: 'Smart Plugs',
  1174. notifications: 'Benachrichtigungen',
  1175. filament: 'Filament',
  1176. network: 'Netzwerk',
  1177. apiKeys: 'API-Schlüssel',
  1178. virtualPrinter: 'Virtueller Drucker',
  1179. users: 'Authentifizierung',
  1180. backup: 'Sicherung',
  1181. emailAuth: 'E-Mail-Authentifizierung',
  1182. },
  1183. // Email settings
  1184. email: {
  1185. smtpSettings: 'SMTP-Konfiguration',
  1186. smtpHost: 'SMTP-Server',
  1187. smtpPort: 'SMTP-Port',
  1188. security: 'Sicherheit',
  1189. authentication: 'Authentifizierung',
  1190. username: 'Benutzername',
  1191. password: 'Passwort',
  1192. fromEmail: 'Absender-E-Mail',
  1193. fromName: 'Absendername',
  1194. testConnection: 'SMTP-Verbindung testen',
  1195. testRecipient: 'Test-Empfänger-E-Mail',
  1196. sendTest: 'Test-E-Mail senden',
  1197. sending: 'Wird gesendet...',
  1198. save: 'Einstellungen speichern',
  1199. saving: 'Wird gespeichert...',
  1200. advancedAuth: 'Erweiterte Authentifizierung',
  1201. advancedAuthEnabled: 'Erweiterte Authentifizierung ist aktiviert',
  1202. advancedAuthEnabledDesc: 'E-Mail-basierte Benutzerverwaltungsfunktionen sind aktiv. Neue Benutzer erhalten automatisch generierte Passwörter per E-Mail und können ihr Passwort über die Passwort vergessen Funktion zurücksetzen.',
  1203. advancedAuthDisabled: 'Erweiterte Authentifizierung ist deaktiviert',
  1204. advancedAuthDisabledDesc: 'Aktivieren Sie die erweiterte Authentifizierung, um E-Mail-basierte Funktionen für die Benutzerverwaltung zu aktivieren.',
  1205. enable: 'Aktivieren',
  1206. disable: 'Deaktivieren',
  1207. feature1: 'Passwörter werden automatisch generiert und an neue Benutzer gesendet',
  1208. feature2: 'Benutzer können sich mit Benutzername oder E-Mail anmelden',
  1209. feature3: 'Passwort vergessen Funktion ist verfügbar',
  1210. feature4: 'Administratoren können Benutzerpasswörter per E-Mail zurücksetzen',
  1211. // Error messages
  1212. errors: {
  1213. requiredFields: 'Bitte füllen Sie alle Pflichtfelder aus',
  1214. usernameRequired: 'Benutzername ist erforderlich, wenn Authentifizierung aktiviert ist',
  1215. enterTestEmail: 'Bitte geben Sie eine Test-E-Mail-Adresse ein',
  1216. smtpServerAndEmail: 'Bitte füllen Sie SMTP-Server und Absender-E-Mail aus, bevor Sie testen',
  1217. usernamePasswordRequired: 'Benutzername und Passwort sind erforderlich, wenn Authentifizierung aktiviert ist',
  1218. configureSmtpFirst: 'Bitte konfigurieren und testen Sie zuerst die SMTP-Einstellungen',
  1219. },
  1220. // Success messages
  1221. success: {
  1222. settingsSaved: 'SMTP-Einstellungen erfolgreich gespeichert',
  1223. },
  1224. // Security options
  1225. securityOptions: {
  1226. starttls: 'STARTTLS (Port 587)',
  1227. ssl: 'SSL/TLS (Port 465)',
  1228. none: 'Keine (Port 25)',
  1229. },
  1230. // Authentication options
  1231. authOptions: {
  1232. enabled: 'Aktiviert',
  1233. disabled: 'Deaktiviert',
  1234. },
  1235. },
  1236. appearance: 'Erscheinungsbild',
  1237. notifications: 'Benachrichtigungen',
  1238. smartPlugs: 'Smart Plugs',
  1239. spoolman: 'Spoolman',
  1240. updates: 'Updates',
  1241. language: 'Sprache',
  1242. languageDescription: 'Wählen Sie Ihre bevorzugte Sprache',
  1243. theme: 'Design',
  1244. themeLight: 'Hell',
  1245. themeDark: 'Dunkel',
  1246. themeSystem: 'System',
  1247. defaultView: 'Standardansicht',
  1248. defaultViewDescription: 'Seite, die beim Öffnen der App angezeigt wird',
  1249. checkForUpdates: 'Nach Updates suchen',
  1250. autoUpdate: 'Automatische Updates',
  1251. currentVersion: 'Aktuelle Version',
  1252. latestVersion: 'Neueste Version',
  1253. upToDate: 'Sie sind auf dem neuesten Stand',
  1254. updateAvailable: 'Update verfügbar',
  1255. // Notifications
  1256. notificationLanguage: 'Benachrichtigungssprache',
  1257. notificationLanguageDescription: 'Sprache für Push-Benachrichtigungen',
  1258. bedCooledThreshold: 'Bett-Abkühlung Schwellenwert',
  1259. bedCooledThresholdDescription: 'Temperatur, unter der das Bett nach einem Druck als abgekühlt gilt',
  1260. notificationProviders: 'Benachrichtigungsanbieter',
  1261. addProvider: 'Anbieter hinzufügen',
  1262. editProvider: 'Anbieter bearbeiten',
  1263. providerType: 'Anbietertyp',
  1264. testNotification: 'Testbenachrichtigung',
  1265. testSuccess: 'Testbenachrichtigung erfolgreich gesendet',
  1266. testFailed: 'Testbenachrichtigung konnte nicht gesendet werden',
  1267. quietHours: 'Ruhezeiten',
  1268. quietHoursDescription: 'Keine Störungen während dieser Zeiten',
  1269. quietHoursStart: 'Beginn',
  1270. quietHoursEnd: 'Ende',
  1271. events: {
  1272. title: 'Benachrichtigungsereignisse',
  1273. printStart: 'Druck gestartet',
  1274. printComplete: 'Druck abgeschlossen',
  1275. printFailed: 'Druck fehlgeschlagen',
  1276. printStopped: 'Druck gestoppt',
  1277. printProgress: 'Fortschrittsmeldungen',
  1278. printProgressDescription: 'Bei 25%, 50%, 75% benachrichtigen',
  1279. printerOffline: 'Drucker offline',
  1280. printerError: 'Druckerfehler',
  1281. filamentLow: 'Filament niedrig',
  1282. maintenanceDue: 'Wartung fällig',
  1283. maintenanceDueDescription: 'Benachrichtigen, wenn Wartung erforderlich',
  1284. },
  1285. // Smart Plugs
  1286. smartPlug: {
  1287. title: 'Smart Plugs',
  1288. add: 'Smart Plug hinzufügen',
  1289. edit: 'Smart Plug bearbeiten',
  1290. name: 'Name',
  1291. ipAddress: 'IP-Adresse',
  1292. linkedPrinter: 'Verknüpfter Drucker',
  1293. autoOn: 'Automatisch einschalten',
  1294. autoOnDescription: 'Einschalten beim Druckstart',
  1295. autoOff: 'Automatisch ausschalten',
  1296. autoOffDescription: 'Ausschalten nach Druckende',
  1297. offDelay: 'Ausschaltverzögerung',
  1298. offDelayMinutes: 'Minuten nach Druck',
  1299. offDelayTemp: 'Wenn Düse unter Temperatur',
  1300. currentState: 'Aktueller Status',
  1301. turnOn: 'Einschalten',
  1302. turnOff: 'Ausschalten',
  1303. },
  1304. // Filament Tracking Mode
  1305. filamentTracking: 'Filament-Verfolgung',
  1306. filamentTrackingDesc: 'Wählen Sie, wie Sie Ihre Filamentspulen verfolgen möchten. Sie können das integrierte Inventar oder einen externen Spoolman-Server verwenden.',
  1307. trackingModeBuiltIn: 'Integriertes Inventar',
  1308. trackingModeBuiltInDesc: 'RFID-Erkennung und Verbrauchserfassung inklusive',
  1309. trackingModeSpoolmanDesc: 'Externer Filament-Management-Server',
  1310. builtInFeatureRfid: 'Erkennt automatisch Bambu Lab RFID-Spulen im AMS',
  1311. builtInFeatureUsage: 'Erfasst den Filamentverbrauch pro Druck',
  1312. builtInFeatureCatalog: 'Spulen, Farben und K-Faktor-Profile verwalten',
  1313. builtInFeatureThirdParty: 'Drittanbieter-Spulen können Inventarspulen zugewiesen werden',
  1314. amsSyncButton: 'Gewichte vom AMS synchronisieren',
  1315. amsSyncTitle: 'Spulengewichte vom AMS synchronisieren',
  1316. amsSyncMessage: 'Alle Inventar-Spulengewichte werden mit den aktuellen AMS-Restwerten der verbundenen Drucker überschrieben. Verwenden Sie dies zur Wiederherstellung beschädigter Gewichtsdaten. Drucker müssen online sein.',
  1317. amsSyncing: 'Synchronisiere...',
  1318. amsSyncSuccess: '{{synced}} Spule(n) synchronisiert, {{skipped}} übersprungen',
  1319. amsSyncError: 'Synchronisierung der Gewichte vom AMS fehlgeschlagen',
  1320. // Spoolman settings
  1321. spoolmanUrl: 'Spoolman URL',
  1322. spoolmanUrlHint: 'URL Ihres Spoolman-Servers (z.B. http://localhost:7912)',
  1323. spoolmanConnected: 'Verbunden',
  1324. spoolmanDisconnected: 'Nicht verbunden',
  1325. status: 'Status',
  1326. connect: 'Verbinden',
  1327. disconnect: 'Trennen',
  1328. howSyncWorks: 'So funktioniert die Synchronisierung',
  1329. syncInfoRfidOnly: 'Nur offizielle Bambu Lab Spulen mit RFID werden synchronisiert',
  1330. syncInfoAutoCreate: 'Neue Spulen werden bei der ersten Synchronisierung automatisch in Spoolman erstellt',
  1331. syncInfoThirdPartySkipped: 'Nicht-Bambu-Lab-Spulen (Drittanbieter, nachgefüllt) werden übersprungen',
  1332. linkingExistingSpools: 'Vorhandene Spulen verknüpfen',
  1333. linkingExistingSpoolsDesc: 'Um vorhandene Spoolman-Spulen mit Ihrem AMS zu verknüpfen, fahren Sie über einen AMS-Slot und klicken Sie auf "Mit Spoolman verknüpfen".',
  1334. syncMode: 'Synchronisierungsmodus',
  1335. syncModeAuto: 'Automatisch',
  1336. syncModeManual: 'Nur manuell',
  1337. syncModeAutoDesc: 'AMS-Daten werden automatisch synchronisiert, wenn Änderungen erkannt werden',
  1338. syncModeManualDesc: 'Nur bei manueller Auslösung synchronisieren',
  1339. syncAmsData: 'AMS-Daten synchronisieren',
  1340. syncAmsDataDesc: 'AMS-Daten des Druckers manuell mit Spoolman synchronisieren',
  1341. allPrinters: 'Alle Drucker',
  1342. // Default printer
  1343. noDefaultPrinter: 'Kein Standard (jedes Mal fragen)',
  1344. // Sidebar
  1345. sidebarOrder: 'Seitenleisten-Reihenfolge',
  1346. // Camera
  1347. saveThumbnails: 'Vorschaubilder speichern',
  1348. captureFinishPhoto: 'Abschlussfoto aufnehmen',
  1349. noPrintersConfigured: 'Keine Drucker konfiguriert',
  1350. // Archive settings
  1351. archiveMode: {
  1352. always: 'Immer Archiveintrag erstellen',
  1353. never: 'Nie Archiveintrag erstellen',
  1354. ask: 'Jedes Mal fragen',
  1355. },
  1356. // Updates
  1357. checkForUpdatesLabel: 'Nach Updates suchen',
  1358. checkPrinterFirmware: 'Drucker-Firmware prüfen',
  1359. includeBetaUpdates: 'Beta-Versionen einschließen',
  1360. includeBetaUpdatesDesc: 'Über Beta- und Vorabversionen bei der Updateprüfung benachrichtigen',
  1361. // Queue
  1362. enableRetry: 'Wiederholung aktivieren',
  1363. // Home Assistant
  1364. homeAssistantDescription: 'Smart Plugs über Home Assistant steuern',
  1365. environmentManagedLabel: '(Umgebungsvariable)',
  1366. autoEnabledViaEnv: 'Automatisch über Umgebungsvariablen aktiviert',
  1367. urlFromEnvReadOnly: 'Wert wird über HA_URL Umgebungsvariable gesetzt (schreibgeschützt)',
  1368. tokenFromEnvReadOnly: 'Wert wird über HA_TOKEN Umgebungsvariable gesetzt (schreibgeschützt)',
  1369. // MQTT
  1370. mqttConnectedTo: 'Verbunden mit',
  1371. // Prometheus
  1372. prometheusDescription: 'Druckerdaten im Prometheus-Format bereitstellen',
  1373. // Smart plugs empty state
  1374. noSmartPlugsTitle: 'Keine Smart Plugs konfiguriert',
  1375. noSmartPlugsDescription: 'Fügen Sie einen Tasmota-basierten Smart Plug hinzu, um den Energieverbrauch zu verfolgen und die Stromsteuerung zu automatisieren.',
  1376. // Notifications empty state
  1377. noProvidersTitle: 'Keine Anbieter konfiguriert',
  1378. noProvidersDescription: 'Fügen Sie einen Anbieter hinzu, um Benachrichtigungen zu erhalten.',
  1379. noTemplatesAvailable: 'Keine Vorlagen verfügbar. Starten Sie das Backend neu, um Standardvorlagen zu laden.',
  1380. // API permissions
  1381. apiPermissionView: 'Druckerstatus und Warteschlange anzeigen',
  1382. apiPermissionEdit: 'Elemente zur Druckwarteschlange hinzufügen und entfernen',
  1383. // API keys
  1384. apiKeysEmptyTitle: 'Keine API-Schlüssel',
  1385. apiKeysEmptyDescription: 'Erstellen Sie einen API-Schlüssel zur Integration mit externen Diensten.',
  1386. // Users
  1387. noUsersFound: 'Keine Benutzer gefunden',
  1388. noGroupsFound: 'Keine Gruppen gefunden',
  1389. noGroupsAvailable: 'Keine Gruppen verfügbar',
  1390. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1391. systemGroupWarning: 'System-Gruppennamen können nicht geändert werden',
  1392. // Auth disabled
  1393. authDisabledTitle: 'Authentifizierung ist deaktiviert',
  1394. authDisabledFeature1: 'Anmeldung zum Zugriff auf das System erforderlich',
  1395. authDisabledFeature2: 'Mehrere Benutzer mit gruppenbasierten Berechtigungen erstellen',
  1396. authDisabledFeature3: 'Zugriff mit über 50 granularen Berechtigungen steuern',
  1397. // User deletion
  1398. userHasCreated: 'Dieser Benutzer hat erstellt:',
  1399. userItemsQuestion: 'Was möchten Sie mit diesen Elementen tun?',
  1400. deleteUserConfirm: 'Möchten Sie diesen Benutzer wirklich löschen?',
  1401. actionCannotBeUndone: 'Diese Aktion kann nicht rückgängig gemacht werden.',
  1402. // Smart plugs
  1403. addFirstSmartPlug: 'Ersten Smart Plug hinzufügen',
  1404. // Notifications
  1405. providers: 'Anbieter',
  1406. log: 'Protokoll',
  1407. testAll: 'Alle testen',
  1408. testResults: 'Testergebnisse',
  1409. testPassedCount: '{{count}} bestanden',
  1410. testFailedCount: '{{count}} fehlgeschlagen',
  1411. messageTemplates: 'Nachrichtenvorlagen',
  1412. messageTemplatesDescription: 'Passen Sie Benachrichtigungen für jedes Ereignis an.',
  1413. // API Keys section
  1414. apiKeys: 'API-Schlüssel',
  1415. apiKeysDescription: 'Erstellen Sie API-Schlüssel für externe Integrationen und Webhooks.',
  1416. createKey: 'Schlüssel erstellen',
  1417. apiKeyCreated: 'API-Schlüssel erfolgreich erstellt',
  1418. apiKeyCopyWarning: 'Kopieren Sie diesen Schlüssel jetzt - er wird nicht mehr angezeigt!',
  1419. useInApiBrowser: 'Im API-Browser verwenden',
  1420. createNewApiKey: 'Neuen API-Schlüssel erstellen',
  1421. keyName: 'Schlüsselname',
  1422. keyNamePlaceholder: 'z.B. Home Assistant, OctoPrint',
  1423. readStatus: 'Status lesen',
  1424. readStatusDescription: 'Druckerstatus und Warteschlange anzeigen',
  1425. manageQueue: 'Warteschlange verwalten',
  1426. manageQueueDescription: 'Elemente zur Druckwarteschlange hinzufügen und entfernen',
  1427. controlPrinter: 'Drucker steuern',
  1428. controlPrinterDescription: 'Drucke pausieren, fortsetzen und stoppen',
  1429. unnamedKey: 'Unbenannter Schlüssel',
  1430. lastUsed: 'Zuletzt verwendet',
  1431. read: 'Lesen',
  1432. control: 'Steuern',
  1433. createFirstKey: 'Ersten Schlüssel erstellen',
  1434. webhookEndpoints: 'Webhook-Endpunkte',
  1435. webhookApiKeyHint: 'Verwenden Sie Ihren API-Schlüssel im X-API-Key-Header.',
  1436. webhook: {
  1437. getAllStatus: 'Alle Druckerstatus abrufen',
  1438. getSpecificStatus: 'Spezifischen Druckerstatus abrufen',
  1439. addToQueue: 'Zur Druckwarteschlange hinzufügen',
  1440. pausePrint: 'Druck pausieren',
  1441. resumePrint: 'Druck fortsetzen',
  1442. stopPrint: 'Druck stoppen',
  1443. },
  1444. apiBrowser: 'API-Browser',
  1445. apiBrowserDescription: 'Erkunden und testen Sie alle verfügbaren API-Endpunkte.',
  1446. apiKeyForTesting: 'API-Schlüssel zum Testen',
  1447. apiKeyPlaceholder: 'Fügen Sie hier Ihren API-Schlüssel ein, um authentifizierte Endpunkte zu testen...',
  1448. apiKeyHint: 'Dieser Schlüssel wird als X-API-Key-Header mit Anfragen gesendet.',
  1449. deleteApiKeyTitle: 'API-Schlüssel löschen',
  1450. deleteApiKeyMessage: 'Möchten Sie diesen API-Schlüssel wirklich löschen? Alle Integrationen, die diesen Schlüssel verwenden, funktionieren nicht mehr.',
  1451. deleteKey: 'Schlüssel löschen',
  1452. // Filament tab
  1453. amsDisplayThresholds: 'AMS-Anzeigeschwellenwerte',
  1454. amsThresholdsDescription: 'Konfigurieren Sie Farbschwellenwerte für AMS-Feuchtigkeits- und Temperaturanzeigen.',
  1455. humidity: 'Luftfeuchtigkeit',
  1456. goodGreen: 'Gut (grün)',
  1457. fairOrange: 'Mittel (orange)',
  1458. aboveFairBad: 'Über dem mittleren Schwellenwert wird rot angezeigt (schlecht)',
  1459. temperature: 'Temperatur',
  1460. goodBlue: 'Gut (blau)',
  1461. aboveFairHot: 'Über dem mittleren Schwellenwert wird rot angezeigt (heiß)',
  1462. historyRetention: 'Verlaufsaufbewahrung',
  1463. keepSensorHistory: 'Sensorverlauf behalten für',
  1464. historyRetentionDescription: 'Ältere Feuchtigkeits- und Temperaturdaten werden automatisch gelöscht',
  1465. printModal: 'Druckdialog',
  1466. expandCustomMapping: 'Benutzerdefinierte Zuordnung standardmäßig erweitern',
  1467. expandCustomMappingDescription: 'Bei Druck auf mehrere Drucker die AMS-Zuordnung pro Drucker erweitert anzeigen',
  1468. // User management
  1469. authentication: 'Authentifizierung',
  1470. authEnabledDescription: 'Ihre Instanz ist mit Benutzerauthentifizierung gesichert',
  1471. authDisabledDescription: 'Aktivieren Sie die Anmeldepflicht und verwalten Sie den Benutzerzugriff',
  1472. authDisabledMessage: 'Aktivieren Sie die Authentifizierung, um Benutzerkonten zu erstellen, Berechtigungen zu verwalten und Ihre Bambuddy-Instanz zu sichern.',
  1473. enableAuthentication: 'Authentifizierung aktivieren',
  1474. currentUser: 'Aktueller Benutzer',
  1475. changePassword: 'Passwort ändern',
  1476. admin: 'Admin',
  1477. users: 'Benutzer',
  1478. addUser: 'Benutzer hinzufügen',
  1479. groups: 'Gruppen',
  1480. addGroup: 'Gruppe hinzufügen',
  1481. system: 'System',
  1482. noDescription: 'Keine Beschreibung',
  1483. userCount: '{{count}} Benutzer',
  1484. permissionCount: '{{count}} Berechtigungen',
  1485. createUser: 'Benutzer erstellen',
  1486. username: 'Benutzername',
  1487. enterUsername: 'Benutzername eingeben',
  1488. password: 'Passwort',
  1489. enterPassword: 'Passwort eingeben (min. 6 Zeichen)',
  1490. confirmPassword: 'Passwort bestätigen',
  1491. confirmPasswordPlaceholder: 'Passwort bestätigen',
  1492. // Title tooltips
  1493. viewReleaseOnGitHub: 'Release auf GitHub anzeigen',
  1494. turnAllPlugsOn: 'Alle Stecker einschalten',
  1495. turnAllPlugsOff: 'Alle Stecker ausschalten',
  1496. // Modal: Clear logs
  1497. clearNotificationLogs: 'Benachrichtigungsprotokolle löschen',
  1498. clearLogsMessage: 'Dadurch werden alle Benachrichtigungsprotokolle, die älter als 30 Tage sind, dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.',
  1499. clearLogs: 'Protokolle löschen',
  1500. // Modal: Reset UI
  1501. resetUiPreferences: 'UI-Einstellungen zurücksetzen',
  1502. resetUiPreferencesMessage: 'Dadurch werden alle UI-Einstellungen auf Standardwerte zurückgesetzt: Seitenleisten-Reihenfolge, Theme, Dashboard-Layout, Ansichtsmodi und Sortiereinstellungen. Ihre Drucker, Archive und Servereinstellungen werden NICHT beeinträchtigt. Die Seite wird nach dem Löschen neu geladen.',
  1503. resetPreferences: 'Einstellungen zurücksetzen',
  1504. // Modal: Delete group
  1505. deleteGroupTitle: 'Gruppe löschen',
  1506. deleteGroupMessage: 'Möchten Sie diese Gruppe wirklich löschen? Benutzer in dieser Gruppe verlieren diese Berechtigungen.',
  1507. deleteGroup: 'Gruppe löschen',
  1508. // Modal: Disable auth
  1509. disableAuthenticationTitle: 'Authentifizierung deaktivieren',
  1510. disableAuthenticationMessage: 'Möchten Sie die Authentifizierung wirklich deaktivieren? Dadurch wird Ihre Bambuddy-Instanz ohne Anmeldung zugänglich. Alle Benutzer bleiben in der Datenbank, aber die Authentifizierung wird deaktiviert.',
  1511. disableAuthentication: 'Authentifizierung deaktivieren',
  1512. // Additional settings
  1513. configureBambuddy: 'Bambuddy konfigurieren',
  1514. systemDefault: 'Systemstandard',
  1515. archiveSettings: 'Archiv-Einstellungen',
  1516. newWindow: 'Neues Fenster',
  1517. embeddedOverlay: 'Eingebettetes Overlay',
  1518. preferredSlicer: 'Bevorzugter Slicer',
  1519. preferredSlicerDescription: 'Wähle die Slicer-Anwendung zum Öffnen von Dateien',
  1520. externalCameras: 'Externe Kameras',
  1521. costTracking: 'Kostenverfolgung',
  1522. printsOnly: 'Nur Drucke',
  1523. totalConsumption: 'Gesamtverbrauch',
  1524. dataManagement: 'Datenverwaltung',
  1525. storageUsage: 'Speichernutzung',
  1526. storageUsageDescription: 'Aufschlüsselung der Datennutzung nach Kategorie',
  1527. storageUsageTotal: 'Gesamt',
  1528. storageUsageErrors: 'Fehler',
  1529. storageUsageOtherBreakdown: 'Sonstiges (enthält statische Assets, Skripte und Konfigurationsdateien)',
  1530. storageUsageSystem: 'System',
  1531. storageUsageData: 'Daten',
  1532. storageUsageUnavailable: 'Speichernutzungsinformationen nicht verfügbar',
  1533. clearNotificationLogsDescription: 'Benachrichtigungsprotokolle älter als 30 Tage löschen',
  1534. resetUiPreferencesDescription: 'Seitenleisten-Reihenfolge, Theme, Ansichtsmodi und Layout-Einstellungen zurücksetzen. Drucker, Archive und Einstellungen werden nicht beeinflusst.',
  1535. enableHomeAssistant: 'Home Assistant aktivieren',
  1536. enableMqtt: 'MQTT aktivieren',
  1537. useTls: 'TLS verwenden',
  1538. enableMetricsEndpoint: 'Metrik-Endpunkt aktivieren',
  1539. availableMetrics: 'Verfügbare Metriken',
  1540. editUser: 'Benutzer bearbeiten',
  1541. deleteUserTitle: 'Benutzer löschen',
  1542. groupName: 'Gruppenname',
  1543. // Placeholders
  1544. leaveEmptyForAnonymous: 'Leer lassen für anonym',
  1545. leaveEmptyForNoAuth: 'Leer lassen für keine Authentifizierung',
  1546. enterNewPassword: 'Neues Passwort eingeben',
  1547. confirmNewPassword: 'Neues Passwort bestätigen',
  1548. enterGroupName: 'Gruppenname eingeben',
  1549. enterDescriptionOptional: 'Beschreibung eingeben (optional)',
  1550. enterCurrentPassword: 'Aktuelles Passwort eingeben',
  1551. enterNewPasswordMin6: 'Neues Passwort eingeben (min. 6 Zeichen)',
  1552. toast: {
  1553. keyCopied: 'Schlüssel in Zwischenablage kopiert',
  1554. copyFailed: 'Schlüssel konnte nicht kopiert werden',
  1555. keyAddedToBrowser: 'Schlüssel zum API-Browser hinzugefügt',
  1556. clearLogsFailed: 'Protokolle konnten nicht gelöscht werden',
  1557. uiPreferencesReset: 'UI-Einstellungen zurückgesetzt. Wird neu geladen...',
  1558. authDisabled: 'Authentifizierung erfolgreich deaktiviert',
  1559. authDisableFailed: 'Authentifizierung konnte nicht deaktiviert werden',
  1560. apiKeyCreated: 'API-Schlüssel erstellt',
  1561. apiKeyDeleted: 'API-Schlüssel gelöscht',
  1562. userCreated: 'Benutzer erfolgreich erstellt',
  1563. userUpdated: 'Benutzer erfolgreich aktualisiert',
  1564. userDeleted: 'Benutzer erfolgreich gelöscht',
  1565. groupCreated: 'Gruppe erfolgreich erstellt',
  1566. groupUpdated: 'Gruppe erfolgreich aktualisiert',
  1567. groupDeleted: 'Gruppe erfolgreich gelöscht',
  1568. fillRequiredFields: 'Bitte füllen Sie alle erforderlichen Felder aus',
  1569. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1570. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1571. enterGroupName: 'Bitte geben Sie einen Gruppennamen ein',
  1572. settingsSaved: 'Einstellungen gespeichert',
  1573. cameraSettingsSaved: 'Kamera-Einstellungen gespeichert',
  1574. enterCameraUrl: 'Bitte geben Sie eine Kamera-URL ein',
  1575. passwordChanged: 'Passwort erfolgreich geändert',
  1576. connectionFailed: 'Verbindung fehlgeschlagen',
  1577. testFailed: 'Test fehlgeschlagen',
  1578. cameraConnected: 'Kamera verbunden{{resolution}}',
  1579. },
  1580. testConnection: 'Verbindung testen',
  1581. catalog: {
  1582. spoolCatalog: 'Spulenkatalog',
  1583. spoolCatalogDescription: 'Leerspulengewichte nach Marke/Typ. Wird für die automatische Gewichtssuche beim Hinzufügen von Spulen verwendet.',
  1584. searchCatalog: 'Katalog durchsuchen...',
  1585. addNewEntry: 'Neuen Eintrag hinzufügen',
  1586. namePlaceholder: 'Name (z.B. Bambu Lab - Plastik)',
  1587. weight: 'Gewicht',
  1588. type: 'Typ',
  1589. default: 'Standard',
  1590. custom: 'Benutzerdefiniert',
  1591. noMatch: 'Keine Einträge entsprechen Ihrer Suche',
  1592. empty: 'Keine Einträge im Katalog',
  1593. deleteEntry: 'Eintrag löschen',
  1594. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  1595. resetCatalog: 'Katalog zurücksetzen',
  1596. resetConfirm: 'Katalog auf Standardwerte zurücksetzen? Alle benutzerdefinierten Einträge werden entfernt.',
  1597. loadFailed: 'Spulenkatalog konnte nicht geladen werden',
  1598. nameWeightRequired: 'Name und Gewicht sind erforderlich',
  1599. entryAdded: 'Eintrag hinzugefügt',
  1600. addFailed: 'Eintrag konnte nicht hinzugefügt werden',
  1601. entryUpdated: 'Eintrag aktualisiert',
  1602. updateFailed: 'Eintrag konnte nicht aktualisiert werden',
  1603. entryDeleted: 'Eintrag gelöscht',
  1604. deleteFailed: 'Eintrag konnte nicht gelöscht werden',
  1605. resetSuccess: 'Katalog auf Standardwerte zurückgesetzt',
  1606. resetFailed: 'Katalog konnte nicht zurückgesetzt werden',
  1607. exported: '{{count}} Einträge exportiert',
  1608. imported: '{{added}} Einträge importiert ({{skipped}} übersprungen)',
  1609. importFailed: 'Import fehlgeschlagen: ungültiges JSON-Format',
  1610. exportTooltip: 'Katalog als JSON exportieren',
  1611. importTooltip: 'Katalog aus JSON importieren',
  1612. resetTooltip: 'Auf Standardwerte zurücksetzen',
  1613. },
  1614. colorCatalog: {
  1615. title: 'Farbkatalog',
  1616. description: 'Filamentfarben nach Hersteller/Material. Wird für die automatische Farbsuche beim Hinzufügen von Spulen verwendet.',
  1617. searchColors: 'Farben durchsuchen...',
  1618. allManufacturers: 'Alle Hersteller',
  1619. addNewColor: 'Neue Farbe hinzufügen',
  1620. manufacturer: 'Hersteller',
  1621. colorName: 'Farbname',
  1622. hex: 'Hex',
  1623. materialOptional: 'Material (optional)',
  1624. showing: '{{filtered}} von {{total}} Farben angezeigt',
  1625. noMatch: 'Keine Farben entsprechen Ihrer Suche',
  1626. empty: 'Keine Farben im Katalog',
  1627. deleteColor: 'Farbe löschen',
  1628. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  1629. resetCatalog: 'Farbkatalog zurücksetzen',
  1630. resetConfirm: 'Katalog auf Standardwerte zurücksetzen? Alle benutzerdefinierten Farben werden entfernt.',
  1631. sync: 'Sync',
  1632. starting: 'Starten...',
  1633. syncTooltip: 'Von FilamentColors.xyz synchronisieren (2000+ Farben)',
  1634. loadFailed: 'Farbkatalog konnte nicht geladen werden',
  1635. fieldsRequired: 'Hersteller, Farbname und Hex-Farbe sind erforderlich',
  1636. colorAdded: 'Farbe hinzugefügt',
  1637. addFailed: 'Farbe konnte nicht hinzugefügt werden',
  1638. colorUpdated: 'Farbe aktualisiert',
  1639. updateFailed: 'Farbe konnte nicht aktualisiert werden',
  1640. colorDeleted: 'Farbe gelöscht',
  1641. deleteFailed: 'Farbe konnte nicht gelöscht werden',
  1642. resetSuccess: 'Farbkatalog auf Standardwerte zurückgesetzt',
  1643. resetFailed: 'Katalog konnte nicht zurückgesetzt werden',
  1644. syncUpToDate: 'Bereits aktuell ({{count}} Farben geprüft)',
  1645. syncComplete: '{{added}} neue Farben hinzugefügt ({{skipped}} bereits vorhanden)',
  1646. syncError: 'Sync-Fehler',
  1647. syncFailed: 'Synchronisierung von FilamentColors.xyz fehlgeschlagen',
  1648. exported: '{{count}} Farben exportiert',
  1649. imported: '{{added}} Farben importiert ({{skipped}} übersprungen)',
  1650. importFailed: 'Import fehlgeschlagen: ungültiges JSON-Format',
  1651. },
  1652. // General tab
  1653. dateFormat: 'Datumsformat',
  1654. dateFormatUs: 'US (MM/TT/JJJJ)',
  1655. dateFormatEu: 'EU (TT/MM/JJJJ)',
  1656. dateFormatIso: 'ISO (JJJJ-MM-TT)',
  1657. timeFormat: 'Zeitformat',
  1658. timeFormat12: '12-Stunden (3:30 PM)',
  1659. timeFormat24: '24-Stunden (15:30)',
  1660. defaultPrinter: 'Standarddrucker',
  1661. defaultPrinterDescription: 'Diesen Drucker für Uploads, Nachdrucke und andere Vorgänge vorauswählen.',
  1662. slicerBambuStudio: 'Bambu Studio',
  1663. slicerOrcaSlicer: 'OrcaSlicer',
  1664. sidebarOrderDescription: 'Elemente in der Seitenleiste per Drag & Drop neu anordnen. Hier auf Standardreihenfolge zurücksetzen.',
  1665. reset: 'Zurücksetzen',
  1666. // Appearance
  1667. darkMode: 'Dunkelmodus',
  1668. lightMode: 'Hellmodus',
  1669. active: '(aktiv)',
  1670. background: 'Hintergrund',
  1671. accent: 'Akzent',
  1672. style: 'Stil',
  1673. bgNeutral: 'Neutral',
  1674. bgWarm: 'Warm',
  1675. bgCool: 'Kühl',
  1676. bgOled: 'OLED Schwarz',
  1677. bgSlate: 'Schieferblau',
  1678. bgForest: 'Waldgrün',
  1679. accentGreen: 'Grün',
  1680. accentTeal: 'Türkis',
  1681. accentBlue: 'Blau',
  1682. accentOrange: 'Orange',
  1683. accentPurple: 'Lila',
  1684. accentRed: 'Rot',
  1685. styleClassic: 'Klassisch',
  1686. styleGlow: 'Leuchtend',
  1687. styleVibrant: 'Lebendig',
  1688. themeToggleHint: 'Zwischen Hell- und Dunkelmodus mit dem Sonnen-/Mondsymbol in der Seitenleiste wechseln.',
  1689. // Archive
  1690. autoArchivePrints: 'Drucke automatisch archivieren',
  1691. autoArchiveDescription: '3MF-Dateien automatisch speichern, wenn Drucke abgeschlossen sind',
  1692. saveThumbnailsDescription: 'Vorschaubilder aus 3MF-Dateien extrahieren und speichern',
  1693. captureFinishPhotoDescription: 'Foto von der Druckerkamera aufnehmen, wenn der Druck abgeschlossen ist',
  1694. ffmpegNotInstalled: 'ffmpeg nicht installiert',
  1695. ffmpegRequired: 'Kameraaufnahme benötigt ffmpeg. Installieren über <brew>brew install ffmpeg</brew> (macOS) oder <apt>apt install ffmpeg</apt> (Linux).',
  1696. // Camera
  1697. camera: 'Kamera',
  1698. cameraViewMode: 'Kamera-Ansichtsmodus',
  1699. cameraOverlayDescription: 'Kamera öffnet sich als größenveränderbares Overlay auf dem Hauptbildschirm',
  1700. cameraWindowDescription: 'Kamera öffnet sich in einem separaten Browserfenster',
  1701. externalCamerasDescription: 'Externe Kameras konfigurieren, um die eingebaute Druckerkamera zu ersetzen. Unterstützt MJPEG-Streams, RTSP, HTTP-Snapshots und USB-Kameras (V4L2). Wenn aktiviert, wird die externe Kamera für Live-Ansicht und Abschlussfotos verwendet.',
  1702. cameraPlaceholderUsb: 'Gerätepfad (/dev/video0)',
  1703. cameraPlaceholderUrl: 'Kamera-URL (rtsp://... oder http://...)',
  1704. cameraTypeMjpeg: 'MJPEG-Stream',
  1705. cameraTypeRtsp: 'RTSP-Stream',
  1706. cameraTypeSnapshot: 'HTTP-Snapshot',
  1707. cameraTypeUsb: 'USB-Kamera (V4L2)',
  1708. test: 'Testen',
  1709. connected: 'Verbunden',
  1710. disconnected: 'Getrennt',
  1711. // Cost tracking
  1712. currency: 'Währung',
  1713. defaultFilamentCost: 'Standard-Filamentkosten (pro kg)',
  1714. electricityCost: 'Stromkosten pro kWh',
  1715. energyDisplayMode: 'Energieanzeige-Modus',
  1716. energyModePrintDescription: 'Dashboard zeigt Summe der während Drucken verbrauchten Energie',
  1717. energyModeTotalDescription: 'Dashboard zeigt Gesamtenergie der Smart Plugs',
  1718. // File Manager
  1719. fileManager: 'Dateimanager',
  1720. createArchiveEntry: 'Archiveintrag beim Drucken erstellen',
  1721. createArchiveEntryDescription: 'Beim Drucken aus dem Dateimanager optional einen Archiveintrag erstellen',
  1722. lowDiskSpaceWarning: 'Warnung bei wenig Speicherplatz',
  1723. lowDiskSpaceDescription: 'Warnung anzeigen, wenn freier Speicherplatz unter diesen Schwellenwert fällt',
  1724. // Updates
  1725. printerFirmware: 'Drucker-Firmware',
  1726. checkFirmwareDescription: 'Nach Firmware-Updates von Bambu Lab suchen',
  1727. bambuddySoftware: 'Bambuddy Software',
  1728. autoCheckDescription: 'Automatisch beim Start nach neuen Versionen suchen',
  1729. checkNow: 'Jetzt prüfen',
  1730. updateAvailableVersion: 'Update verfügbar: v{{version}}',
  1731. releaseNotes: 'Versionshinweise',
  1732. updateViaDocker: 'Update über Docker Compose:',
  1733. installUpdate: 'Update installieren',
  1734. latestVersionRunning: 'Sie verwenden die neueste Version',
  1735. failedToCheckUpdates: 'Update-Prüfung fehlgeschlagen: {{error}}',
  1736. // Data Management
  1737. backupRestore: 'Sicherung & Wiederherstellung',
  1738. backupRestoreDescription: 'Einstellungen exportieren/importieren und GitHub-Backup konfigurieren',
  1739. goToBackup: 'Zur Sicherung',
  1740. // Network tab
  1741. externalUrl: 'Externe URL',
  1742. externalUrlDescription: 'Die externe URL, unter der Bambuddy erreichbar ist. Wird für Benachrichtigungsbilder und externe Integrationen verwendet.',
  1743. bambuddyUrl: 'Bambuddy-URL',
  1744. externalUrlHint: 'Protokoll und Port angeben (z.B. http://192.168.1.100:8000)',
  1745. ftpRetry: 'FTP-Wiederholung',
  1746. ftpRetryDescription: 'FTP-Operationen bei unzuverlässigem Drucker-WLAN wiederholen. Gilt für 3MF-Downloads, Druck-Uploads, Zeitraffer-Downloads und Firmware-Updates.',
  1747. autoRetryDescription: 'Fehlgeschlagene FTP-Operationen automatisch wiederholen',
  1748. retryAttempts: 'Wiederholungsversuche',
  1749. retryDelay: 'Wiederholungsverzögerung',
  1750. connectionTimeout: 'Verbindungs-Timeout',
  1751. time_one: '{{count}} Mal',
  1752. time_other: '{{count}} Mal',
  1753. second_one: '{{count}} Sekunde',
  1754. second_other: '{{count}} Sekunden',
  1755. nSeconds: '{{count}} Sekunden',
  1756. increaseForWeakWifi: 'Erhöhen für Drucker mit schwachem WLAN',
  1757. // Home Assistant
  1758. homeAssistant: 'Home Assistant',
  1759. homeAssistantFullDescription: 'Mit Home Assistant verbinden, um Smart Plugs über die HA REST-API zu steuern. Unterstützt Switch-, Light-, Input_Boolean- und Script-Entitäten.',
  1760. homeAssistantUrl: 'Home Assistant URL',
  1761. longLivedAccessToken: 'Langlebiges Zugriffstoken',
  1762. haTokenHint: 'Token in HA erstellen: Profil → Langlebige Zugriffstoken → Token erstellen',
  1763. connectionSuccessful: 'Verbindung erfolgreich',
  1764. connectionFailed: 'Verbindung fehlgeschlagen',
  1765. haConnectionSuccess: 'Erfolgreich mit Home Assistant verbunden.',
  1766. haConnectionFailed: 'Verbindung zu Home Assistant fehlgeschlagen.',
  1767. // MQTT
  1768. mqttPublishing: 'MQTT-Veröffentlichung',
  1769. mqttDescription: 'BamBuddy-Ereignisse an einen externen MQTT-Broker zur Integration mit Node-RED, Home Assistant und anderen Automatisierungssystemen veröffentlichen.',
  1770. mqttEnableDescription: 'Ereignisse an externen MQTT-Broker veröffentlichen',
  1771. brokerHostname: 'Broker-Hostname',
  1772. port: 'Port',
  1773. usernameOptional: 'Benutzername (optional)',
  1774. passwordOptional: 'Passwort (optional)',
  1775. topicPrefix: 'Topic-Präfix',
  1776. topicPrefixHint: 'Topics werden sein: {{prefix}}/printers/<serial>/status, etc.',
  1777. // Prometheus
  1778. prometheusMetrics: 'Prometheus-Metriken',
  1779. prometheusEndpointDescription: 'Druckermetriken unter <code>/api/v1/metrics</code> für Prometheus/Grafana-Überwachung bereitstellen.',
  1780. bearerTokenOptional: 'Bearer-Token (optional)',
  1781. bearerTokenHint: 'Wenn gesetzt, müssen Anfragen <code>Authorization: Bearer <token></code> enthalten',
  1782. metricsConnectionStatus: 'Verbindungsstatus',
  1783. metricsPrinterState: 'Druckerstatus (idle/printing/etc)',
  1784. metricsPrintProgress: 'Druckfortschritt 0-100%',
  1785. metricsBedTemp: 'Betttemperatur',
  1786. metricsNozzleTemp: 'Düsentemperatur',
  1787. metricsPrintsTotal: 'Gesamtdrucke nach Ergebnis',
  1788. metricsMore: '...und mehr (Schichten, Lüfter, Warteschlange, Filamentverbrauch)',
  1789. // Smart Plugs
  1790. smartPlugsDescription: 'Smart Plugs (Tasmota oder Home Assistant) verbinden, um Stromsteuerung zu automatisieren und Energieverbrauch für Ihre Drucker zu verfolgen.',
  1791. allOn: 'Alle Ein',
  1792. allOff: 'Alle Aus',
  1793. addSmartPlug: 'Smart Plug hinzufügen',
  1794. energySummary: 'Energieübersicht',
  1795. currentPower: 'Aktuelle Leistung',
  1796. plugsOnline: '{{reachable}}/{{total}} Plugs online',
  1797. today: 'Heute',
  1798. yesterday: 'Gestern',
  1799. total: 'Gesamt',
  1800. enablePlugsForSummary: 'Plugs aktivieren, um Energieübersicht zu sehen',
  1801. addNotificationProvider: 'Hinzufügen',
  1802. // Users
  1803. systemBadge: '(System)',
  1804. creating: 'Erstellen...',
  1805. changing: 'Ändern...',
  1806. deleteUserAndItems: 'Benutzer UND dessen Elemente löschen',
  1807. deleteUserKeepItems: 'Benutzer löschen, Elemente behalten (werden herrenlos)',
  1808. ok: 'OK',
  1809. },
  1810. // Notifications (for push notifications)
  1811. notification: {
  1812. printStarted: {
  1813. title: 'Druck gestartet',
  1814. body: '{{printer}}: {{filename}} wird gedruckt',
  1815. },
  1816. printCompleted: {
  1817. title: 'Druck abgeschlossen',
  1818. body: '{{printer}}: {{filename}} erfolgreich abgeschlossen',
  1819. },
  1820. printFailed: {
  1821. title: 'Druck fehlgeschlagen',
  1822. body: '{{printer}}: {{filename}} ist fehlgeschlagen',
  1823. },
  1824. printStopped: {
  1825. title: 'Druck gestoppt',
  1826. body: '{{printer}}: {{filename}} wurde gestoppt',
  1827. },
  1828. printProgress: {
  1829. title: 'Druckfortschritt',
  1830. body: '{{printer}}: {{filename}} ist zu {{percent}}% abgeschlossen',
  1831. },
  1832. printerOffline: {
  1833. title: 'Drucker offline',
  1834. body: '{{printer}} ist offline',
  1835. },
  1836. printerError: {
  1837. title: 'Druckerfehler',
  1838. body: '{{printer}}: {{error}}',
  1839. },
  1840. filamentLow: {
  1841. title: 'Filament niedrig',
  1842. body: '{{printer}}: Filament geht zur Neige',
  1843. },
  1844. maintenanceDue: {
  1845. title: 'Wartung fällig',
  1846. body: '{{printer}}: {{items}} benötigen Aufmerksamkeit',
  1847. },
  1848. },
  1849. // Errors
  1850. errors: {
  1851. generic: 'Etwas ist schiefgelaufen',
  1852. networkError: 'Netzwerkfehler. Bitte überprüfen Sie Ihre Verbindung.',
  1853. notFound: 'Nicht gefunden',
  1854. unauthorized: 'Nicht autorisiert',
  1855. serverError: 'Serverfehler',
  1856. validationError: 'Bitte überprüfen Sie Ihre Eingabe',
  1857. printerConnectionFailed: 'Verbindung zum Drucker fehlgeschlagen',
  1858. saveFailed: 'Speichern fehlgeschlagen',
  1859. deleteFailed: 'Löschen fehlgeschlagen',
  1860. loadFailed: 'Laden der Daten fehlgeschlagen',
  1861. },
  1862. // HMS Errors modal
  1863. hmsErrors: {
  1864. title: 'Fehler - {{name}}',
  1865. noErrors: 'Keine Fehler',
  1866. viewOnWiki: 'Im Bambu Lab Wiki ansehen',
  1867. clearInstructions: 'Löschen Sie die Fehler am Drucker, um sie hier zu entfernen.',
  1868. clearErrors: 'Fehler löschen',
  1869. clearSuccess: 'HMS-Fehler gelöscht',
  1870. clearFailed: 'HMS-Fehler konnten nicht gelöscht werden',
  1871. },
  1872. // MQTT Debug modal
  1873. mqttDebug: {
  1874. title: 'MQTT-Debug-Protokoll',
  1875. searchPlaceholder: 'Topic oder Payload suchen...',
  1876. noMessages: 'Noch keine Nachrichten protokolliert',
  1877. startLoggingHint: 'Klicken Sie auf "Protokollierung starten", um MQTT-Nachrichten aufzuzeichnen',
  1878. noMessagesMatch: 'Keine Nachrichten entsprechen Ihrem Filter',
  1879. adjustFilterHint: 'Versuchen Sie, Ihre Such- oder Filterkriterien anzupassen',
  1880. incoming: 'Eingehend',
  1881. outgoing: 'Ausgehend',
  1882. loggingStopped: 'Protokollierung gestoppt',
  1883. loggingActive: 'Protokollierung aktiv - Nachrichten werden automatisch aktualisiert',
  1884. startLogging: 'Protokollierung starten',
  1885. stopLogging: 'Protokollierung stoppen',
  1886. clearLog: 'Protokoll löschen',
  1887. topic: 'Topic',
  1888. timestamp: 'Zeitstempel',
  1889. direction: 'Richtung',
  1890. all: 'Alle',
  1891. },
  1892. // Printer File Manager modal (printer internal storage)
  1893. printerFiles: {
  1894. title: 'Dateimanager',
  1895. storageUsed: 'Belegt:',
  1896. storageFree: 'Frei:',
  1897. filterPlaceholder: 'Dateien filtern...',
  1898. deleteButton: 'Löschen',
  1899. deleteFiles: '{{count}} Dateien löschen',
  1900. deleteFileConfirm: '"{{name}}" löschen? Dies kann nicht rückgängig gemacht werden.',
  1901. deleteFilesConfirm: '{{count}} ausgewählte Dateien löschen? Dies kann nicht rückgängig gemacht werden.',
  1902. noFiles: 'Keine Dateien auf dem Drucker',
  1903. loadingFiles: 'Dateien werden geladen...',
  1904. failedToLoad: 'Dateien konnten nicht geladen werden',
  1905. toast: {
  1906. filesDeleted: '{{count}} Datei(en) gelöscht',
  1907. deleteFailed: 'Löschen fehlgeschlagen: {{error}}',
  1908. },
  1909. },
  1910. // Confirmations
  1911. confirm: {
  1912. delete: 'Möchten Sie dies wirklich löschen?',
  1913. unsavedChanges: 'Sie haben ungespeicherte Änderungen. Möchten Sie wirklich verlassen?',
  1914. clearQueue: 'Möchten Sie die Warteschlange wirklich leeren?',
  1915. },
  1916. // Login page
  1917. login: {
  1918. title: 'Bambuddy Anmeldung',
  1919. subtitle: 'Melden Sie sich bei Ihrem Konto an',
  1920. username: 'Benutzername',
  1921. usernamePlaceholder: 'Benutzername eingeben',
  1922. usernameOrEmail: 'Benutzername oder E-Mail',
  1923. usernameOrEmailPlaceholder: 'Benutzername oder @ E-Mail',
  1924. password: 'Passwort',
  1925. passwordPlaceholder: 'Passwort eingeben',
  1926. signIn: 'Anmelden',
  1927. signingIn: 'Anmeldung läuft...',
  1928. forgotPassword: 'Passwort vergessen?',
  1929. loginSuccess: 'Erfolgreich angemeldet',
  1930. loginFailed: 'Anmeldung fehlgeschlagen',
  1931. enterCredentials: 'Bitte Benutzername und Passwort eingeben',
  1932. forgotPasswordTitle: 'Passwort vergessen',
  1933. forgotPasswordMessage: 'Wenn Sie Ihr Passwort vergessen haben, wenden Sie sich bitte an Ihren Systemadministrator.',
  1934. forgotPasswordEmailMessage: 'Geben Sie Ihre E-Mail-Adresse ein und wir senden Ihnen ein neues Passwort.',
  1935. emailAddress: 'E-Mail-Adresse',
  1936. emailPlaceholder: 'ihre.email@beispiel.de',
  1937. cancel: 'Abbrechen',
  1938. sending: 'Wird gesendet...',
  1939. sendResetEmail: 'Zurücksetzungs-E-Mail senden',
  1940. howToReset: 'So setzen Sie Ihr Passwort zurück:',
  1941. resetStep1: 'Kontaktieren Sie Ihren Bambuddy-Administrator',
  1942. resetStep2: 'Bitten Sie ihn, Ihr Passwort in der Benutzerverwaltung zurückzusetzen',
  1943. resetStep3: 'Er kann ein neues temporäres Passwort für Sie festlegen',
  1944. resetStep4: 'Melden Sie sich mit dem neuen Passwort an und ändern Sie es in den Einstellungen',
  1945. gotIt: 'Verstanden',
  1946. },
  1947. // Setup page
  1948. setup: {
  1949. title: 'Bambuddy Einrichtung',
  1950. subtitle: 'Konfigurieren Sie die Authentifizierung für Ihre Bambuddy-Instanz',
  1951. enableAuth: 'Authentifizierung aktivieren',
  1952. adminAccount: 'Admin-Konto',
  1953. adminAccountDesc: 'Wenn bereits Admin-Benutzer existieren, wird die Authentifizierung mit den vorhandenen Admin-Konten aktiviert. Lassen Sie die Felder unten leer, um vorhandene Admins zu verwenden, oder geben Sie neue Anmeldedaten ein, um einen neuen Admin-Benutzer zu erstellen.',
  1954. adminUsername: 'Admin-Benutzername',
  1955. adminPassword: 'Admin-Passwort',
  1956. optionalIfAdminExists: '(optional, wenn Admin-Benutzer existieren)',
  1957. adminUsernamePlaceholder: 'Admin-Benutzernamen eingeben (optional)',
  1958. adminPasswordPlaceholder: 'Admin-Passwort eingeben (optional)',
  1959. confirmPassword: 'Passwort bestätigen',
  1960. confirmPasswordPlaceholder: 'Admin-Passwort bestätigen',
  1961. settingUp: 'Einrichtung läuft...',
  1962. completeSetup: 'Einrichtung abschließen',
  1963. toast: {
  1964. authEnabledAdminCreated: 'Authentifizierung aktiviert und Admin-Benutzer erstellt',
  1965. authEnabledExistingAdmins: 'Authentifizierung mit vorhandenen Admin-Benutzern aktiviert',
  1966. setupCompleted: 'Einrichtung abgeschlossen',
  1967. enterBothCredentials: 'Bitte geben Sie sowohl Admin-Benutzernamen als auch Passwort ein, oder lassen Sie beide leer, um vorhandene Admin-Benutzer zu verwenden',
  1968. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1969. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1970. },
  1971. },
  1972. // Password change
  1973. changePassword: {
  1974. title: 'Passwort ändern',
  1975. currentPassword: 'Aktuelles Passwort',
  1976. currentPasswordPlaceholder: 'Aktuelles Passwort eingeben',
  1977. newPassword: 'Neues Passwort',
  1978. newPasswordPlaceholder: 'Neues Passwort eingeben (min. 6 Zeichen)',
  1979. confirmPassword: 'Neues Passwort bestätigen',
  1980. confirmPasswordPlaceholder: 'Neues Passwort bestätigen',
  1981. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  1982. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  1983. changing: 'Wird geändert...',
  1984. success: 'Passwort erfolgreich geändert',
  1985. failed: 'Passwortänderung fehlgeschlagen',
  1986. },
  1987. // Plate detection alert
  1988. plateAlert: {
  1989. title: 'Druck pausiert!',
  1990. message: 'Objekte auf dem Druckbett erkannt. Der Druck wurde automatisch pausiert. Bitte räumen Sie das Druckbett und setzen Sie den Druck fort.',
  1991. understand: 'Verstanden',
  1992. },
  1993. // Camera page
  1994. camera: {
  1995. title: 'Kameraansicht',
  1996. invalidPrinterId: 'Ungültige Drucker-ID',
  1997. live: 'Live',
  1998. snapshot: 'Schnappschuss',
  1999. restartStream: 'Stream neu starten',
  2000. refreshSnapshot: 'Schnappschuss aktualisieren',
  2001. fullscreen: 'Vollbild',
  2002. exitFullscreen: 'Vollbild beenden',
  2003. connectingToCamera: 'Verbinde mit Kamera...',
  2004. capturingSnapshot: 'Schnappschuss wird aufgenommen...',
  2005. connectionLost: 'Verbindung verloren',
  2006. connectionFailed: 'Kameraverbindung fehlgeschlagen',
  2007. reconnecting: 'Neuverbindung in {{countdown}}s... (Versuch {{attempt}}/{{max}})',
  2008. reconnectNow: 'Jetzt verbinden',
  2009. cameraUnavailable: 'Kamera nicht verfügbar',
  2010. cameraUnavailableDesc: 'Stellen Sie sicher, dass der Drucker eingeschaltet und verbunden ist.',
  2011. noCamera: 'Keine Kamera verfügbar',
  2012. retry: 'Erneut versuchen',
  2013. cameraStream: 'Kamera-Stream',
  2014. zoomOut: 'Verkleinern',
  2015. zoomIn: 'Vergrößern',
  2016. resetZoom: 'Zoom zurücksetzen',
  2017. recording: 'Aufnahme',
  2018. startRecording: 'Aufnahme starten',
  2019. stopRecording: 'Aufnahme stoppen',
  2020. chamberLight: 'Kammerbeleuchtung umschalten',
  2021. },
  2022. // Groups management
  2023. groups: {
  2024. title: 'Gruppenverwaltung',
  2025. subtitle: 'Berechtigungsgruppen für Zugriffskontrolle verwalten',
  2026. backToSettings: 'Zurück zu Einstellungen',
  2027. createGroup: 'Gruppe erstellen',
  2028. noPermission: 'Sie haben keine Berechtigung, auf diese Seite zuzugreifen.',
  2029. system: 'System',
  2030. noDescription: 'Keine Beschreibung',
  2031. usersCount: '{{count}} Benutzer',
  2032. permissionsCount: '{{count}} Berechtigungen',
  2033. edit: 'Bearbeiten',
  2034. delete: 'Löschen',
  2035. toast: {
  2036. created: 'Gruppe erfolgreich erstellt',
  2037. updated: 'Gruppe erfolgreich aktualisiert',
  2038. deleted: 'Gruppe erfolgreich gelöscht',
  2039. enterGroupName: 'Bitte geben Sie einen Gruppennamen ein',
  2040. },
  2041. modal: {
  2042. editGroup: 'Gruppe bearbeiten',
  2043. createGroup: 'Gruppe erstellen',
  2044. cancel: 'Abbrechen',
  2045. saving: 'Speichern...',
  2046. creating: 'Erstellen...',
  2047. saveChanges: 'Änderungen speichern',
  2048. },
  2049. form: {
  2050. groupName: 'Gruppenname',
  2051. groupNamePlaceholder: 'Gruppennamen eingeben',
  2052. systemGroupWarning: 'Systemgruppennamen können nicht geändert werden',
  2053. description: 'Beschreibung',
  2054. descriptionPlaceholder: 'Beschreibung eingeben (optional)',
  2055. permissions: 'Berechtigungen ({{count}} ausgewählt)',
  2056. },
  2057. deleteModal: {
  2058. title: 'Gruppe löschen',
  2059. message: 'Sind Sie sicher, dass Sie diese Gruppe löschen möchten? Benutzer in dieser Gruppe verlieren diese Berechtigungen.',
  2060. confirm: 'Gruppe löschen',
  2061. },
  2062. editor: {
  2063. title: 'Gruppe bearbeiten',
  2064. createTitle: 'Gruppe erstellen',
  2065. search: 'Berechtigungen suchen...',
  2066. selectAll: 'Alle auswählen',
  2067. clearAll: 'Alle abwählen',
  2068. permissionsSelected: '{{count}} ausgewählt',
  2069. noResults: 'Keine Berechtigungen entsprechen Ihrer Suche',
  2070. },
  2071. },
  2072. // Users management
  2073. users: {
  2074. title: 'Benutzerverwaltung',
  2075. subtitle: 'Benutzer und deren Zugriff auf Ihre Bambuddy-Instanz verwalten',
  2076. backToSettings: 'Zurück zu Einstellungen',
  2077. createUser: 'Benutzer erstellen',
  2078. noPermission: 'Sie haben keine Berechtigung, auf diese Seite zuzugreifen.',
  2079. admin: 'Admin',
  2080. noGroups: 'Keine Gruppen',
  2081. active: 'Aktiv',
  2082. inactive: 'Inaktiv',
  2083. edit: 'Bearbeiten',
  2084. delete: 'Löschen',
  2085. system: 'System',
  2086. noGroupsAvailable: 'Keine Gruppen verfügbar',
  2087. table: {
  2088. username: 'Benutzername',
  2089. groups: 'Gruppen',
  2090. status: 'Status',
  2091. actions: 'Aktionen',
  2092. },
  2093. toast: {
  2094. created: 'Benutzer erfolgreich erstellt',
  2095. updated: 'Benutzer erfolgreich aktualisiert',
  2096. deleted: 'Benutzer erfolgreich gelöscht',
  2097. fillRequired: 'Bitte füllen Sie alle Pflichtfelder aus',
  2098. passwordsDoNotMatch: 'Passwörter stimmen nicht überein',
  2099. passwordTooShort: 'Passwort muss mindestens 6 Zeichen lang sein',
  2100. },
  2101. modal: {
  2102. createUser: 'Benutzer erstellen',
  2103. editUser: 'Benutzer bearbeiten',
  2104. cancel: 'Abbrechen',
  2105. creating: 'Erstellen...',
  2106. saving: 'Speichern...',
  2107. saveChanges: 'Änderungen speichern',
  2108. advancedAuthSubtitle: 'mit erweiterter Authentifizierung',
  2109. },
  2110. form: {
  2111. username: 'Benutzername',
  2112. usernamePlaceholder: 'Benutzernamen eingeben',
  2113. email: 'E-Mail',
  2114. emailPlaceholder: 'benutzer@beispiel.de',
  2115. password: 'Passwort',
  2116. passwordPlaceholder: 'Passwort eingeben',
  2117. confirmPassword: 'Passwort bestätigen',
  2118. confirmPasswordPlaceholder: 'Passwort bestätigen',
  2119. newPasswordPlaceholder: 'Neues Passwort eingeben',
  2120. confirmNewPasswordPlaceholder: 'Neues Passwort bestätigen',
  2121. leaveBlankToKeep: 'leer lassen, um das aktuelle zu behalten',
  2122. groups: 'Gruppen',
  2123. optional: 'optional',
  2124. autoGeneratedPassword: 'Ein sicheres Passwort wird automatisch generiert und per E-Mail an den Benutzer gesendet.',
  2125. passwordManagedByAdvancedAuth: 'Das Passwort wird durch erweiterte Authentifizierung verwaltet. Verwenden Sie "Passwort zurücksetzen", um ein neues Passwort per E-Mail an den Benutzer zu senden.',
  2126. resetPassword: 'Passwort zurücksetzen',
  2127. resettingPassword: 'Passwort wird zurückgesetzt...',
  2128. },
  2129. deleteModal: {
  2130. title: 'Benutzer löschen',
  2131. message: 'Sind Sie sicher, dass Sie diesen Benutzer löschen möchten? Diese Aktion kann nicht rückgängig gemacht werden.',
  2132. confirm: 'Benutzer löschen',
  2133. },
  2134. },
  2135. // Stream overlay
  2136. streamOverlay: {
  2137. title: 'Stream-Overlay',
  2138. invalidPrinterId: 'Ungültige Drucker-ID',
  2139. cameraStream: 'Kamera-Stream',
  2140. progress: 'Fortschritt',
  2141. eta: 'ETA',
  2142. printerIdle: 'Drucker ist inaktiv',
  2143. printerOffline: 'Drucker offline',
  2144. status: {
  2145. printing: 'Druckt',
  2146. paused: 'Pausiert',
  2147. finished: 'Fertig',
  2148. failed: 'Fehlgeschlagen',
  2149. idle: 'Inaktiv',
  2150. unknown: 'Unbekannt',
  2151. },
  2152. },
  2153. // Profiles
  2154. profiles: {
  2155. title: 'Profile',
  2156. subtitle: 'Verwalten Sie Ihre Slicer-Voreinstellungen und Druckvorschub-Kalibrierungen',
  2157. tabs: {
  2158. cloud: 'Cloud-Profile',
  2159. local: 'Lokale Profile',
  2160. kprofiles: 'K-Profile',
  2161. },
  2162. localProfiles: {
  2163. title: 'Lokale Profile',
  2164. subtitle: 'Slicer-Voreinstellungen aus OrcaSlicer importieren und verwalten',
  2165. import: 'Profile importieren',
  2166. importDesc: '.bbscfg-, .bbsflmt-, .orca_filament-, .zip- oder .json-Dateien hier ablegen',
  2167. importing: 'Importiere...',
  2168. search: 'Lokale Voreinstellungen durchsuchen...',
  2169. noPresets: 'Noch keine lokalen Voreinstellungen',
  2170. badge: 'Lokal',
  2171. edit: 'Bearbeiten',
  2172. delete: 'Löschen',
  2173. cancel: 'Abbrechen',
  2174. deleteConfirmTitle: 'Voreinstellung löschen',
  2175. deleteConfirm: 'Möchten Sie diese Voreinstellung wirklich löschen? Dies kann nicht rückgängig gemacht werden.',
  2176. source: 'Quelle',
  2177. inheritsFrom: 'Erbt von',
  2178. filamentType: 'Typ',
  2179. vendor: 'Hersteller',
  2180. compatiblePrinters: 'Drucker',
  2181. nozzleTemp: 'Düsentemperatur',
  2182. cost: 'Kosten',
  2183. density: 'Dichte',
  2184. pressureAdvance: 'Druckvorschub',
  2185. filament: 'Filament',
  2186. process: 'Prozess',
  2187. printer: 'Drucker',
  2188. toast: {
  2189. importSuccess: '{{count}} Voreinstellung(en) importiert',
  2190. importSkipped: '{{count}} Voreinstellung(en) übersprungen (Duplikate)',
  2191. importError: '{{count}} Fehler beim Import',
  2192. deleted: 'Voreinstellung gelöscht',
  2193. updated: 'Voreinstellung aktualisiert',
  2194. },
  2195. },
  2196. connectedAs: 'Verbunden als',
  2197. logout: 'Abmelden',
  2198. noLogoutPermission: 'Sie haben keine Berechtigung zum Abmelden',
  2199. failedToLoad: 'Profile konnten nicht geladen werden',
  2200. retry: 'Erneut versuchen',
  2201. time: {
  2202. justNow: 'Gerade eben',
  2203. minsAgo: 'vor {{count}}m',
  2204. hoursAgo: 'vor {{count}}h',
  2205. daysAgo: 'vor {{count}}d',
  2206. },
  2207. toast: {
  2208. loggedOut: 'Abgemeldet',
  2209. },
  2210. login: {
  2211. title: 'Mit Bambu Cloud verbinden',
  2212. subtitle: 'Synchronisieren Sie Ihre Slicer-Voreinstellungen geräteübergreifend',
  2213. email: 'E-Mail',
  2214. password: 'Passwort',
  2215. region: 'Region',
  2216. regionGlobal: 'Global',
  2217. regionChina: 'China',
  2218. verificationCode: 'Bestätigungscode',
  2219. totpCode: 'Authenticator-Code',
  2220. checkEmail: 'Prüfen Sie Ihre E-Mail ({{email}}) für einen 6-stelligen Code',
  2221. enterTotpHint: 'Geben Sie den 6-stelligen Code aus Ihrer Authenticator-App ein',
  2222. accessToken: 'Zugriffstoken',
  2223. accessTokenHint: 'Fügen Sie Ihr Bambu Lab Zugriffstoken ein (aus Bambu Studio)',
  2224. back: 'Zurück',
  2225. loginButton: 'Anmelden',
  2226. verifyButton: 'Bestätigen',
  2227. setTokenButton: 'Token setzen',
  2228. useToken: 'Stattdessen Zugriffstoken verwenden',
  2229. useEmail: 'Stattdessen mit E-Mail anmelden',
  2230. toast: {
  2231. loggedIn: 'Erfolgreich angemeldet',
  2232. codeSent: 'Bestätigungscode an Ihre E-Mail gesendet',
  2233. enterTotp: 'Geben Sie den Code aus Ihrer Authenticator-App ein',
  2234. tokenSet: 'Token erfolgreich gesetzt',
  2235. },
  2236. },
  2237. presets: {
  2238. myPreset: 'Mein Profil (bearbeitbar)',
  2239. duplicate: 'Duplizieren',
  2240. editable: 'Bearbeitbar',
  2241. failedToLoadDetails: 'Profil-Details konnten nicht geladen werden',
  2242. deleteConfirm: 'Dieses Profil löschen?',
  2243. deleteWarning: '"{{name}}" wird dauerhaft aus Bambu Cloud gelöscht. Dies kann nicht rückgängig gemacht werden.',
  2244. noDuplicatePermission: 'Sie haben keine Berechtigung zum Duplizieren von Profilen',
  2245. noEditPermission: 'Sie haben keine Berechtigung zum Bearbeiten von Profilen',
  2246. noDeletePermission: 'Sie haben keine Berechtigung zum Löschen von Profilen',
  2247. types: {
  2248. filament: 'Filament-Profil',
  2249. printer: 'Drucker-Profil',
  2250. process: 'Prozess-Profil',
  2251. },
  2252. toast: {
  2253. deleted: 'Profil gelöscht',
  2254. created: 'Profil erstellt',
  2255. updated: 'Profil aktualisiert',
  2256. duplicated: 'Profil dupliziert',
  2257. fieldAdded: 'Feld "{{key}}" hinzugefügt',
  2258. exported: 'Profil exportiert',
  2259. },
  2260. baseLabel: 'Basis: {{name}}',
  2261. currentLabel: 'Aktuell: {{name}}',
  2262. newPreset: 'Neues Profil',
  2263. editPreset: 'Profil bearbeiten',
  2264. duplicatePreset: 'Profil duplizieren',
  2265. createNewPreset: 'Neues Profil erstellen',
  2266. customizeSettings: 'Passen Sie die Einstellungen für Ihr neues Profil an',
  2267. compareWithBase: 'Mit Basis-Profil vergleichen',
  2268. compare: 'Vergleichen',
  2269. // CreatePresetModal - Basic Info
  2270. basePreset: 'Basis-Profil',
  2271. selectBasePreset: 'Basis-Profil auswählen...',
  2272. presetName: 'Profilname',
  2273. myCustomPreset: 'Mein eigenes Profil',
  2274. inheritsFrom: 'Erbt von',
  2275. dropJsonToImport: 'JSON zum Importieren ablegen',
  2276. // CreatePresetModal - Tabs
  2277. tabs: {
  2278. common: 'Allgemein',
  2279. allFields: 'Alle Felder',
  2280. },
  2281. // CreatePresetModal - All Fields Tab
  2282. availableFields: 'Verfügbare Felder',
  2283. searchFieldsPlaceholder: 'Felder suchen...',
  2284. noMatchingFields: 'Keine passenden Felder',
  2285. allFieldsAdded: 'Alle Felder hinzugefügt',
  2286. addCustomField: 'Eigenes Feld hinzufügen',
  2287. yourOverrides: 'Ihre Überschreibungen',
  2288. noOverridesYet: 'Noch keine Überschreibungen',
  2289. clickFieldsToAdd: 'Klicken Sie links auf Felder, um sie hinzuzufügen',
  2290. saveAsTemplate: 'Als Vorlage speichern',
  2291. jsonTip: 'Tipp: Ziehen Sie eine .json-Datei auf dieses Fenster, um Einstellungen zu importieren',
  2292. },
  2293. cloudView: {
  2294. searchPlaceholder: 'Profile suchen...',
  2295. templates: 'Vorlagen',
  2296. refresh: 'Aktualisieren',
  2297. newPreset: 'Neues Profil',
  2298. clearFilters: 'Filter zurücksetzen',
  2299. // Compare mode
  2300. compareMode: 'Vergleichsmodus',
  2301. selectAnotherPreset: 'Wählen Sie ein weiteres {{type}}-Profil',
  2302. clickTwoPresets: 'Klicken Sie auf zwei Profile des gleichen Typs zum Vergleichen',
  2303. selectFirst: '1. Erstes auswählen',
  2304. selectSecond: '2. Zweites auswählen',
  2305. compareNow: 'Jetzt vergleichen',
  2306. // Status row
  2307. lastSynced: 'Zuletzt synchronisiert:',
  2308. showingCount: '{{showing}} von {{total}} Profilen',
  2309. noPresetsFound: 'Keine Profile gefunden',
  2310. // Column headers
  2311. columns: {
  2312. filament: 'Filament',
  2313. process: 'Prozess',
  2314. printer: 'Drucker',
  2315. },
  2316. noFilamentPresets: 'Keine Filament-Profile',
  2317. noProcessPresets: 'Keine Prozess-Profile',
  2318. noPrinterPresets: 'Keine Drucker-Profile',
  2319. // Filters
  2320. filters: {
  2321. type: 'Typ',
  2322. owner: 'Besitzer',
  2323. printer: 'Drucker',
  2324. nozzle: 'Düse',
  2325. filament: 'Filament',
  2326. layer: 'Schicht',
  2327. all: 'Alle',
  2328. myPresets: 'Meine Profile',
  2329. builtIn: 'Voreingestellt',
  2330. process: 'Prozess',
  2331. },
  2332. // Permissions
  2333. noTemplatesPermission: 'Sie haben keine Berechtigung, Vorlagen zu verwalten',
  2334. noRefreshPermission: 'Sie haben keine Berechtigung, Profile zu aktualisieren',
  2335. noCreatePermission: 'Sie haben keine Berechtigung, Profile zu erstellen',
  2336. },
  2337. templates: {
  2338. title: 'Schnellvorlagen',
  2339. noTemplates: 'Noch keine Vorlagen',
  2340. createFirst: 'Erstellen Sie Vorlagen aus dem Preset-Editor',
  2341. typeFilter: 'Typ:',
  2342. deleteTitle: 'Vorlage löschen',
  2343. deleteWarning: 'Diese Aktion kann nicht rückgängig gemacht werden',
  2344. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  2345. namePlaceholder: 'Vorlagenname',
  2346. descriptionPlaceholder: 'Beschreibung',
  2347. settingsJson: 'Einstellungen (JSON)',
  2348. fieldsCount: '{{count}} Felder',
  2349. shownInModals: 'In Dialogen angezeigt',
  2350. hiddenInModals: 'In Dialogen ausgeblendet',
  2351. apply: 'Anwenden',
  2352. toast: {
  2353. deleted: 'Vorlage gelöscht',
  2354. updated: 'Vorlage aktualisiert',
  2355. created: 'Vorlage erstellt',
  2356. applied: 'Vorlage angewendet',
  2357. },
  2358. },
  2359. },
  2360. // Support/Debug
  2361. support: {
  2362. debugLoggingActive: 'Debug-Protokollierung ist aktiv',
  2363. manageLogs: 'Verwalten',
  2364. collectItem7: 'Drucker-Verbindungsstatus und Firmware-Versionen',
  2365. collectItem8: 'Integrationsstatus (Spoolman, MQTT, HA)',
  2366. collectItem9: 'Netzwerkschnittstellen (nur Subnetze)',
  2367. collectItem10: 'Python-Paketversionen',
  2368. collectItem11: 'Datenbankzustandsprüfungen',
  2369. collectItem12: 'Docker-Umgebungsdetails',
  2370. },
  2371. // File manager
  2372. fileManager: {
  2373. title: 'Dateimanager',
  2374. subtitle: 'Organisieren und verwalten Sie Ihre Druckdateien',
  2375. uploadFiles: 'Dateien hochladen',
  2376. newFolder: 'Neuer Ordner',
  2377. folderName: 'Ordnername',
  2378. folderNamePlaceholder: 'z.B. Funktionsteile',
  2379. renameFile: 'Datei umbenennen',
  2380. renameFolder: 'Ordner umbenennen',
  2381. moveFiles: '{{count}} Datei(en) verschieben',
  2382. rootNoFolder: 'Stammverzeichnis (Kein Ordner)',
  2383. current: 'aktuell',
  2384. linkFolder: 'Ordner verknüpfen',
  2385. linkFolderDescription: '"{{name}}" mit einem Projekt oder Archiv verknüpfen für schnellen Zugriff.',
  2386. project: 'Projekt',
  2387. archive: 'Archiv',
  2388. noProjectsFound: 'Keine Projekte gefunden',
  2389. noArchivesFound: 'Keine Archive gefunden',
  2390. unlink: 'Verknüpfung aufheben',
  2391. link: 'Verknüpfen',
  2392. dragDropFiles: 'Dateien hierher ziehen',
  2393. dropFilesHere: 'Dateien hier ablegen',
  2394. orClickToBrowse: 'oder klicken zum Durchsuchen',
  2395. allFileTypesSupported: 'Alle Dateitypen werden unterstützt. ZIP-Dateien werden extrahiert.',
  2396. zipFilesDetected: 'ZIP-Dateien erkannt',
  2397. zipExtractOptions: 'ZIP-Dateien werden extrahiert. Wählen Sie, wie die Ordnerstruktur behandelt werden soll:',
  2398. preserveZipStructure: 'Ordnerstruktur aus ZIP beibehalten',
  2399. createFolderFromZip: 'Ordner aus ZIP-Dateiname erstellen',
  2400. stlThumbnailGeneration: 'STL-Vorschaubildgenerierung',
  2401. zipMayContainStl: 'ZIP-Dateien können STL-Dateien enthalten. Vorschaubilder können während der Extraktion generiert werden.',
  2402. thumbnailsCanBeGenerated: 'Vorschaubilder können für STL-Dateien generiert werden. Große Modelle benötigen möglicherweise mehr Zeit.',
  2403. generateThumbnailsForStl: 'Vorschaubilder für STL-Dateien generieren',
  2404. threemfDetected: '3MF-Dateien erkannt',
  2405. threemfExtractionInfo: 'Druckermodell, Material, Farbe und Druckeinstellungen werden automatisch aus 3MF-Dateien extrahiert.',
  2406. willBeExtracted: 'Wird extrahiert',
  2407. filesExtracted: '{{count}} Dateien extrahiert',
  2408. uploadComplete: 'Upload abgeschlossen: {{succeeded}} erfolgreich',
  2409. uploadFailed: 'Hochladen fehlgeschlagen',
  2410. zipFilesFailed: '{{count}} Dateien fehlgeschlagen',
  2411. uploading: 'Hochladen...',
  2412. changeLink: 'Verknüpfung ändern...',
  2413. linkTo: 'Verknüpfen mit...',
  2414. linkToProjectOrArchive: 'Mit Projekt oder Archiv verknüpfen',
  2415. addToQueue: 'Zur Warteschlange',
  2416. schedulePrint: 'Planen',
  2417. generateThumbnail: 'Vorschaubild generieren',
  2418. generateThumbnails: 'Vorschaubilder generieren',
  2419. generateThumbnailsForMissing: 'Vorschaubilder für STL-Dateien ohne Vorschau generieren',
  2420. gridView: 'Rasteransicht',
  2421. listView: 'Listenansicht',
  2422. lowDiskSpaceWarning: 'Warnung: Wenig Speicherplatz',
  2423. lowDiskSpaceDetails: 'Nur {{free}} frei von {{total}} gesamt. Schwellenwert ist auf {{threshold}} GB eingestellt.',
  2424. files: 'Dateien',
  2425. folders: 'Ordner',
  2426. size: 'Größe',
  2427. free: 'Frei',
  2428. allFiles: 'Alle Dateien',
  2429. wrap: 'Umbrechen',
  2430. enableTextWrapping: 'Textumbruch aktivieren',
  2431. disableTextWrapping: 'Textumbruch deaktivieren',
  2432. dragToResizeTooltip: 'Ziehen zum Ändern der Größe, Doppelklick zum Zurücksetzen',
  2433. searchFiles: 'Dateien suchen...',
  2434. allTypes: 'Alle Typen',
  2435. prints: 'Drucke',
  2436. ascending: 'Aufsteigend',
  2437. descending: 'Absteigend',
  2438. resultsCount: '{{showing}} von {{total}} Dateien',
  2439. selectAll: 'Alle auswählen',
  2440. deselectAll: 'Auswahl aufheben',
  2441. selected: '{{count}} ausgewählt',
  2442. adding: 'Hinzufügen...',
  2443. loadingFiles: 'Dateien werden geladen...',
  2444. folderIsEmpty: 'Ordner ist leer',
  2445. noFilesYet: 'Noch keine Dateien',
  2446. folderEmptyDescription: 'Laden Sie Dateien hoch oder verschieben Sie Dateien in diesen Ordner.',
  2447. noFilesDescription: 'Laden Sie Dateien hoch, um Ihre Druckdateien zu organisieren.',
  2448. noMatchingFiles: 'Keine passenden Dateien',
  2449. noMatchingFilesDescription: 'Keine Dateien entsprechen Ihren aktuellen Such- oder Filterkriterien.',
  2450. clearFilters: 'Filter zurücksetzen',
  2451. printedCount: '{{count}}x gedruckt',
  2452. uploadedBy: 'Hochgeladen von',
  2453. deleteFolder: 'Ordner löschen',
  2454. deleteFile: 'Datei löschen',
  2455. deleteFilesCount: '{{count}} Dateien löschen',
  2456. deleteFolderConfirm: 'Möchten Sie diesen Ordner wirklich löschen? Alle Dateien darin werden ebenfalls gelöscht.',
  2457. deleteFileConfirm: 'Möchten Sie diese Datei wirklich löschen?',
  2458. deleteFilesConfirm: 'Möchten Sie {{count}} ausgewählte Dateien wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.',
  2459. deleting: 'Wird gelöscht...',
  2460. noPermissionRenameFolder: 'Sie haben keine Berechtigung, Ordner umzubenennen',
  2461. noPermissionLinkFolder: 'Sie haben keine Berechtigung, Ordner zu verknüpfen',
  2462. noPermissionDeleteFolder: 'Sie haben keine Berechtigung, Ordner zu löschen',
  2463. noPermissionPrint: 'Sie haben keine Berechtigung zum Drucken',
  2464. noPermissionAddToQueue: 'Sie haben keine Berechtigung, zur Warteschlange hinzuzufügen',
  2465. noPermissionDownload: 'Sie haben keine Berechtigung, Dateien herunterzuladen',
  2466. noPermissionRenameFile: 'Sie haben keine Berechtigung, diese Datei umzubenennen',
  2467. noPermissionGenerateThumbnail: 'Sie haben keine Berechtigung, Vorschaubilder zu generieren',
  2468. noPermissionDeleteFile: 'Sie haben keine Berechtigung, diese Datei zu löschen',
  2469. noPermissionCreateFolder: 'Sie haben keine Berechtigung, Ordner zu erstellen',
  2470. noPermissionUpload: 'Sie haben keine Berechtigung, Dateien hochzuladen',
  2471. noPermissionMoveFiles: 'Sie haben keine Berechtigung, Dateien zu verschieben',
  2472. noPermissionDeleteFiles: 'Sie haben keine Berechtigung, Dateien zu löschen',
  2473. toast: {
  2474. folderCreated: 'Ordner erstellt',
  2475. folderDeleted: 'Ordner gelöscht',
  2476. fileDeleted: 'Datei gelöscht',
  2477. filesDeleted: '{{count}} Dateien gelöscht',
  2478. filesMoved: 'Dateien verschoben',
  2479. folderLinked: 'Ordner verknüpft',
  2480. folderUnlinked: 'Ordnerverknüpfung aufgehoben',
  2481. addedToQueue: '{{count}} Datei(en) zur Warteschlange hinzugefügt',
  2482. addedToQueuePartial: '{{added}} Datei(en) hinzugefügt, {{failed}} fehlgeschlagen',
  2483. failedToAddToQueue: 'Fehler beim Hinzufügen: {{error}}',
  2484. fileRenamed: 'Datei umbenannt',
  2485. folderRenamed: 'Ordner umbenannt',
  2486. thumbnailsGenerated: '{{count}} Vorschaubild(er) generiert',
  2487. thumbnailsGeneratedPartial: '{{succeeded}} Vorschaubild(er) generiert, {{failed}} fehlgeschlagen',
  2488. noStlMissingThumbnails: 'Keine STL-Dateien ohne Vorschaubild',
  2489. failedToGenerateThumbnails: 'Fehler beim Generieren der Vorschaubilder: {{error}}',
  2490. thumbnailGenerated: 'Vorschaubild generiert',
  2491. failedToGenerateThumbnail: 'Fehler beim Generieren des Vorschaubildes: {{error}}',
  2492. },
  2493. },
  2494. // Projects
  2495. projects: {
  2496. title: 'Projekte',
  2497. subtitle: 'Organisieren und verfolgen Sie Ihre 3D-Druckprojekte',
  2498. newProject: 'Neues Projekt',
  2499. editProject: 'Projekt bearbeiten',
  2500. deleteProject: 'Projekt löschen',
  2501. projectName: 'Projektname',
  2502. description: 'Beschreibung',
  2503. noProjects: 'Noch keine Projekte',
  2504. noProjectsFiltered: 'Keine {{status}} Projekte',
  2505. noProjectsFilteredHelp: 'Sie haben keine {{status}} Projekte. Projekte werden hier angezeigt, wenn sich ihr Status ändert.',
  2506. createFirst: 'Erstellen Sie Ihr erstes Projekt, um verwandte Drucke zu organisieren, den Fortschritt zu verfolgen und Ihre Builds zu verwalten.',
  2507. createFirstButton: 'Erstes Projekt erstellen',
  2508. create: 'Erstellen',
  2509. files: 'Dateien',
  2510. prints: 'Drucke',
  2511. plates: 'Platten',
  2512. parts: 'Teile',
  2513. lastModified: 'Zuletzt geändert',
  2514. deleteConfirm: 'Möchten Sie dieses Projekt wirklich löschen? Archive und Warteschlangenelemente werden getrennt, aber nicht gelöscht.',
  2515. addFiles: 'Dateien hinzufügen',
  2516. removeFile: 'Datei entfernen',
  2517. viewDetails: 'Details anzeigen',
  2518. // Modal fields
  2519. namePlaceholder: 'z.B. Voron 2.4 Build',
  2520. descriptionPlaceholder: 'Optionale Beschreibung...',
  2521. color: 'Farbe',
  2522. targetPlates: 'Ziel-Platten',
  2523. targetPlatesPlaceholder: 'z.B. 25',
  2524. targetPlatesHelp: 'Anzahl der Druckaufträge',
  2525. targetParts: 'Ziel-Teile',
  2526. targetPartsPlaceholder: 'z.B. 150',
  2527. targetPartsHelp: 'Benötigte Objekte insgesamt',
  2528. tagsLabel: 'Tags (kommagetrennt)',
  2529. tagsPlaceholder: 'z.B. voron, funktional, geschenk',
  2530. dueDate: 'Fälligkeitsdatum',
  2531. priority: 'Priorität',
  2532. priorityLow: 'Niedrig',
  2533. priorityNormal: 'Normal',
  2534. priorityHigh: 'Hoch',
  2535. priorityUrgent: 'Dringend',
  2536. // Status
  2537. statusActive: 'Aktiv',
  2538. statusCompleted: 'Abgeschlossen',
  2539. statusArchived: 'Archiviert',
  2540. done: 'Fertig',
  2541. completed: 'abgeschlossen',
  2542. failed: 'fehlgeschlagen',
  2543. inQueue: 'in Warteschlange',
  2544. noPrintsYet: 'Noch keine Drucke',
  2545. // Footer stats
  2546. printJobs: 'Druckaufträge (Platten)',
  2547. partsPrinted: 'Gedruckte Teile',
  2548. failedParts: 'Fehlgeschlagene Teile',
  2549. // Actions
  2550. import: 'Importieren',
  2551. export: 'Exportieren',
  2552. importProject: 'Projekt importieren',
  2553. exportAll: 'Alle Projekte exportieren',
  2554. loading: 'Projekte werden geladen...',
  2555. // Permissions
  2556. noEditPermission: 'Sie haben keine Berechtigung, Projekte zu bearbeiten',
  2557. noDeletePermission: 'Sie haben keine Berechtigung, Projekte zu löschen',
  2558. noCreatePermission: 'Sie haben keine Berechtigung, Projekte zu erstellen',
  2559. noImportPermission: 'Sie haben keine Berechtigung, Projekte zu importieren',
  2560. noExportPermission: 'Sie haben keine Berechtigung, Projekte zu exportieren',
  2561. // Toast
  2562. toast: {
  2563. created: 'Projekt erstellt',
  2564. updated: 'Projekt aktualisiert',
  2565. deleted: 'Projekt gelöscht',
  2566. imported: 'Projekt importiert',
  2567. multipleImported: '{{count}} Projekte importiert',
  2568. importFailed: 'Import fehlgeschlagen',
  2569. exported: 'Projekte exportiert (nur Metadaten)',
  2570. },
  2571. },
  2572. // Project detail page
  2573. projectDetail: {
  2574. notFound: 'Projekt nicht gefunden',
  2575. backToProjects: 'Zurück zu Projekten',
  2576. export: 'Exportieren',
  2577. exportProject: 'Projekt exportieren',
  2578. noExportPermission: 'Sie haben keine Berechtigung, Projekte zu exportieren',
  2579. noEditPermission: 'Sie haben keine Berechtigung, Projekte zu bearbeiten',
  2580. partOf: 'Teil von:',
  2581. priorityLabel: 'Priorität:',
  2582. noPrints: 'Noch keine Drucke in diesem Projekt',
  2583. status: {
  2584. active: 'Aktiv',
  2585. completed: 'Abgeschlossen',
  2586. archived: 'Archiviert',
  2587. },
  2588. priority: {
  2589. low: 'Niedrig',
  2590. normal: 'Normal',
  2591. high: 'Hoch',
  2592. urgent: 'Dringend',
  2593. },
  2594. dueDate: {
  2595. overdue: 'Überfällig',
  2596. today: 'Heute fällig',
  2597. daysLeft: '{{count}} Tage übrig',
  2598. },
  2599. progress: {
  2600. platesProgress: 'Platten-Fortschritt',
  2601. partsProgress: 'Teile-Fortschritt',
  2602. printJobs: 'Druckaufträge',
  2603. parts: 'Teile',
  2604. percentComplete: '{{percent}}% abgeschlossen',
  2605. remaining: '{{count}} verbleibend',
  2606. },
  2607. stats: {
  2608. printJobs: 'Druckaufträge',
  2609. total: 'gesamt',
  2610. failed: '{{count}} fehlgeschlagen',
  2611. partsPrinted: '{{count}} Teile gedruckt',
  2612. printTime: 'Druckzeit',
  2613. filamentUsed: 'Filament verbraucht',
  2614. },
  2615. cost: {
  2616. title: 'Kostenverfolgung',
  2617. filamentCost: 'Filamentkosten',
  2618. energy: 'Energie',
  2619. budget: 'Budget',
  2620. remaining: 'Verbleibend',
  2621. },
  2622. subProjects: {
  2623. title: 'Unterprojekte ({{count}})',
  2624. },
  2625. notes: {
  2626. title: 'Notizen',
  2627. noEditPermission: 'Sie haben keine Berechtigung, Notizen zu bearbeiten',
  2628. placeholder: 'Notizen zu diesem Projekt hinzufügen...',
  2629. empty: 'Noch keine Notizen. Klicken Sie auf Bearbeiten, um Notizen hinzuzufügen.',
  2630. },
  2631. files: {
  2632. title: 'Dateien',
  2633. linkFolders: 'Ordner aus dem Dateimanager verknüpfen',
  2634. forQuickAccess: 'für schnellen Zugriff auf dieses Projekt.',
  2635. fileCount: '{{count}} Datei(en)',
  2636. empty: 'Keine Ordner verknüpft. Gehen Sie zum Dateimanager und verknüpfen Sie einen Ordner mit diesem Projekt.',
  2637. },
  2638. bom: {
  2639. title: 'Stückliste',
  2640. acquired: '{{completed}}/{{total}} beschafft',
  2641. showAll: 'Alle anzeigen',
  2642. hideDone: 'Erledigte ausblenden',
  2643. addPart: 'Teil hinzufügen',
  2644. noAddPermission: 'Sie haben keine Berechtigung, Teile hinzuzufügen',
  2645. partNamePlaceholder: 'Teilename (z.B. M3x8 Schrauben)',
  2646. partName: 'Teilename',
  2647. qty: 'Menge',
  2648. price: 'Preis ({{currency}})',
  2649. sourcingUrlPlaceholder: 'Bezugsquelle-URL (optional)',
  2650. remarksPlaceholder: 'Bemerkungen (optional)',
  2651. deletePart: 'Teil löschen',
  2652. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen?',
  2653. noUpdatePermission: 'Sie haben keine Berechtigung, Teile zu aktualisieren',
  2654. noEditPermission: 'Sie haben keine Berechtigung, Teile zu bearbeiten',
  2655. noDeletePermission: 'Sie haben keine Berechtigung, Teile zu löschen',
  2656. totalCost: 'Gesamtkosten:',
  2657. empty: 'Keine Teile in der Stückliste. Fügen Sie Hardware, Elektronik oder andere Komponenten hinzu, um zu verfolgen, was beschafft werden muss.',
  2658. },
  2659. timeline: {
  2660. title: 'Aktivitätsverlauf',
  2661. empty: 'Noch keine Aktivität.',
  2662. },
  2663. template: {
  2664. saveAsTemplate: 'Als Vorlage speichern',
  2665. noCreatePermission: 'Sie haben keine Berechtigung, Vorlagen zu erstellen',
  2666. },
  2667. queue: {
  2668. title: 'Warteschlange',
  2669. viewAll: 'Alle anzeigen',
  2670. printing: '{{count}} druckend',
  2671. queued: '{{count}} in Warteschlange',
  2672. },
  2673. prints: {
  2674. title: 'Drucke ({{count}})',
  2675. },
  2676. toast: {
  2677. projectUpdated: 'Projekt aktualisiert',
  2678. partAdded: 'Teil hinzugefügt',
  2679. partRemoved: 'Teil entfernt',
  2680. exportFailed: 'Export fehlgeschlagen',
  2681. projectExported: 'Projekt exportiert',
  2682. templateCreated: 'Vorlage erstellt',
  2683. },
  2684. },
  2685. // System info
  2686. system: {
  2687. title: 'Systeminformationen',
  2688. version: 'Version',
  2689. uptime: 'Laufzeit',
  2690. cpuUsage: 'CPU-Auslastung',
  2691. memoryUsage: 'Speicherauslastung',
  2692. diskUsage: 'Festplattenauslastung',
  2693. networkInfo: 'Netzwerkinformationen',
  2694. logs: 'Protokolle',
  2695. debugMode: 'Debug-Modus',
  2696. enableDebug: 'Debug-Protokollierung aktivieren',
  2697. disableDebug: 'Debug-Protokollierung deaktivieren',
  2698. downloadLogs: 'Protokolle herunterladen',
  2699. clearLogs: 'Protokolle löschen',
  2700. dockerInfo: 'Docker-Info',
  2701. containerName: 'Container-Name',
  2702. imageName: 'Image-Name',
  2703. platform: 'Plattform',
  2704. architecture: 'Architektur',
  2705. },
  2706. // Library (K Profiles)
  2707. library: {
  2708. title: 'Filament-Bibliothek',
  2709. addFilament: 'Filament hinzufügen',
  2710. editFilament: 'Filament bearbeiten',
  2711. deleteFilament: 'Filament löschen',
  2712. vendor: 'Hersteller',
  2713. material: 'Material',
  2714. color: 'Farbe',
  2715. kFactor: 'K-Faktor',
  2716. temperature: 'Temperatur',
  2717. noFilaments: 'Keine Filamente in der Bibliothek',
  2718. deleteConfirm: 'Möchten Sie dieses Filament wirklich löschen?',
  2719. importFromPrinter: 'Vom Drucker importieren',
  2720. exportToFile: 'In Datei exportieren',
  2721. },
  2722. // Spoolman
  2723. spoolman: {
  2724. title: 'Spoolman-Integration',
  2725. enabled: 'Spoolman aktiviert',
  2726. url: 'Spoolman URL',
  2727. connected: 'Verbunden',
  2728. disconnected: 'Nicht verbunden',
  2729. testConnection: 'Verbindung testen',
  2730. sync: 'Synchronisieren',
  2731. syncing: 'Synchronisiert...',
  2732. lastSync: 'Letzte Synchronisierung',
  2733. linkToSpoolman: 'Mit Spoolman verknüpfen',
  2734. openInSpoolman: 'In Spoolman öffnen',
  2735. unlinkSpool: 'Spule trennen',
  2736. selectSpool: 'Spule auswählen',
  2737. noUnlinkedSpools: 'Keine nicht verknüpften Spulen verfügbar',
  2738. linkSuccess: 'Spule erfolgreich mit Spoolman verknüpft',
  2739. linkFailed: 'Verknüpfung mit Spoolman fehlgeschlagen',
  2740. spoolId: 'Spulen-ID',
  2741. fillSourceLabel: '(Spoolman)',
  2742. weight: 'Gewicht',
  2743. remaining: 'Verbleibend',
  2744. disableWeightSync: 'AMS-Gewichtsschätzung deaktivieren',
  2745. disableWeightSyncDesc: 'Verbleibende Kapazität nicht aus AMS-Schätzungen aktualisieren. Verwenden Sie dies, wenn Sie die Verbrauchserfassung von Spoolman gegenüber den prozentualen AMS-Schätzungen bevorzugen. Neue Spulen verwenden weiterhin die AMS-Schätzung als Anfangsgewicht.',
  2746. reportPartialUsage: 'Teilverbrauch bei fehlgeschlagenen Drucken melden',
  2747. reportPartialUsageDesc: 'Wenn ein Druck fehlschlägt oder abgebrochen wird, den geschätzten Filamentverbrauch bis zu diesem Zeitpunkt basierend auf dem Schichtfortschritt melden.',
  2748. },
  2749. // Inventar
  2750. inventory: {
  2751. title: 'Spulen-Inventar',
  2752. addSpool: 'Spule hinzufügen',
  2753. editSpool: 'Spule bearbeiten',
  2754. material: 'Material',
  2755. selectMaterial: 'Material auswählen...',
  2756. subtype: 'Untertyp',
  2757. brand: 'Marke',
  2758. searchBrand: 'Marke suchen...',
  2759. useCustomBrand: '"{{brand}}" verwenden',
  2760. useCustomMaterial: 'Benutzerdefiniertes Material verwenden: {{material}}',
  2761. colorName: 'Farbname',
  2762. colorNamePlaceholder: 'Jade White, Fire Red...',
  2763. color: 'Farbe',
  2764. hexColor: 'Hex-Farbe',
  2765. pickColor: 'Benutzerdefinierte Farbe wählen',
  2766. labelWeight: 'Nenngewicht',
  2767. coreWeight: 'Leergewicht der Spule',
  2768. searchSpoolWeight: 'Spulengewicht suchen...',
  2769. weightUsed: 'Verbraucht',
  2770. currentWeight: 'Restgewicht',
  2771. measuredWeight: 'Gemessenes Gewicht',
  2772. costPerKg: 'Kosten pro kg',
  2773. measuredWeightError: 'Das gemessene Gewicht muss zwischen {{min}}g und {{max}}g liegen.',
  2774. slicerFilament: 'Slicer-Filament',
  2775. slicerFilamentName: 'Slicer-Preset-Name',
  2776. slicerPreset: 'Slicer-Preset',
  2777. searchPresets: 'Filament-Presets suchen...',
  2778. selectedPreset: 'Ausgewählt',
  2779. noPresetsFound: 'Keine Presets gefunden',
  2780. tempOverrides: 'Temperatur-Überschreibungen',
  2781. note: 'Notiz',
  2782. notePlaceholder: 'Zusätzliche Notizen zu dieser Spule...',
  2783. archive: 'Archivieren',
  2784. restore: 'Wiederherstellen',
  2785. noSpools: 'Noch keine Spulen. Fügen Sie Ihre erste Spule hinzu.',
  2786. noManualSpools: 'Keine manuell hinzugefügten Spulen verfügbar. Fügen Sie zuerst eine Spule zum Inventar hinzu.',
  2787. kProfiles: 'K-Profile',
  2788. addKProfile: 'K-Profil hinzufügen',
  2789. assignSpool: 'Spule zuweisen',
  2790. unassignSpool: 'Zuweisung aufheben',
  2791. assignSuccess: 'Spule zugewiesen und AMS-Slot konfiguriert',
  2792. assignFailed: 'Spulenzuweisung fehlgeschlagen',
  2793. selectSpool: 'Wählen Sie eine Spule für diesen Slot',
  2794. assigned: 'Zugewiesen',
  2795. assigning: 'Wird zugewiesen...',
  2796. searchSpools: 'Spulen suchen...',
  2797. allMaterials: 'Alle Materialien',
  2798. filterByBrand: 'Nach Marke filtern...',
  2799. showArchived: 'Archivierte anzeigen',
  2800. quickAdd: 'Schnellerfassung (Lager)',
  2801. quantity: 'Menge',
  2802. stock: 'Lager',
  2803. configured: 'Konfiguriert',
  2804. spoolsCreated: '{{count}} Spulen erstellt',
  2805. spoolCreated: 'Spule erstellt',
  2806. spoolUpdated: 'Spule aktualisiert',
  2807. spoolDeleted: 'Spule gelöscht',
  2808. spoolArchived: 'Spule archiviert',
  2809. spoolRestored: 'Spule wiederhergestellt',
  2810. deleteConfirm: 'Möchten Sie diese Spule wirklich löschen? Dies kann nicht rückgängig gemacht werden.',
  2811. archiveConfirm: 'Möchten Sie diese Spule wirklich archivieren?',
  2812. advancedSettings: 'Erweiterte Einstellungen',
  2813. filamentInfoTab: 'Filament-Info',
  2814. paProfileTab: 'PA-Profil',
  2815. filamentInfo: 'Filament',
  2816. additional: 'Zusätzlich',
  2817. loadingPresets: 'Cloud-Presets werden geladen...',
  2818. cloudConnected: 'Cloud verbunden',
  2819. cloudNotConnected: 'Cloud nicht verbunden (Standardwerte)',
  2820. recentColors: 'Zuletzt',
  2821. searchColors: 'Farben suchen...',
  2822. searchResults: 'Suchergebnisse',
  2823. allColors: 'Alle Farben',
  2824. commonColors: 'Häufige Farben',
  2825. showLess: 'Weniger',
  2826. showAll: 'Alle',
  2827. noColorsFound: 'Keine Farben gefunden',
  2828. noResults: 'Keine Ergebnisse',
  2829. selectMaterialFirst: 'Bitte zuerst ein Material im Filament-Info Tab auswählen.',
  2830. noPrintersConfigured: 'Keine Drucker konfiguriert. Fügen Sie Drucker hinzu.',
  2831. matchingFilter: 'Filter',
  2832. anyBrand: 'Jede Marke',
  2833. anyVariant: 'Jede Variante',
  2834. autoSelect: 'Auto-Auswahl',
  2835. matches: 'Treffer',
  2836. match: 'Treffer',
  2837. noMatches: 'Keine Treffer',
  2838. connected: 'Verbunden',
  2839. offline: 'Offline',
  2840. printerOffline: 'Drucker ist offline. Verbinden Sie ihn, um Kalibrierungsprofile anzuzeigen.',
  2841. noKProfilesMatch: 'Keine K-Profile stimmen mit dem gewählten Filament überein.',
  2842. leftNozzle: 'Linke Düse',
  2843. rightNozzle: 'Rechte Düse',
  2844. profilesSelected: 'Kalibrierungsprofil(e) ausgewählt',
  2845. // Stats & enhanced table
  2846. totalInventory: 'Gesamtbestand',
  2847. totalConsumed: 'Gesamtverbrauch',
  2848. byMaterial: 'Nach Material',
  2849. inPrinter: 'Im Drucker',
  2850. lowStock: 'Niedriger Bestand',
  2851. sinceTracking: 'Seit Beginn der Erfassung',
  2852. loadedInAms: 'Im AMS/Ext geladen',
  2853. remaining: 'Verbleibend',
  2854. weightCheck: 'Gewichtskontrolle',
  2855. lastWeighed: 'Zuletzt gewogen',
  2856. neverWeighed: 'Nie gewogen',
  2857. search: 'Spulen suchen...',
  2858. showing: 'Zeige',
  2859. to: 'bis',
  2860. of: 'von',
  2861. show: 'Zeige',
  2862. spools: 'Spulen',
  2863. spool: 'Spule',
  2864. page: 'Seite',
  2865. noSpoolsMatch: 'Keine Ergebnisse',
  2866. noSpoolsMatchDesc: 'Versuchen Sie, Ihre Suche oder Filter anzupassen.',
  2867. active: 'Aktiv',
  2868. archived: 'Archiviert',
  2869. all: 'Alle',
  2870. used: 'Verwendet',
  2871. new: 'Neu',
  2872. clearFilters: 'Filter löschen',
  2873. table: 'Tabelle',
  2874. cards: 'Karten',
  2875. net: 'Netto',
  2876. // Grouping
  2877. groupSimilar: 'Gruppieren',
  2878. groupedSpools: '{{count}} identische Spulen',
  2879. groupedRows: 'Zeilen',
  2880. // Column config
  2881. columns: 'Spalten',
  2882. configureColumns: 'Spalten konfigurieren',
  2883. configureColumnsDesc: 'Ziehen zum Neuordnen oder Pfeile verwenden. Sichtbarkeit mit dem Augensymbol umschalten.',
  2884. visible: 'sichtbar',
  2885. reset: 'Zurücksetzen',
  2886. cancel: 'Abbrechen',
  2887. applyChanges: 'Änderungen anwenden',
  2888. moveUp: 'Nach oben',
  2889. moveDown: 'Nach unten',
  2890. hideColumn: 'Spalte ausblenden',
  2891. showColumn: 'Spalte einblenden',
  2892. // Tag-Verknüpfung
  2893. linkToSpool: 'Mit Spule verknüpfen',
  2894. tagLinked: 'Tag mit Spule verknüpft',
  2895. tagLinkFailed: 'Tag-Verknüpfung fehlgeschlagen',
  2896. tagAlreadyLinked: 'Tag bereits mit anderer Spule verknüpft',
  2897. unknownTag: 'Unbekannter RFID-Tag erkannt',
  2898. // Verbrauchshistorie
  2899. usageHistory: 'Verbrauchshistorie',
  2900. noUsageHistory: 'Noch kein Verbrauch erfasst',
  2901. printName: 'Druckname',
  2902. weightConsumed: 'Verbrauchtes Gewicht',
  2903. clearHistory: 'Löschen',
  2904. historyCleared: 'Verbrauchshistorie gelöscht',
  2905. fillSourceLabel: '(Inv)',
  2906. lowStockThresholdError: 'Der Schwellenwert muss zwischen 0.1 und 99.9 liegen',
  2907. },
  2908. // Timelapse
  2909. timelapse: {
  2910. title: 'Zeitraffer',
  2911. create: 'Zeitraffer erstellen',
  2912. download: 'Herunterladen',
  2913. delete: 'Löschen',
  2914. preview: 'Vorschau',
  2915. frameRate: 'Bildrate',
  2916. quality: 'Qualität',
  2917. processing: 'Wird verarbeitet...',
  2918. noTimelapses: 'Keine Zeitraffer verfügbar',
  2919. },
  2920. // AMS
  2921. ams: {
  2922. title: 'AMS',
  2923. slot: 'Slot',
  2924. empty: 'Leer',
  2925. emptySlot: 'Leerer Slot',
  2926. unknown: 'Unbekannt',
  2927. humidity: 'Luftfeuchtigkeit',
  2928. temperature: 'Temperatur',
  2929. filamentType: 'Filamenttyp',
  2930. filamentColor: 'Farbe',
  2931. remaining: 'Verbleibend',
  2932. history: 'AMS-Verlauf',
  2933. noHistory: 'Kein Verlauf verfügbar',
  2934. configureSlot: 'Slot konfigurieren',
  2935. externalSpool: 'Externe Spule',
  2936. profile: 'Profil',
  2937. kFactor: 'K-Faktor',
  2938. fill: 'Füllstand',
  2939. configure: 'Konfigurieren',
  2940. used: 'verwendet',
  2941. remainingUnit: 'verbleibend',
  2942. },
  2943. // Print modal
  2944. printModal: {
  2945. title: 'Druck starten',
  2946. selectPrinter: 'Drucker auswählen',
  2947. selectPlate: 'Platte auswählen',
  2948. filamentMapping: 'Filamentzuordnung',
  2949. totalCost: 'Gesamtkosten:',
  2950. slotRemainingShort: ' - {{grams}}g übrig',
  2951. printSettings: 'Druckeinstellungen',
  2952. bedLeveling: 'Bett-Nivellierung',
  2953. flowCalibration: 'Fluss-Kalibrierung',
  2954. vibrationCalibration: 'Vibrations-Kalibrierung',
  2955. layerInspection: 'Erste-Schicht-Prüfung',
  2956. timelapse: 'Zeitraffer',
  2957. startPrint: 'Druck starten',
  2958. addToQueue: 'Zur Warteschlange hinzufügen',
  2959. cancel: 'Abbrechen',
  2960. noPrintersAvailable: 'Keine Drucker verfügbar',
  2961. printerBusy: 'Drucker ist beschäftigt',
  2962. printerOffline: 'Drucker ist offline',
  2963. sameTypeDifferentColor: 'Gleicher Typ, andere Farbe',
  2964. filamentTypeNotLoaded: 'Filamenttyp nicht geladen',
  2965. openCalendar: 'Kalender öffnen',
  2966. leftNozzle: 'L',
  2967. rightNozzle: 'R',
  2968. leftNozzleTooltip: 'Linke Düse',
  2969. rightNozzleTooltip: 'Rechte Düse',
  2970. filamentOverride: 'Filament-Überschreibung',
  2971. filamentOverrideHint: 'Filamente für modellbasierte Zuweisung optional überschreiben. Der Planer wird gegen die ausgewählten Filamente statt der ursprünglichen 3MF-Werte abgleichen.',
  2972. originalFilament: 'Original',
  2973. overrideWith: 'Ersetzen mit',
  2974. resetToOriginal: 'Auf Original zurücksetzen',
  2975. },
  2976. // Backup
  2977. backup: {
  2978. title: 'Sichern & Wiederherstellen',
  2979. createBackup: 'Sicherung erstellen',
  2980. restoreBackup: 'Sicherung wiederherstellen',
  2981. restoreDescription: 'Alle Daten aus einer Sicherungsdatei ersetzen',
  2982. downloadBackup: 'Sicherung herunterladen',
  2983. uploadBackup: 'Sicherung hochladen',
  2984. lastBackup: 'Letzte Sicherung',
  2985. autoBackup: 'Automatische Sicherung',
  2986. backupNow: 'Jetzt sichern',
  2987. restoreWarning: 'Warnung: Das Wiederherstellen einer Sicherung überschreibt alle aktuellen Daten.',
  2988. includeArchives: 'Archive einschließen',
  2989. includeSettings: 'Einstellungen einschließen',
  2990. includeProfiles: 'Profile einschließen',
  2991. backupSuccess: 'Sicherung erfolgreich erstellt',
  2992. restoreSuccess: 'Sicherung erfolgreich wiederhergestellt',
  2993. backupFailed: 'Sicherung fehlgeschlagen',
  2994. restoreFailed: 'Wiederherstellung fehlgeschlagen',
  2995. restoreNote: 'Virtueller Drucker wird während der Wiederherstellung gestoppt',
  2996. // GitHub Backup
  2997. githubBackup: 'GitHub Backup',
  2998. enabled: 'Aktiviert',
  2999. cloudLoginRequired: 'Bambu Cloud Login erforderlich. Melden Sie sich unter Profile → Cloud-Profile an, um GitHub-Backup zu aktivieren.',
  3000. githubDescription: 'Synchronisieren Sie Ihre Profile automatisch mit einem privaten GitHub-Repository für Backup und Versionsverlauf.',
  3001. repositoryUrl: 'Repository-URL',
  3002. personalAccessToken: 'Persönlicher Zugriffstoken',
  3003. tokenSaved: '(gespeichert)',
  3004. enterNewToken: 'Neuen Token eingeben zum Aktualisieren',
  3005. tokenHint: 'Feingranularer Token mit Lese-/Schreibberechtigung für Inhalte',
  3006. branch: 'Branch',
  3007. manualOnly: 'Nur manuell',
  3008. hourly: 'Stündlich',
  3009. daily: 'Täglich',
  3010. weekly: 'Wöchentlich',
  3011. includeInBackup: 'In Sicherung einschließen',
  3012. kProfiles: 'K-Profile',
  3013. kProfilesDescription: 'Druckvorschub-Kalibrierung von verbundenen Druckern',
  3014. noPrintersConnected: 'Keine Drucker verbunden',
  3015. printersConnected: '{{connected}}/{{total}} verbunden',
  3016. cloudProfiles: 'Cloud-Profile',
  3017. cloudProfilesDescription: 'Filament-, Drucker- und Prozessprofile aus der Bambu Cloud',
  3018. appSettings: 'App-Einstellungen',
  3019. appSettingsDescription: 'Bambuddy-Konfiguration (komplette Datenbank)',
  3020. lastBackupAt: 'Letzte Sicherung:',
  3021. noBackupsYet: 'Noch keine Sicherungen',
  3022. next: 'Nächste:',
  3023. startingBackup: 'Sicherung wird gestartet...',
  3024. test: 'Test',
  3025. enableBackup: 'Sicherung aktivieren',
  3026. testConnection: 'Verbindung testen',
  3027. enterRepoUrl: 'Repository-URL eingeben',
  3028. enterRepoAndToken: 'Repository-URL und Zugriffstoken eingeben',
  3029. repoRequired: 'Repository-URL ist erforderlich',
  3030. tokenRequired: 'Zugriffstoken ist erforderlich',
  3031. githubBackupEnabled: 'GitHub-Backup aktiviert',
  3032. tokenUpdated: 'Token aktualisiert',
  3033. settingsSaved: 'Einstellungen gespeichert',
  3034. failedToSave: 'Speichern fehlgeschlagen: {{message}}',
  3035. backupCompleteFiles: 'Sicherung abgeschlossen - {{count}} Dateien aktualisiert',
  3036. backupSkippedNoChanges: 'Sicherung übersprungen - keine Änderungen',
  3037. backupFailed2: 'Sicherung fehlgeschlagen: {{message}}',
  3038. clearedLogs: '{{count}} Protokolle gelöscht',
  3039. failedToClearLogs: 'Protokolle löschen fehlgeschlagen: {{message}}',
  3040. // History
  3041. history: 'Verlauf',
  3042. clear: 'Löschen',
  3043. date: 'Datum',
  3044. status: 'Status',
  3045. commit: 'Commit',
  3046. // Local Backup
  3047. localBackup: 'Lokale Sicherung',
  3048. localBackupDescription: 'Erstellen Sie eine vollständige Sicherung Ihrer Bambuddy-Daten einschließlich Datenbank, Archive, Uploads und aller Dateien.',
  3049. downloadBackupLabel: 'Sicherung herunterladen',
  3050. completeBackupZip: 'Vollständige Sicherung: Datenbank + alle Dateien (ZIP)',
  3051. download: 'Herunterladen',
  3052. preparingBackup: 'Sicherung wird vorbereitet...',
  3053. creatingArchive: 'Sicherungsarchiv wird erstellt... Dies kann bei großen Archiven eine Weile dauern.',
  3054. downloadingFile: 'Sicherungsdatei wird heruntergeladen...',
  3055. backupDownloaded: 'Sicherung erfolgreich heruntergeladen',
  3056. failedToCreateBackup: 'Sicherung erstellen fehlgeschlagen: {{message}}',
  3057. restore: 'Wiederherstellen',
  3058. restoreReplacesAll: 'Wiederherstellung ersetzt alle Daten.',
  3059. restoreReplacesAllDetail: 'Ihre aktuelle Datenbank und Dateien werden vollständig ersetzt. Nach der Wiederherstellung ist ein Neustart erforderlich.',
  3060. restoreConfirmTitle: 'Sicherung wiederherstellen',
  3061. restoreConfirmMessage: 'Sind Sie sicher, dass Sie von "{{filename}}" wiederherstellen möchten? Dies ersetzt Ihre aktuelle Datenbank und alle Dateien vollständig. Die Anwendung muss nach der Wiederherstellung neu gestartet werden.',
  3062. restoreConfirmButton: 'Sicherung wiederherstellen',
  3063. uploadingFile: 'Sicherungsdatei wird hochgeladen...',
  3064. backupRestoredRestart: 'Sicherung wiederhergestellt. Bitte starten Sie Bambuddy neu.',
  3065. failedToRestore: 'Sicherung wiederherstellen fehlgeschlagen. Bitte überprüfen Sie das Dateiformat.',
  3066. reloadNow: 'Jetzt neu laden',
  3067. creatingBackup: 'Sicherung erstellen',
  3068. restoringBackup: 'Sicherung wiederherstellen',
  3069. preparing: 'Vorbereiten...',
  3070. processing: 'Verarbeiten...',
  3071. doNotClosePage: 'Bitte schließen Sie diese Seite nicht und navigieren Sie nicht weg. Dieser Vorgang kann bei großen Sicherungen mehrere Minuten dauern.',
  3072. // RestoreModal
  3073. restoring: 'Wiederherstellen...',
  3074. restoreComplete: 'Wiederherstellung abgeschlossen',
  3075. restoreFailed2: 'Wiederherstellung fehlgeschlagen',
  3076. importSettings: 'Einstellungen aus einer Sicherungsdatei importieren',
  3077. pleaseWaitRestoring: 'Bitte warten Sie, während Ihre Daten wiederhergestellt werden',
  3078. selectBackupFile: 'Klicken Sie, um eine Sicherungsdatei auszuwählen (.json oder .zip)',
  3079. duplicateHandling: 'So funktioniert die Duplikatbehandlung:',
  3080. matchPrinters: 'Drucker',
  3081. matchPrintersBy: 'abgeglichen nach Seriennummer',
  3082. matchSmartPlugs: 'Smart Plugs',
  3083. matchSmartPlugsBy: 'abgeglichen nach IP-Adresse',
  3084. matchNotificationProviders: 'Benachrichtigungsanbieter',
  3085. matchNotificationProvidersBy: 'abgeglichen nach Name',
  3086. matchFilaments: 'Filamente',
  3087. matchFilamentsBy: 'abgeglichen nach Name + Typ + Marke',
  3088. matchArchives: 'Archive',
  3089. matchArchivesBy: 'abgeglichen nach Inhaltshash (immer übersprungen)',
  3090. matchPendingUploads: 'Ausstehende Uploads',
  3091. matchPendingUploadsBy: 'abgeglichen nach Dateiname',
  3092. matchSettingsTemplates: 'Einstellungen & Vorlagen',
  3093. matchSettingsTemplatesBy: 'immer überschrieben',
  3094. replaceExisting: 'Vorhandene Daten ersetzen',
  3095. keepExisting: 'Vorhandene Daten behalten',
  3096. overwriteDescription: 'Bereits vorhandene Elemente mit Sicherungsdaten überschreiben',
  3097. keepDescription: 'Nur Elemente wiederherstellen, die noch nicht vorhanden sind',
  3098. overwriteCaution: 'Achtung:',
  3099. overwriteWarning: 'Das Überschreiben ersetzt Ihre aktuellen Konfigurationen durch Daten aus der Sicherung. Drucker-Zugangscodes werden aus Sicherheitsgründen nie überschrieben.',
  3100. cancel: 'Abbrechen',
  3101. processingBackup: 'Sicherungsdatei wird verarbeitet...',
  3102. itemsRestored: 'Wiederhergestellt',
  3103. itemsSkipped: 'Übersprungen',
  3104. restored: 'Wiederhergestellt',
  3105. skippedAlreadyExist: 'Übersprungen (bereits vorhanden)',
  3106. filesCategory: 'Dateien (3MF, Thumbnails, etc.)',
  3107. andMore: '...und {{count}} weitere',
  3108. newApiKeysGenerated: 'Neue API-Schlüssel generiert',
  3109. keysShownOnce: 'Diese Schlüssel werden nur einmal angezeigt. Kopieren Sie sie jetzt!',
  3110. copy: 'Kopieren',
  3111. noDataFound: 'In der Sicherungsdatei wurden keine Daten zur Wiederherstellung gefunden.',
  3112. close: 'Schließen',
  3113. // Category labels
  3114. categories: {
  3115. settings: 'Einstellungen',
  3116. notification_providers: 'Benachrichtigungsanbieter',
  3117. notification_templates: 'Benachrichtigungsvorlagen',
  3118. smart_plugs: 'Smart Plugs',
  3119. printers: 'Drucker',
  3120. filaments: 'Filamente',
  3121. maintenance_types: 'Wartungstypen',
  3122. archives: 'Archive',
  3123. projects: 'Projekte',
  3124. pending_uploads: 'Ausstehende Uploads',
  3125. external_links: 'Externe Links',
  3126. api_keys: 'API-Schlüssel',
  3127. },
  3128. },
  3129. // Tags
  3130. tags: {
  3131. title: 'Tags',
  3132. addTag: 'Tag hinzufügen',
  3133. editTag: 'Tag bearbeiten',
  3134. deleteTag: 'Tag löschen',
  3135. tagName: 'Tag-Name',
  3136. tagColor: 'Tag-Farbe',
  3137. noTags: 'Keine Tags',
  3138. deleteConfirm: 'Möchten Sie diesen Tag wirklich löschen?',
  3139. manageTags: 'Tags verwalten',
  3140. },
  3141. // Upload modal (archives)
  3142. uploadModal: {
  3143. title: '3MF-Dateien hochladen',
  3144. dragDrop: '3MF-Dateien hierher ziehen',
  3145. or: 'oder',
  3146. browseFiles: 'Dateien durchsuchen',
  3147. extractionInfo: 'Das Druckermodell wird automatisch aus den 3MF-Datei-Metadaten extrahiert.',
  3148. uploaded: 'hochgeladen',
  3149. failed: 'fehlgeschlagen',
  3150. uploading: 'Wird hochgeladen...',
  3151. upload: 'Hochladen',
  3152. uploadFailed: 'Hochladen fehlgeschlagen',
  3153. },
  3154. // Edit archive modal
  3155. editArchive: {
  3156. title: 'Archiv bearbeiten',
  3157. name: 'Name',
  3158. namePlaceholder: 'Druckname',
  3159. printer: 'Drucker',
  3160. noPrinter: 'Kein Drucker',
  3161. project: 'Projekt',
  3162. noProject: 'Kein Projekt',
  3163. itemsPrinted: 'Gedruckte Teile',
  3164. itemsPrintedHelp: 'Anzahl der in diesem Druckauftrag produzierten Teile',
  3165. notes: 'Notizen',
  3166. notesPlaceholder: 'Notizen zu diesem Druck hinzufügen...',
  3167. externalLink: 'Externer Link',
  3168. externalLinkPlaceholder: 'https://printables.com/model/...',
  3169. externalLinkHelp: 'Link zu Printables, Thingiverse oder anderer Quelle',
  3170. tags: 'Tags',
  3171. tagsPlaceholder: 'Tags hinzufügen...',
  3172. addMoreTags: 'Weitere Tags hinzufügen...',
  3173. matchingTags: 'Übereinstimmend mit "{{query}}"',
  3174. existingTags: 'Vorhandene Tags',
  3175. clickToAdd: '(zum Hinzufügen klicken)',
  3176. status: 'Status',
  3177. failureReason: 'Fehlergrund',
  3178. selectReason: 'Grund auswählen...',
  3179. photos: 'Fotos des Druckergebnisses',
  3180. photosHelp: 'Klicken Sie auf + um Fotos Ihres Druckergebnisses hinzuzufügen',
  3181. printResult: 'Druckergebnis',
  3182. saving: 'Wird gespeichert...',
  3183. // Failure reasons
  3184. failureReasons: {
  3185. adhesionFailure: 'Haftungsfehler',
  3186. spaghettiDetached: 'Spaghetti / Abgelöst',
  3187. layerShift: 'Schichtversatz',
  3188. cloggedNozzle: 'Verstopfte Düse',
  3189. filamentRunout: 'Filament aufgebraucht',
  3190. warping: 'Verformung',
  3191. stringing: 'Fadenziehen',
  3192. underExtrusion: 'Unterextrusion',
  3193. powerFailure: 'Stromausfall',
  3194. userCancelled: 'Vom Benutzer abgebrochen',
  3195. other: 'Sonstiges',
  3196. },
  3197. // Archive statuses
  3198. statuses: {
  3199. completed: 'Abgeschlossen',
  3200. failed: 'Fehlgeschlagen',
  3201. aborted: 'Abgebrochen',
  3202. printing: 'Druckt',
  3203. },
  3204. },
  3205. // K-Profiles
  3206. kProfiles: {
  3207. title: 'K-Profile',
  3208. noPrintersConfigured: 'Keine Drucker konfiguriert',
  3209. addPrinterInSettings: 'Fügen Sie einen Drucker in den Einstellungen hinzu, um K-Profile zu verwalten',
  3210. noActivePrinters: 'Keine aktiven Drucker',
  3211. enablePrinterConnection: 'Aktivieren Sie eine Druckerverbindung, um K-Profile anzuzeigen',
  3212. loadingProfiles: 'Lade K-Profile...',
  3213. printerOffline: 'Drucker offline',
  3214. printerOfflineDesc: 'Der ausgewählte Drucker ist nicht verbunden. Schalten Sie ihn ein, um K-Profile anzuzeigen.',
  3215. noMatchingProfiles: 'Keine passenden Profile',
  3216. noMatchingProfilesDesc: 'Keine Profile entsprechen Ihren Suchkriterien',
  3217. noKProfiles: 'Keine K-Profile',
  3218. noKProfilesDesc: 'Keine Druckvorschub-Profile für {{diameter}}mm Düse gefunden',
  3219. createFirstProfile: 'Erstes Profil erstellen',
  3220. // Controls
  3221. printer: 'Drucker',
  3222. nozzle: 'Düse',
  3223. refresh: 'Aktualisieren',
  3224. addProfile: 'Profil hinzufügen',
  3225. export: 'Exportieren',
  3226. import: 'Importieren',
  3227. select: 'Auswählen',
  3228. selectAll: 'Alle auswählen',
  3229. delete: 'Löschen',
  3230. // Filters
  3231. searchPlaceholder: 'Nach Name oder Filament suchen...',
  3232. allExtruders: 'Alle Extruder',
  3233. leftOnly: 'Nur links',
  3234. rightOnly: 'Nur rechts',
  3235. allFlow: 'Alle Flusstypen',
  3236. hfOnly: 'Nur HF',
  3237. sOnly: 'Nur S',
  3238. sortName: 'Sortieren: Name',
  3239. sortKValue: 'Sortieren: K-Wert',
  3240. sortFilament: 'Sortieren: Filament',
  3241. // Dual extruder labels
  3242. leftExtruder: 'Linker Extruder',
  3243. rightExtruder: 'Rechter Extruder',
  3244. // Modal
  3245. modal: {
  3246. addTitle: 'K-Profil hinzufügen',
  3247. editTitle: 'K-Profil bearbeiten',
  3248. profileName: 'Profilname',
  3249. profileNamePlaceholder: 'Mein PLA-Profil',
  3250. kValue: 'K-Wert',
  3251. kValuePlaceholder: '0,020',
  3252. kValueHelp: 'Typischer Bereich: 0,01 - 0,06 für PLA, 0,02 - 0,10 für PETG',
  3253. filament: 'Filament',
  3254. selectFilament: 'Filament auswählen...',
  3255. noFilamentsHelp: 'Keine Filamente gefunden. Erstellen Sie zuerst ein K-Profil in Bambu Studio.',
  3256. flowType: 'Flusstyp',
  3257. highFlow: 'High Flow',
  3258. standard: 'Standard',
  3259. nozzleSize: 'Düsengröße',
  3260. extruder: 'Extruder',
  3261. extruders: 'Extruder',
  3262. left: 'Links',
  3263. right: 'Rechts',
  3264. notes: 'Notizen (lokal gespeichert)',
  3265. notesPlaceholder: 'Notizen zu diesem Profil hinzufügen...',
  3266. notesHelp: 'Notizen werden in Bambuddy gespeichert, nicht auf dem Drucker',
  3267. syncing: 'Synchronisiert mit Drucker...',
  3268. savingExtruder: 'Speichern auf Extruder {{current}}/{{total}}...',
  3269. pleaseWait: 'Bitte warten',
  3270. },
  3271. // Delete confirmation
  3272. deleteConfirm: {
  3273. title: 'Profil löschen',
  3274. cannotUndo: 'Dies kann nicht rückgängig gemacht werden',
  3275. message: 'Möchten Sie "{{name}}" wirklich vom Drucker löschen?',
  3276. },
  3277. // Bulk delete
  3278. bulkDelete: {
  3279. title: 'Profile löschen',
  3280. cannotUndo: 'Dies kann nicht rückgängig gemacht werden',
  3281. message: 'Möchten Sie wirklich {{count}} ausgewählte Profile vom Drucker löschen?',
  3282. },
  3283. // Toast
  3284. toast: {
  3285. profileSaved: 'K-Profil gespeichert',
  3286. profilesSaved: 'K-Profil auf {{count}} Extrudern gespeichert',
  3287. selectAtLeastOneExtruder: 'Bitte wählen Sie mindestens einen Extruder aus',
  3288. profileDeleted: 'K-Profil gelöscht',
  3289. profilesDeleted: '{{count}} Profile gelöscht',
  3290. exportedProfiles: '{{count}} Profile exportiert',
  3291. importedProfiles: '{{count}} von {{total}} Profilen importiert',
  3292. noProfilesToExport: 'Keine Profile zum Exportieren',
  3293. invalidFileFormat: 'Ungültiges Dateiformat',
  3294. failedToParseImport: 'Import-Datei konnte nicht gelesen werden',
  3295. failedToSaveBatch: 'K-Profile konnten nicht gespeichert werden',
  3296. noteSaved: 'Notiz gespeichert',
  3297. failedToSaveNote: 'Notiz konnte nicht gespeichert werden',
  3298. },
  3299. // Permissions
  3300. permission: {
  3301. noRead: 'Sie haben keine Berechtigung, Profile zu aktualisieren',
  3302. noCreate: 'Sie haben keine Berechtigung, Profile hinzuzufügen',
  3303. noUpdate: 'Sie haben keine Berechtigung, K-Profile zu aktualisieren',
  3304. noDelete: 'Sie haben keine Berechtigung, K-Profile zu löschen',
  3305. noExport: 'Sie haben keine Berechtigung, Profile zu exportieren',
  3306. noImport: 'Sie haben keine Berechtigung, Profile zu importieren',
  3307. },
  3308. },
  3309. // Virtual Printer
  3310. virtualPrinter: {
  3311. title: 'Virtueller Drucker',
  3312. running: 'Läuft',
  3313. stopped: 'Gestoppt',
  3314. description: {
  3315. default: 'Aktiviere einen virtuellen Drucker, der in Bambu Studio und OrcaSlicer erscheint. Dateien, die an diesen Drucker gesendet werden, werden direkt archiviert ohne zu drucken.',
  3316. proxy: 'Aktiviere einen Proxy, der Slicer-Datenverkehr an einen echten Drucker weiterleitet, um Ferndruck über jedes Netzwerk zu ermöglichen.',
  3317. },
  3318. enable: {
  3319. title: 'Virtuellen Drucker aktivieren',
  3320. visibleInSlicer: 'Sichtbar als "Bambuddy" in der Slicer-Erkennung',
  3321. proxyingTo: 'Proxy zu {{name}}',
  3322. notActive: 'Nicht aktiv',
  3323. },
  3324. model: {
  3325. title: 'Druckermodell',
  3326. description: 'Wähle welches Druckermodell emuliert werden soll.',
  3327. restartWarning: 'Das Ändern des Modells startet den virtuellen Drucker neu',
  3328. },
  3329. accessCode: {
  3330. title: 'Zugangscode',
  3331. isSet: 'Zugangscode ist gesetzt',
  3332. notSet: 'Kein Zugangscode gesetzt - erforderlich zum Aktivieren',
  3333. placeholder: '8-Zeichen-Code eingeben',
  3334. placeholderChange: 'Neuen Code eingeben zum Ändern',
  3335. hint: 'Muss genau 8 Zeichen lang sein. Wird von Slicern zur Authentifizierung verwendet.',
  3336. charCount: '({{count}}/8)',
  3337. },
  3338. targetPrinter: {
  3339. title: 'Zieldrucker',
  3340. configured: 'Proxy-Ziel konfiguriert',
  3341. notConfigured: 'Kein Zieldrucker ausgewählt - erforderlich für Proxy-Modus',
  3342. placeholder: 'Drucker auswählen...',
  3343. hint: 'Wähle den Drucker aus, an den der Slicer-Datenverkehr weitergeleitet werden soll. Der Drucker muss im LAN-Modus sein.',
  3344. noPrinters: 'Keine Drucker konfiguriert. Füge zuerst einen Drucker hinzu, um den Proxy-Modus zu verwenden.',
  3345. },
  3346. remoteInterface: {
  3347. title: 'Netzwerkschnittstelle überschreiben',
  3348. configured: 'Schnittstellenüberschreibung aktiv',
  3349. optional: 'Optional - verwenden wenn die automatisch erkannte IP falsch ist (z.B. mehrere NICs, Docker, VPN)',
  3350. placeholder: 'Automatisch erkennen (Standard)...',
  3351. hint: 'Überschreibt die per SSDP beworbene und im TLS-Zertifikat verwendete IP-Adresse. Nützlich wenn Bambuddy mehrere Netzwerkschnittstellen hat.',
  3352. },
  3353. mode: {
  3354. title: 'Modus',
  3355. archive: 'Archivieren',
  3356. archiveDesc: 'Dateien sofort archivieren',
  3357. review: 'Überprüfen',
  3358. reviewDesc: 'Vor dem Archivieren überprüfen',
  3359. queue: 'Warteschlange',
  3360. queueDesc: 'Archivieren und zur Warteschlange hinzufügen',
  3361. proxy: 'Proxy',
  3362. proxyDesc: 'An echten Drucker weiterleiten',
  3363. },
  3364. setupRequired: {
  3365. title: 'Einrichtung erforderlich',
  3366. description: 'Die virtuelle Druckerfunktion erfordert zusätzliche Systemkonfiguration, bevor sie funktioniert. Dies beinhaltet Portweiterleitung, Firewall-Regeln und plattformspezifische Einstellungen.',
  3367. readGuide: 'Lese die Einrichtungsanleitung vor dem Aktivieren',
  3368. },
  3369. howItWorks: {
  3370. title: 'So funktioniert es',
  3371. step1: 'Im selben LAN erscheinen virtuelle Drucker automatisch in deinem Slicer (Bambu Studio / OrcaSlicer). Aus anderen Netzwerken füge sie manuell per IP-Adresse und Zugangscode hinzu.',
  3372. step2: 'Im Archiv-, Überprüfungs- und Warteschlangen-Modus verwende die "Senden"-Funktion im Slicer, um 3MF-Dateien an Bambuddy zu senden. Der Slicer zeigt "Druck erfolgreich" — die Datei wird gespeichert, nicht gedruckt.',
  3373. step3: 'Im Proxy-Modus leitet der virtuelle Drucker den gesamten Datenverkehr an einen echten Drucker weiter — Drucke starten sofort wie bei einer direkten Verbindung.',
  3374. },
  3375. status: {
  3376. title: 'Status-Details',
  3377. printerName: 'Druckername',
  3378. model: 'Modell',
  3379. serialNumber: 'Seriennummer',
  3380. mode: 'Modus',
  3381. pendingFiles: 'Ausstehende Dateien',
  3382. targetPrinter: 'Zieldrucker',
  3383. ftpPort: 'FTP-Port',
  3384. mqttPort: 'MQTT-Port',
  3385. ftpConnections: 'FTP-Verbindungen',
  3386. mqttConnections: 'MQTT-Verbindungen',
  3387. },
  3388. toast: {
  3389. updated: 'Virtuelle Druckereinstellungen aktualisiert',
  3390. failedToUpdate: 'Einstellungen konnten nicht aktualisiert werden',
  3391. accessCodeRequired: 'Bitte zuerst einen Zugangscode setzen',
  3392. targetPrinterRequired: 'Bitte zuerst einen Zieldrucker auswählen',
  3393. bindIpRequired: 'Bitte zuerst eine Bind-IP setzen',
  3394. accessCodeEmpty: 'Zugangscode darf nicht leer sein',
  3395. accessCodeLength: 'Zugangscode muss genau 8 Zeichen lang sein',
  3396. created: 'Virtueller Drucker erstellt',
  3397. failedToCreate: 'Virtueller Drucker konnte nicht erstellt werden',
  3398. deleted: 'Virtueller Drucker gelöscht',
  3399. failedToDelete: 'Virtueller Drucker konnte nicht gelöscht werden',
  3400. },
  3401. list: {
  3402. title: 'Virtuelle Drucker',
  3403. add: 'Hinzufügen',
  3404. addFirst: 'Virtuellen Drucker hinzufügen',
  3405. empty: 'Keine virtuellen Drucker konfiguriert. Fügen Sie einen hinzu, um zu beginnen.',
  3406. },
  3407. bindIp: {
  3408. title: 'Bind-Interface',
  3409. placeholder: 'Interface auswählen...',
  3410. hint: 'Netzwerkinterface, an das dieser virtuelle Drucker gebunden wird. Muss pro Drucker eindeutig sein.',
  3411. },
  3412. proxy: {
  3413. accessCodeHint: 'Im Proxy-Modus den Zugangscode des Zieldruckers im Slicer verwenden. Die Verbindung wird transparent zum echten Drucker weitergeleitet.',
  3414. },
  3415. addDialog: {
  3416. title: 'Virtuellen Drucker hinzufügen',
  3417. name: 'Name',
  3418. hint: 'Sie können Zugangscode, Zieldrucker und andere Einstellungen nach dem Erstellen konfigurieren.',
  3419. create: 'Erstellen',
  3420. },
  3421. deleteConfirm: {
  3422. title: 'Virtuellen Drucker löschen',
  3423. message: 'Möchten Sie "{{name}}" wirklich löschen? Dies stoppt alle Dienste für diesen Drucker.',
  3424. },
  3425. },
  3426. // Model Viewer
  3427. modelViewer: {
  3428. openInSlicer: 'Im Slicer öffnen',
  3429. tabs: {
  3430. model: '3D-Modell',
  3431. gcode: 'G-Code Vorschau',
  3432. },
  3433. notAvailable: 'nicht verfügbar',
  3434. notSliced: 'nicht geslicet',
  3435. plates: 'Platten',
  3436. allPlates: 'Alle Platten',
  3437. plateNumber: 'Platte {{number}}',
  3438. plateCount: '{{count}} Platte',
  3439. plateCount_other: '{{count}} Platten',
  3440. objectCount: '{{count}} Objekt',
  3441. objectCount_other: '{{count}} Objekte',
  3442. filamentCount: '{{count}} Filament',
  3443. filamentCount_other: '{{count}} Filamente',
  3444. eta: 'ETA {{minutes}} Min',
  3445. noPreview: 'Keine Vorschau für diese Datei verfügbar',
  3446. pagination: {
  3447. pageOf: 'Seite {{current}} von {{total}}',
  3448. prev: 'Zurück',
  3449. next: 'Weiter',
  3450. },
  3451. errors: {
  3452. failedToLoad: 'Datei konnte nicht geladen werden',
  3453. noMeshes: 'Keine Meshes in 3MF-Datei gefunden',
  3454. unsupportedFormat: 'Nicht unterstütztes Dateiformat',
  3455. },
  3456. },
  3457. // Maintenance type descriptions (built-in)
  3458. maintenanceDescriptions: {
  3459. lubricateCarbonRods: 'Schmiermittel auf Karbonstäbe für sanfte Bewegung auftragen',
  3460. lubricateRails: 'Schmiermittel auf Linearschienen für sanfte Bewegung auftragen',
  3461. cleanNozzle: 'Hotend und Düse reinigen, um Verstopfungen zu verhindern',
  3462. checkBelts: 'Riemenspannung für präzise Drucke überprüfen',
  3463. cleanBuildPlate: 'Druckplatte für bessere Haftung reinigen',
  3464. checkExtruder: 'Extruderzahnräder auf Verschleiß prüfen',
  3465. checkCooling: 'Sicherstellen, dass Lüfter ordnungsgemäß funktionieren',
  3466. generalInspection: 'Allgemeine Druckerinspektion',
  3467. cleanCarbonRods: 'Karbonstäbe reinigen, um Reibung zu reduzieren',
  3468. lubricateSteelRods: 'Schmiermittel auf Stahlstangen für sanfte Bewegung auftragen',
  3469. cleanSteelRods: 'Stahlstangen reinigen, um Reibung zu reduzieren',
  3470. cleanLinearRails: 'Linearschienen abwischen, um Staub und Schmutz zu entfernen',
  3471. checkPtfeTube: 'PTFE-Schlauch auf Verschleiß oder Beschädigung prüfen',
  3472. replaceHepaFilter: 'HEPA-Filter für Luftqualität ersetzen',
  3473. replaceCarbonFilter: 'Aktivkohlefilter ersetzen',
  3474. lubricateLeftNozzleRail: 'Linke Düsenschiene schmieren (H2-Serie)',
  3475. },
  3476. // Smart Plugs
  3477. smartPlugs: {
  3478. offline: 'Offline',
  3479. admin: 'Admin',
  3480. openPlugAdminPage: 'Plug-Admin-Seite öffnen',
  3481. deleteSmartPlug: 'Smart Plug löschen',
  3482. turnOnSmartPlug: 'Smart Plug einschalten',
  3483. turnOffSmartPlug: 'Smart Plug ausschalten',
  3484. turnOn: 'Einschalten',
  3485. turnOff: 'Ausschalten',
  3486. addSmartPlug: {
  3487. scanningNetwork: 'Netzwerk wird durchsucht...',
  3488. chooseEntity: 'Entität auswählen...',
  3489. connectionFailed: 'Verbindung fehlgeschlagen',
  3490. searchEntities: 'Entitäten suchen...',
  3491. searchPowerSensors: 'Leistungssensoren suchen...',
  3492. searchEnergySensors: 'Energiesensoren suchen...',
  3493. placeholders: {
  3494. plugName: 'Wohnzimmer Steckdose',
  3495. mqttStateOnValue: 'ON, true, 1',
  3496. mqttSameAsPower: 'Gleich wie Leistungs-Topic oder anders',
  3497. },
  3498. },
  3499. // SmartPlugCard
  3500. linkedTo: 'Verbunden mit:',
  3501. monitorOnly: 'Nur Überwachung',
  3502. alerts: 'Alarme',
  3503. scheduleOn: 'Ein {{time}}',
  3504. scheduleOff: 'Aus {{time}}',
  3505. on: 'Ein',
  3506. off: 'Aus',
  3507. power: 'Leistung',
  3508. kwhToday: 'kWh Heute',
  3509. settings: 'Einstellungen',
  3510. automationSettings: 'Automatisierungseinstellungen',
  3511. showInSwitchbar: 'In Schaltleiste anzeigen',
  3512. quickAccessSidebar: 'Schnellzugriff über Seitenleiste',
  3513. enabled: 'Aktiviert',
  3514. enableAutomation: 'Automatisierung für diesen Stecker aktivieren',
  3515. autoOn: 'Auto Ein',
  3516. autoOnDescription: 'Einschalten wenn Druck startet',
  3517. autoOff: 'Auto Aus',
  3518. autoOffDescription: 'Ausschalten wenn Druck abgeschlossen (einmalig)',
  3519. turnOffDelayMode: 'Ausschaltverzögerungsmodus',
  3520. time: 'Zeit',
  3521. temp: 'Temp',
  3522. delayMinutes: 'Verzögerung (Minuten)',
  3523. tempThreshold: 'Temperaturschwelle (°C)',
  3524. tempThresholdDescription: 'Schaltet aus wenn die Düse unter diese Temperatur abkühlt',
  3525. edit: 'Bearbeiten',
  3526. deleteConfirm: 'Möchten Sie "{{name}}" wirklich löschen? Dies kann nicht rückgängig gemacht werden.',
  3527. turnOnConfirm: 'Möchten Sie "{{name}}" wirklich einschalten?',
  3528. turnOffConfirm: 'Möchten Sie "{{name}}" wirklich ausschalten? Dies unterbricht die Stromversorgung des angeschlossenen Geräts.',
  3529. failedToTurn: '{{name}}" konnte nicht {{action}} werden',
  3530. unknown: 'Unbekannt',
  3531. // AddSmartPlugModal
  3532. addTitle: 'Smart Plug hinzufügen',
  3533. editTitle: 'Smart Plug bearbeiten',
  3534. stopScanning: 'Suche beenden',
  3535. discoverTasmota: 'Tasmota Geräte suchen',
  3536. foundDevices: '{{count}} Gerät(e) gefunden - zum Auswählen klicken:',
  3537. noDevicesFound: 'Keine Tasmota Geräte in Ihrem Netzwerk gefunden',
  3538. haNotConfigured: 'Home Assistant ist nicht konfiguriert. Einrichtung unter',
  3539. haSettingsPath: 'Einstellungen → Netzwerk → Home Assistant',
  3540. selectEntity: 'Entität auswählen *',
  3541. ipAddress: 'IP-Adresse *',
  3542. nameLabel: 'Name *',
  3543. username: 'Benutzername',
  3544. password: 'Passwort',
  3545. authHint: 'Leer lassen, wenn Ihr Tasmota-Gerät keine Authentifizierung benötigt',
  3546. linkToPrinter: 'Mit Drucker verbinden',
  3547. noPrinter: 'Kein Drucker (nur manuelle Steuerung)',
  3548. linkingDescription: 'Verknüpfung ermöglicht automatisches Ein-/Ausschalten bei Druckstart/-ende',
  3549. powerAlerts: 'Leistungsalarme',
  3550. alertAbove: 'Alarm wenn über (W)',
  3551. alertBelow: 'Alarm wenn unter (W)',
  3552. alertDescription: 'Benachrichtigung wenn der Stromverbrauch diese Schwellenwerte überschreitet. Leer lassen um diese Richtung zu deaktivieren.',
  3553. dailySchedule: 'Tagesplan',
  3554. turnOnAt: 'Einschalten um',
  3555. turnOffAt: 'Ausschalten um',
  3556. scheduleDescription: 'Den Stecker automatisch täglich zu diesen Zeiten ein-/ausschalten. Leer lassen um diese Aktion zu überspringen.',
  3557. showOnPrinterCard: 'Auf Druckerkarte anzeigen',
  3558. displayOnPrinterCard: 'Schaltfläche auf Druckerkarte anzeigen',
  3559. connectedResult: 'Verbunden!',
  3560. deviceLabel: 'Gerät: {{name}} - ',
  3561. stateLabel: 'Status: {{state}}',
  3562. test: 'Test',
  3563. delete: 'Löschen',
  3564. save: 'Speichern',
  3565. add: 'Hinzufügen',
  3566. cancel: 'Abbrechen',
  3567. failedToStartScan: 'Suche konnte nicht gestartet werden',
  3568. nameRequired: 'Name ist erforderlich',
  3569. entityRequired: 'Entität ist für Home Assistant Stecker erforderlich',
  3570. mqttTopicRequired: 'Mindestens ein MQTT-Topic muss für Leistung, Energie oder Statusüberwachung konfiguriert sein',
  3571. loadingEntities: 'Entitäten werden geladen...',
  3572. loading: 'Laden...',
  3573. failedToLoadEntities: 'Entitäten konnten nicht geladen werden: {{error}}',
  3574. noEntitiesMatching: 'Keine Entitäten gefunden die "{{search}}" entsprechen',
  3575. noEntitiesAvailable: 'Keine Entitäten verfügbar',
  3576. searchingEntities: 'Alle Entitäten durchsuchen ({{count}} gefunden)',
  3577. showingEntities: 'Zeige switch, light, input_boolean ({{count}} verfügbar)',
  3578. energyMonitoringOptional: 'Energieüberwachung (Optional)',
  3579. energyMonitoringHint: 'Sensoren suchen und auswählen, die Leistungs-/Energiedaten liefern.',
  3580. powerSensorW: 'Leistungssensor (W)',
  3581. energyTodayKwh: 'Energie Heute (kWh)',
  3582. totalEnergyKwh: 'Gesamtenergie (kWh)',
  3583. noMatchingSensors: 'Keine passenden Sensoren',
  3584. none: 'Keine',
  3585. mqttNotConfigured: 'MQTT-Broker nicht konfiguriert. Broker-Adresse einstellen unter',
  3586. mqttSettingsPath: 'Einstellungen → Netzwerk → MQTT-Veröffentlichung',
  3587. mqttNotConfiguredSuffix: '(Sie müssen die Veröffentlichung nicht aktivieren, nur die Broker-Details ausfüllen).',
  3588. mqttMonitorOnlyDescription: 'MQTT-Stecker empfangen Leistungs-/Energiedaten über MQTT-Abonnement. Ein-/Ausschalten ist nicht verfügbar - verwenden Sie Ihren MQTT-Broker oder Ihr Home-Automation-System.',
  3589. powerMonitoring: 'Leistungsüberwachung',
  3590. energyMonitoring: 'Energieüberwachung',
  3591. stateMonitoring: 'Statusüberwachung',
  3592. optional: 'optional',
  3593. topic: 'Topic',
  3594. jsonPath: 'JSON-Pfad',
  3595. multiplier: 'Multiplikator',
  3596. onValue: 'EIN-Wert',
  3597. mqttPowerHint: 'JSON-Pfad extrahiert Wert aus JSON-Payload (z.B. "power_l1"). Leer lassen wenn Topic rohe numerische Werte sendet.\nMultiplikator 0.001 für mW→W, 1000 für kW→W verwenden.',
  3598. mqttEnergyHint: 'JSON-Pfad extrahiert Wert aus JSON-Payload. Leer lassen für rohe Werte.\nMultiplikator 0.001 für Wh→kWh, 1000 für MWh→kWh verwenden.',
  3599. mqttStateHint: 'JSON-Pfad extrahiert Wert aus JSON-Payload. Leer lassen für rohe Werte.\nEIN-Wert: der genaue String der "EIN" bedeutet. Leer lassen für Auto-Erkennung (ON, true, 1).',
  3600. noSwitchesInSwitchbar: 'Keine Schalter in der Schaltleiste',
  3601. enableSwitchbarHint: '"In Schaltleiste anzeigen" unter Einstellungen > Smart Plugs aktivieren',
  3602. },
  3603. // Notifications
  3604. notifications: {
  3605. // Provider types
  3606. providerTypes: {
  3607. callmebot: 'CallMeBot/WhatsApp',
  3608. ntfy: 'ntfy',
  3609. pushover: 'Pushover',
  3610. telegram: 'Telegram',
  3611. email: 'E-Mail',
  3612. discord: 'Discord',
  3613. webhook: 'Webhook',
  3614. },
  3615. // Provider descriptions
  3616. providerDescriptions: {
  3617. email: 'SMTP-E-Mail-Benachrichtigungen',
  3618. telegram: 'Benachrichtigungen über Telegram-Bot',
  3619. discord: 'An Discord-Kanal per Webhook senden',
  3620. ntfy: 'Kostenlose, selbst-hostbare Push-Benachrichtigungen',
  3621. pushover: 'Einfache, zuverlässige Push-Benachrichtigungen',
  3622. callmebot: 'Kostenlose WhatsApp-Benachrichtigungen über CallMeBot',
  3623. webhook: 'Generischer HTTP-POST an beliebige URL',
  3624. },
  3625. // NotificationProviderCard
  3626. lastSuccess: 'Zuletzt: {{date}}',
  3627. error: 'Fehler',
  3628. printer: 'Drucker:',
  3629. allPrinters: 'Alle Drucker',
  3630. sendTestNotification: 'Testbenachrichtigung senden',
  3631. eventSettings: 'Ereigniseinstellungen',
  3632. enabled: 'Aktiviert',
  3633. sendFromProvider: 'Benachrichtigungen von diesem Anbieter senden',
  3634. // Event categories
  3635. printEvents: 'Druckereignisse',
  3636. printerStatus: 'Druckerstatus',
  3637. amsAlarms: 'AMS-Alarme',
  3638. amsHtAlarms: 'AMS-HT-Alarme',
  3639. printQueue: 'Druckwarteschlange',
  3640. // Event tags (badges)
  3641. start: 'Start',
  3642. plateCheck: 'Plattenkontrolle',
  3643. complete: 'Abgeschlossen',
  3644. failed: 'Fehlgeschlagen',
  3645. stopped: 'Gestoppt',
  3646. progress: 'Fortschritt',
  3647. offline: 'Offline',
  3648. lowFilament: 'Filament niedrig',
  3649. maintenance: 'Wartung',
  3650. amsHumidity: 'AMS-Feuchtigkeit',
  3651. amsTemp: 'AMS-Temperatur',
  3652. amsHtHumidity: 'AMS-HT-Feuchtigkeit',
  3653. amsHtTemp: 'AMS-HT-Temperatur',
  3654. bedCooled: 'Bett abgekühlt',
  3655. quiet: 'Ruhe',
  3656. digest: 'Zusammenfassung {{time}}',
  3657. // Event labels (expanded settings)
  3658. printStarted: 'Druck gestartet',
  3659. plateNotEmpty: 'Platte nicht leer',
  3660. plateNotEmptyDescription: 'Objekte vor dem Druck erkannt',
  3661. printCompleted: 'Druck abgeschlossen',
  3662. bedCooledLabel: 'Bett abgekühlt',
  3663. bedCooledDescription: 'Bett nach dem Druck unter Schwellenwert abgekühlt',
  3664. printFailed: 'Druck fehlgeschlagen',
  3665. printStopped: 'Druck gestoppt',
  3666. progressMilestones: 'Fortschrittsmeilensteine',
  3667. progressMilestonesDescription: 'Benachrichtigung bei 25%, 50%, 75%',
  3668. printerOffline: 'Drucker offline',
  3669. printerError: 'Druckerfehler',
  3670. lowFilamentLabel: 'Filament niedrig',
  3671. maintenanceDue: 'Wartung fällig',
  3672. maintenanceDueDescription: 'Benachrichtigen, wenn Wartung erforderlich ist',
  3673. amsHumidityHigh: 'AMS-Feuchtigkeit hoch',
  3674. amsHumidityHighDescription: 'Normale AMS-Feuchtigkeit überschreitet Schwellenwert',
  3675. amsTemperatureHigh: 'AMS-Temperatur hoch',
  3676. amsTemperatureHighDescription: 'Normale AMS-Temperatur überschreitet Schwellenwert',
  3677. amsHtHumidityHigh: 'AMS-HT-Feuchtigkeit hoch',
  3678. amsHtHumidityHighDescription: 'AMS-HT-Feuchtigkeit überschreitet Schwellenwert',
  3679. amsHtTemperatureHigh: 'AMS-HT-Temperatur hoch',
  3680. amsHtTemperatureHighDescription: 'AMS-HT-Temperatur überschreitet Schwellenwert',
  3681. // Queue events
  3682. jobAdded: 'Auftrag hinzugefügt',
  3683. jobAddedDescription: 'Auftrag zur Warteschlange hinzugefügt',
  3684. jobAssigned: 'Auftrag zugewiesen',
  3685. jobAssignedDescription: 'Modellbasierter Auftrag einem Drucker zugewiesen',
  3686. jobStarted: 'Auftrag gestartet',
  3687. jobStartedDescription: 'Warteschlangenauftrag hat Druck begonnen',
  3688. jobWaiting: 'Auftrag wartet',
  3689. jobWaitingDescription: 'Auftrag wartet auf Filament',
  3690. jobSkipped: 'Auftrag übersprungen',
  3691. jobSkippedDescription: 'Auftrag übersprungen (vorheriger fehlgeschlagen)',
  3692. jobFailed: 'Auftrag fehlgeschlagen',
  3693. jobFailedDescription: 'Auftrag konnte nicht gestartet werden',
  3694. queueComplete: 'Warteschlange abgeschlossen',
  3695. queueCompleteDescription: 'Alle Warteschlangenaufträge beendet',
  3696. // Quiet hours
  3697. quietHours: 'Ruhezeiten',
  3698. noNotificationsDuring: 'Keine Benachrichtigungen während dieser Zeiten',
  3699. editProviderToChangeQuietHours: 'Anbieter bearbeiten, um Ruhezeiten zu ändern',
  3700. // Daily digest
  3701. dailyDigest: 'Tägliche Zusammenfassung',
  3702. batchNotifications: 'Benachrichtigungen zu einer täglichen Zusammenfassung bündeln',
  3703. sendAt: 'Senden um {{time}}',
  3704. editProviderToChangeDigestTime: 'Anbieter bearbeiten, um Zusammenfassungszeit zu ändern',
  3705. // Actions
  3706. edit: 'Bearbeiten',
  3707. deleteProvider: 'Benachrichtigungsanbieter löschen',
  3708. deleteConfirm: 'Sind Sie sicher, dass Sie "{{name}}" löschen möchten? Dies kann nicht rückgängig gemacht werden.',
  3709. delete: 'Löschen',
  3710. // AddNotificationModal
  3711. addTitle: 'Benachrichtigungsanbieter hinzufügen',
  3712. editTitle: 'Benachrichtigungsanbieter bearbeiten',
  3713. nameLabel: 'Name *',
  3714. namePlaceholder: 'Meine Benachrichtigungen',
  3715. providerTypeLabel: 'Anbietertyp *',
  3716. configuration: 'Konfiguration',
  3717. testConfiguration: 'Konfiguration testen',
  3718. printerFilter: 'Druckerfilter',
  3719. onlyFromPrinter: 'Nur Benachrichtigungen für Ereignisse von diesem Drucker senden',
  3720. quietHoursDnd: 'Ruhezeiten (Nicht stören)',
  3721. quietStart: 'Start',
  3722. quietEnd: 'Ende',
  3723. dailyDigestLabel: 'Tägliche Zusammenfassung',
  3724. sendDigestAt: 'Zusammenfassung senden um',
  3725. digestCollected: 'Ereignisse werden gesammelt und als einzelne Zusammenfassung zu dieser Zeit gesendet',
  3726. notificationEvents: 'Benachrichtigungsereignisse',
  3727. progressPercent: '(25%, 50%, 75%)',
  3728. bedCooledAfterPrint: '(nach Druckabschluss)',
  3729. cancel: 'Abbrechen',
  3730. save: 'Speichern',
  3731. add: 'Hinzufügen',
  3732. nameRequired: 'Name ist erforderlich',
  3733. fieldRequired: '{{field}} ist erforderlich',
  3734. // Config field labels
  3735. phoneNumber: 'Telefonnummer',
  3736. apiKey: 'API-Schlüssel',
  3737. serverUrl: 'Server-URL',
  3738. topic: 'Thema',
  3739. authToken: 'Auth-Token',
  3740. userKey: 'Benutzerschlüssel',
  3741. appToken: 'App-Token',
  3742. priority: 'Priorität',
  3743. botToken: 'Bot-Token',
  3744. chatId: 'Chat-ID',
  3745. smtpServer: 'SMTP-Server',
  3746. smtpPort: 'SMTP-Port',
  3747. security: 'Sicherheit',
  3748. authentication: 'Authentifizierung',
  3749. username: 'Benutzername',
  3750. password: 'Passwort',
  3751. fromEmail: 'Absender-E-Mail',
  3752. toEmail: 'Empfänger-E-Mail',
  3753. webhookUrl: 'Webhook-URL',
  3754. payloadFormat: 'Payload-Format',
  3755. authorization: 'Autorisierung',
  3756. titleFieldName: 'Titel-Feldname',
  3757. messageFieldName: 'Nachrichten-Feldname',
  3758. // NotificationTemplateEditor
  3759. editTemplate: 'Vorlage bearbeiten: {{name}}',
  3760. titleLabel: 'Titel',
  3761. bodyLabel: 'Inhalt',
  3762. titlePlaceholder: 'Benachrichtigungstitel...',
  3763. bodyPlaceholder: 'Benachrichtigungsinhalt...',
  3764. availableVariables: 'Verfügbare Variablen',
  3765. clickToInsert: 'Klicken, um an Cursorposition im Inhalt einzufügen',
  3766. livePreview: 'Live-Vorschau',
  3767. hide: 'Ausblenden',
  3768. show: 'Anzeigen',
  3769. loadingPreview: 'Vorschau wird geladen...',
  3770. enterTemplateContent: 'Vorlageninhalt eingeben, um Vorschau zu sehen',
  3771. titlePreview: 'Titel:',
  3772. bodyPreview: 'Inhalt:',
  3773. resetToDefault: 'Auf Standard zurücksetzen',
  3774. titleRequired: 'Titel ist erforderlich',
  3775. bodyRequired: 'Inhalt ist erforderlich',
  3776. // NotificationLogViewer
  3777. notificationLog: 'Benachrichtigungsprotokoll',
  3778. showFailedOnly: 'Nur fehlgeschlagene',
  3779. last24Hours: 'Letzte 24 Stunden',
  3780. last7Days: 'Letzte 7 Tage',
  3781. last30Days: 'Letzte 30 Tage',
  3782. last90Days: 'Letzte 90 Tage',
  3783. justNow: 'Gerade eben',
  3784. noFailedNotifications: 'Keine fehlgeschlagenen Benachrichtigungen',
  3785. noNotificationsLogged: 'Keine Benachrichtigungen protokolliert',
  3786. unknownProvider: 'Unbekannter Anbieter',
  3787. logTitle: 'Titel',
  3788. logMessage: 'Nachricht',
  3789. logError: 'Fehler',
  3790. logProvider: 'Anbieter: {{type}}',
  3791. logTime: 'Zeit: {{time}}',
  3792. refresh: 'Aktualisieren',
  3793. clearOld: 'Alte löschen',
  3794. statsSummary: 'Letzte {{days}} Tage:',
  3795. statsNotifications: 'Benachrichtigungen',
  3796. statsSent: '{{count}} gesendet',
  3797. statsFailed: '{{count}} fehlgeschlagen',
  3798. // Event type labels (for log viewer)
  3799. eventTypes: {
  3800. print_start: 'Druck gestartet',
  3801. print_complete: 'Druck abgeschlossen',
  3802. print_failed: 'Druck fehlgeschlagen',
  3803. print_stopped: 'Druck gestoppt',
  3804. print_progress: 'Fortschritt',
  3805. printer_offline: 'Drucker offline',
  3806. printer_error: 'Druckerfehler',
  3807. filament_low: 'Filament niedrig',
  3808. maintenance_due: 'Wartung fällig',
  3809. test: 'Test',
  3810. },
  3811. },
  3812. // Rich Text Editor
  3813. richTextEditor: {
  3814. bold: 'Fett',
  3815. italic: 'Kursiv',
  3816. underline: 'Unterstrichen',
  3817. bulletList: 'Aufzählungsliste',
  3818. numberedList: 'Nummerierte Liste',
  3819. alignLeft: 'Linksbündig',
  3820. alignCenter: 'Zentriert',
  3821. alignRight: 'Rechtsbündig',
  3822. addLink: 'Link hinzufügen',
  3823. removeLink: 'Link entfernen',
  3824. },
  3825. // External Links
  3826. externalLinks: {
  3827. noLinksConfigured: 'Keine externen Links konfiguriert',
  3828. deleteLink: 'Link löschen',
  3829. removeCustomIcon: 'Benutzerdefiniertes Symbol entfernen',
  3830. openInNewTab: 'In neuem Tab öffnen',
  3831. placeholders: {
  3832. linkName: 'Mein Link',
  3833. },
  3834. },
  3835. // Keyboard Shortcuts Modal
  3836. keyboardShortcuts: {
  3837. title: 'Tastaturkürzel',
  3838. navigation: 'Navigation',
  3839. archivesSection: 'Archive',
  3840. kProfilesSection: 'K-Profile',
  3841. generalSection: 'Allgemein',
  3842. shortcuts: {
  3843. goToPrinters: 'Zu Drucker gehen',
  3844. goToArchives: 'Zu Archiv gehen',
  3845. goToQueue: 'Zur Warteschlange gehen',
  3846. goToStats: 'Zu Statistiken gehen',
  3847. goToProfiles: 'Zu Cloud-Profilen gehen',
  3848. goToSettings: 'Zu Einstellungen gehen',
  3849. focusSearch: 'Suche fokussieren',
  3850. openUploadModal: 'Upload-Modal öffnen',
  3851. clearSelection: 'Auswahl löschen / Eingabe aufheben',
  3852. contextMenu: 'Kontextmenü auf Karten',
  3853. refreshProfiles: 'Profile aktualisieren',
  3854. newProfile: 'Neues Profil',
  3855. exitSelectionMode: 'Auswahlmodus beenden',
  3856. showHelp: 'Diese Hilfe anzeigen',
  3857. },
  3858. footer: 'Drücken Sie Esc oder klicken Sie außerhalb, um zu schließen',
  3859. },
  3860. // Notification Log
  3861. notificationLog: {
  3862. title: 'Benachrichtigungsprotokoll',
  3863. events: {
  3864. printStarted: 'Druck gestartet',
  3865. printComplete: 'Druck abgeschlossen',
  3866. printFailed: 'Druck fehlgeschlagen',
  3867. printStopped: 'Druck gestoppt',
  3868. progress: 'Fortschritt',
  3869. printerOffline: 'Drucker offline',
  3870. printerError: 'Druckerfehler',
  3871. lowFilament: 'Wenig Filament',
  3872. maintenanceDue: 'Wartung fällig',
  3873. test: 'Test',
  3874. },
  3875. timeAgo: {
  3876. justNow: 'Gerade eben',
  3877. minutesAgo: 'vor {{minutes}}m',
  3878. hoursAgo: 'vor {{hours}}h',
  3879. },
  3880. },
  3881. // Restore/Backup Modal
  3882. restoreBackup: {
  3883. title: 'Backup wiederherstellen',
  3884. restoring: 'Wird wiederhergestellt...',
  3885. restoreComplete: 'Wiederherstellung abgeschlossen',
  3886. restoreFailed: 'Wiederherstellung fehlgeschlagen',
  3887. importSettings: 'Einstellungen aus Backup-Datei importieren',
  3888. pleaseWait: 'Bitte warten Sie, während Ihre Daten wiederhergestellt werden',
  3889. clickToSelect: 'Klicken Sie, um Backup-Datei auszuwählen (.json oder .zip)',
  3890. howDuplicateHandling: 'So funktioniert die Duplikatbehandlung:',
  3891. categories: {
  3892. printers: 'Drucker',
  3893. smartPlugs: 'Smart Plugs',
  3894. notificationProviders: 'Benachrichtigungsanbieter',
  3895. filaments: 'Filamente',
  3896. archives: 'Archive',
  3897. pendingUploads: 'Ausstehende Uploads',
  3898. settingsTemplates: 'Einstellungen & Vorlagen',
  3899. },
  3900. matchingInfo: {
  3901. printers: 'abgeglichen nach Seriennummer',
  3902. smartPlugs: 'abgeglichen nach IP-Adresse',
  3903. notificationProviders: 'abgeglichen nach Name',
  3904. filaments: 'abgeglichen nach Name + Typ + Marke',
  3905. archives: 'abgeglichen nach Inhalts-Hash',
  3906. pendingUploads: 'abgeglichen nach Dateiname',
  3907. settingsTemplates: 'immer überschrieben',
  3908. },
  3909. replaceExisting: 'Vorhandene Daten ersetzen',
  3910. keepExisting: 'Vorhandene Daten behalten',
  3911. replaceDescription: 'Bereits vorhandene Elemente mit Backup-Daten überschreiben',
  3912. keepDescription: 'Nur Elemente wiederherstellen, die noch nicht existieren',
  3913. caution: 'Vorsicht:',
  3914. cautionText: 'Das Überschreiben ersetzt Ihre aktuellen Konfigurationen durch Backup-Daten. Drucker-Zugangscodes werden aus Sicherheitsgründen niemals überschrieben.',
  3915. itemsRestored: 'Wiederhergestellte Elemente',
  3916. itemsSkipped: 'Übersprungene Elemente',
  3917. restored: 'Wiederhergestellt',
  3918. skipped: 'Übersprungen (existieren bereits)',
  3919. filesLabel: 'Dateien (3MF, Thumbnails, etc.)',
  3920. newApiKeysGenerated: 'Neue API-Schlüssel generiert',
  3921. newApiKeysWarning: 'Diese Schlüssel werden nur einmal angezeigt. Kopieren Sie sie jetzt!',
  3922. processingBackup: 'Backup-Datei wird verarbeitet...',
  3923. noDataFound: 'In der Backup-Datei wurden keine wiederherzustellenden Daten gefunden.',
  3924. failedToRestore: 'Backup konnte nicht wiederhergestellt werden. Bitte überprüfen Sie das Dateiformat.',
  3925. },
  3926. // Backup Export Modal
  3927. backupExport: {
  3928. title: 'Backup exportieren',
  3929. selectData: 'Zu exportierende Daten auswählen',
  3930. selectAll: 'Alle auswählen',
  3931. selectNone: 'Keine auswählen',
  3932. categoryDescriptions: {
  3933. settings: 'Sprache, Theme, Update-Einstellungen',
  3934. notifications: 'ntfy, Pushover, Discord, usw.',
  3935. templates: 'Benutzerdefinierte Nachrichtenvorlagen',
  3936. smartPlugs: 'Tasmota-Plug-Konfigurationen',
  3937. externalLinks: 'Seitenleiste Links zu externen Diensten',
  3938. printers: 'Druckerinformationen (Zugangscodes ausgeschlossen)',
  3939. plateDetection: 'Leere Platten-Referenzbilder',
  3940. filaments: 'Filamenttypen und -kosten',
  3941. maintenance: 'Benutzerdefinierte Wartungspläne',
  3942. archives: 'Alle Druckdaten + Dateien (3MF, Thumbnails, Fotos)',
  3943. projects: 'Projekte, BOM-Elemente und Anhänge',
  3944. pendingUploads: 'Virtueller Drucker-Uploads zur Überprüfung',
  3945. apiKeys: 'Webhook-API-Schlüssel (neue Schlüssel bei Import generiert)',
  3946. },
  3947. requiresPrinters: 'Drucker müssen ausgewählt sein',
  3948. zipFileWarning: 'ZIP-Datei wird erstellt.',
  3949. zipFileDescription: 'Enthält alle 3MF-Dateien, Thumbnails, Zeitraffer und Fotos. Dies kann eine Weile dauern und zu einer großen Datei führen.',
  3950. includeAccessCodes: 'Zugangscodes einschließen',
  3951. includeAccessCodesDescription: 'Für die Übertragung auf eine andere Maschine',
  3952. includeAccessCodesWarning: 'Zugangscodes werden im Klartext eingeschlossen. Bewahren Sie diese Backup-Datei sicher auf!',
  3953. categoriesSelected: '{{selectedCount}} Kategorien ausgewählt',
  3954. },
  3955. // Pending Uploads Panel
  3956. pendingUploads: {
  3957. placeholders: {
  3958. notes: 'Notizen zu diesem Druck hinzufügen...',
  3959. },
  3960. discardUpload: 'Upload verwerfen',
  3961. archiveAllUploads: 'Alle Uploads archivieren',
  3962. discardAllUploads: 'Alle Uploads verwerfen',
  3963. archive: 'Archivieren',
  3964. timeAgo: {
  3965. justNow: 'Gerade eben',
  3966. minutesAgo: 'vor {{minutes}}m',
  3967. hoursAgo: 'vor {{hours}}h',
  3968. daysAgo: 'vor {{days}}d',
  3969. },
  3970. },
  3971. // API Browser
  3972. apiBrowser: {
  3973. placeholders: {
  3974. requestBody: 'JSON-Anforderungstext...',
  3975. searchEndpoints: 'Endpunkte suchen...',
  3976. },
  3977. },
  3978. // Configure AMS Slot Modal
  3979. configureAmsSlot: {
  3980. title: 'AMS-Slot konfigurieren',
  3981. slotConfigured: 'Slot konfiguriert!',
  3982. configuringSlot: 'Slot wird konfiguriert:',
  3983. slotLabel: '{{ams}} Slot {{slot}}',
  3984. searchPresets: 'Voreinstellungen suchen...',
  3985. colorPlaceholder: 'Farbname oder Hex (z.B. braun, FF8800)',
  3986. clearCustomColor: 'Benutzerdefinierte Farbe löschen',
  3987. noCloudPresets: 'Keine Cloud-Voreinstellungen. Melden Sie sich bei Bambu Cloud an, um zu synchronisieren.',
  3988. noPresetsAvailable: 'Keine Voreinstellungen verfügbar. Melden Sie sich bei Bambu Cloud an oder importieren Sie lokale Profile.',
  3989. noMatchingPresets: 'Keine passenden Voreinstellungen gefunden.',
  3990. custom: 'Benutzerdefiniert',
  3991. builtin: 'Integriert',
  3992. settingsSentToPrinter: 'Einstellungen an Drucker gesendet',
  3993. filamentProfile: 'Filamentprofil',
  3994. kProfileLabel: 'K-Profil (Pressure Advance)',
  3995. filteringFor: 'Filtern nach: {{material}}',
  3996. noKProfile: 'Kein K-Profil (Standard 0.020 verwenden)',
  3997. noMatchingKProfiles: 'Keine passenden K-Profile gefunden. Standard K=0.020 wird verwendet.',
  3998. selectFilamentFirst: 'Zuerst ein Filamentprofil auswählen',
  3999. kFromCalibration: 'K={{value}} aus Druckerkalibrierung',
  4000. customColorLabel: 'Benutzerdefinierte Farbe (optional)',
  4001. presetColors: '{{name}} Farben:',
  4002. showLessColors: 'Weniger Farben anzeigen',
  4003. showMoreColors: 'Mehr Farben anzeigen',
  4004. clear: 'Löschen',
  4005. hexLabel: 'Hex: #{{hex}}',
  4006. resetting: 'Wird zurückgesetzt...',
  4007. resetSlot: 'Slot zurücksetzen',
  4008. cancel: 'Abbrechen',
  4009. configuring: 'Wird konfiguriert...',
  4010. configureSlot: 'Slot konfigurieren',
  4011. },
  4012. // GitHub Backup Settings
  4013. githubBackup: {
  4014. title: 'GitHub-Backup',
  4015. history: 'Verlauf',
  4016. downloadBackup: 'Backup herunterladen',
  4017. restoreBackup: 'Backup wiederherstellen',
  4018. noBackupsYet: 'Noch keine Backups',
  4019. },
  4020. // Email Settings
  4021. emailSettings: {
  4022. placeholders: {
  4023. fromName: 'BamBuddy',
  4024. },
  4025. },
  4026. // Tag Management Modal
  4027. tagManagement: {
  4028. searchTags: 'Tags suchen...',
  4029. renameTag: 'Tag umbenennen',
  4030. deleteTag: 'Tag löschen',
  4031. },
  4032. // Notification Template Editor
  4033. notificationTemplates: {
  4034. placeholders: {
  4035. title: 'Benachrichtigungstitel...',
  4036. body: 'Benachrichtigungstext...',
  4037. },
  4038. },
  4039. // Batch Tag Modal
  4040. batchTag: {
  4041. placeholders: {
  4042. newTag: 'Neuen Tag eingeben...',
  4043. },
  4044. },
  4045. // Photo Gallery Modal
  4046. photoGallery: {
  4047. deletePhoto: 'Foto löschen',
  4048. },
  4049. // Filament Hover Card
  4050. filamentHoverCard: {
  4051. copySpoolUuid: 'Spulen-UUID kopieren',
  4052. },
  4053. // K Profiles View
  4054. kProfilesView: {
  4055. hasNote: 'Hat Notiz',
  4056. copyProfile: 'Profil kopieren',
  4057. },
  4058. // Layout/Navigation
  4059. layout: {
  4060. openMenu: 'Menü öffnen',
  4061. noPermissionSystemInfo: 'Sie haben keine Berechtigung zum Anzeigen von Systeminformationen',
  4062. },
  4063. // Dashboard
  4064. dashboard: {
  4065. dragToReorder: 'Ziehen zum Neuordnen',
  4066. hideWidget: 'Widget ausblenden',
  4067. },
  4068. // Notification Provider Card
  4069. notificationProviderCard: {
  4070. deleteNotificationProvider: 'Benachrichtigungsanbieter löschen',
  4071. },
  4072. // File Manager Modal
  4073. fileManagerModal: {
  4074. closeFileManager: 'Dateimanager schließen',
  4075. sortFiles: 'Dateien sortieren',
  4076. goToParentFolder: 'Zum übergeordneten Ordner gehen',
  4077. threeView: '3D-Ansicht',
  4078. },
  4079. // Embedded Camera Viewer
  4080. embeddedCameraViewer: {
  4081. refreshStream: 'Stream aktualisieren',
  4082. close: 'Schließen',
  4083. zoomOut: 'Verkleinern',
  4084. resetZoom: 'Zoom zurücksetzen',
  4085. zoomIn: 'Vergrößern',
  4086. dragToResize: 'Ziehen zum Größe ändern',
  4087. },
  4088. // Timelapse Viewer
  4089. timelapseViewer: {
  4090. skipBack5s: '5s zurückspringen',
  4091. skipForward5s: '5s vorspringen',
  4092. },
  4093. // Notification Providers
  4094. notificationProviders: {
  4095. descriptions: {
  4096. email: 'SMTP-E-Mail-Benachrichtigungen',
  4097. telegram: 'Benachrichtigungen über Telegram-Bot',
  4098. discord: 'An Discord-Kanal über Webhook senden',
  4099. ntfy: 'Kostenlose, selbst hostbare Push-Benachrichtigungen',
  4100. pushover: 'Einfache, zuverlässige Push-Benachrichtigungen',
  4101. callmebot: 'Kostenlose WhatsApp-Benachrichtigungen über CallMeBot',
  4102. webhook: 'Generischer HTTP POST zu beliebiger URL',
  4103. },
  4104. },
  4105. // Log Viewer
  4106. logViewer: {
  4107. searchPlaceholder: 'Nachricht oder Logger-Name suchen...',
  4108. noLogEntries: 'Keine Logeinträge gefunden',
  4109. },
  4110. // Switchbar Popover
  4111. switchbarPopover: {
  4112. noSwitchesInSwitchbar: 'Keine Schalter in Schalterleiste',
  4113. },
  4114. // Project Page Modal
  4115. projectPageModal: {
  4116. placeholders: {
  4117. title: 'Titel',
  4118. designer: 'Designer',
  4119. license: 'Lizenz',
  4120. description: 'Beschreibung eingeben...',
  4121. profileTitle: 'Profil-Titel',
  4122. profileDescription: 'Profilbeschreibung...',
  4123. },
  4124. },
  4125. // Spoolman Settings
  4126. spoolmanSettings: {},
  4127. // Time
  4128. time: {
  4129. unknown: '-',
  4130. waiting: 'Wartend',
  4131. justNow: 'Gerade eben',
  4132. now: 'Jetzt',
  4133. minsAgo: 'vor {{count}}m',
  4134. inMins: 'in {{count}}m',
  4135. hoursAgo: 'vor {{count}}h',
  4136. inHours: 'in {{count}}h',
  4137. daysAgo: 'vor {{count}}d',
  4138. inDays: 'in {{count}}d',
  4139. },
  4140. // SpoolBuddy Kiosk
  4141. spoolbuddy: {
  4142. nav: {
  4143. dashboard: 'Dashboard',
  4144. ams: 'AMS',
  4145. inventory: 'Inventar',
  4146. writeTag: 'Schreiben',
  4147. settings: 'Einstellungen',
  4148. },
  4149. status: {
  4150. nfcReady: 'NFC bereit',
  4151. nfcOff: 'NFC aus',
  4152. offline: 'Offline',
  4153. online: 'Online',
  4154. noPrinters: 'Keine Drucker',
  4155. deviceOffline: 'Gerät offline',
  4156. waitingConnection: 'Warte auf Geräteverbindung...',
  4157. systemReady: 'System bereit',
  4158. status: 'Status',
  4159. },
  4160. dashboard: {
  4161. readyToScan: 'Bereit zum Scannen',
  4162. idleMessage: 'Spule auf die Waage legen zum Identifizieren',
  4163. nfcHint: 'NFC-Tag wird automatisch gelesen',
  4164. device: 'Gerät',
  4165. syncWeight: 'Gewicht sync.',
  4166. weightSynced: 'Synchronisiert!',
  4167. unknownTag: 'Unbekannter Tag',
  4168. newTag: 'Neuer Tag erkannt',
  4169. onScale: 'auf der Waage',
  4170. linkSpool: 'Mit Spule verknüpfen',
  4171. linkTagTitle: 'Tag mit Spule verknüpfen',
  4172. linkTag: 'Tag verknüpfen',
  4173. selectSpool: 'Spule zum Verknüpfen auswählen:',
  4174. noUntagged: 'Keine Spulen ohne Tags gefunden',
  4175. tagDetected: 'Tag erkannt',
  4176. noTag: 'Kein Tag',
  4177. tagId: 'Tag',
  4178. grossWeight: 'Bruttogewicht',
  4179. spoolSize: 'Spulengröße',
  4180. close: 'Schließen',
  4181. currentSpool: 'Aktuelle Spule',
  4182. },
  4183. modal: {
  4184. spoolDetected: 'Spule erkannt',
  4185. assignToAms: 'AMS zuweisen',
  4186. syncWeight: 'Gewicht sync.',
  4187. weightSynced: 'Synchronisiert!',
  4188. syncing: 'Synchronisiere...',
  4189. newTagDetected: 'Neuer Tag erkannt',
  4190. addToInventory: 'Zum Inventar hinzufügen',
  4191. assignToAmsTitle: 'AMS zuweisen',
  4192. selectSlot: 'Slot auswählen',
  4193. assign: 'Zuweisen',
  4194. assigning: 'Zuweisen...',
  4195. assignSuccess: 'Zugewiesen!',
  4196. assignError: 'Fehler beim Zuweisen. Bitte erneut versuchen.',
  4197. noPrinterSelected: 'Drucker auswählen...',
  4198. noAmsDetected: 'Kein AMS an diesem Drucker erkannt',
  4199. slot: 'Slot',
  4200. },
  4201. weight: {
  4202. noReading: 'Kein Messwert',
  4203. stable: 'Stabil',
  4204. measuring: 'Messen...',
  4205. tare: 'Tarieren',
  4206. calibrate: 'Kalibrieren',
  4207. },
  4208. spool: {
  4209. remaining: 'Verbleibend',
  4210. material: 'Material',
  4211. brand: 'Marke',
  4212. color: 'Farbe',
  4213. coreWeight: 'Kern',
  4214. labelWeight: 'Etikett',
  4215. scaleWeight: 'Waage',
  4216. netWeight: 'Netto',
  4217. lastUsed: 'Zuletzt verwendet',
  4218. },
  4219. ams: {
  4220. noData: 'Kein AMS erkannt',
  4221. connectAms: 'AMS anschließen um Filament-Slots zu sehen',
  4222. noPrinter: 'Kein Drucker ausgewählt',
  4223. selectPrinter: 'Drucker in der oberen Leiste auswählen',
  4224. printerDisconnected: 'Drucker getrennt',
  4225. humidity: 'Feuchtigkeit',
  4226. level: 'Stufe',
  4227. active: 'Aktiv',
  4228. slot: 'Slot',
  4229. empty: 'Leer',
  4230. },
  4231. inventory: {
  4232. search: 'Spulen suchen...',
  4233. empty: 'Keine Spulen im Inventar',
  4234. noResults: 'Keine passenden Spulen',
  4235. spools: 'Spulen',
  4236. addSpool: 'Spule hinzufügen',
  4237. },
  4238. settings: {
  4239. // Tabs
  4240. tabDevice: 'Gerät',
  4241. tabDisplay: 'Anzeige',
  4242. tabScale: 'Waage',
  4243. tabUpdates: 'Updates',
  4244. // Device tab
  4245. nfcReader: 'NFC-Leser',
  4246. type: 'Typ',
  4247. connection: 'Verbindung',
  4248. notConnected: 'N/A',
  4249. deviceInfo: 'Geräteinfo',
  4250. hostname: 'Host',
  4251. uptime: 'Betriebszeit',
  4252. // Display tab
  4253. brightness: 'Helligkeit',
  4254. saved: 'Gespeichert',
  4255. noBacklight: 'Keine DSI-Hintergrundbeleuchtung erkannt. Helligkeitssteuerung erfordert ein DSI-Display.',
  4256. screenBlank: 'Bildschirm-Abschaltzeit',
  4257. screenBlankDesc: 'Bildschirm schaltet sich nach Inaktivität ab. Zum Aufwecken berühren.',
  4258. displayNote: 'Helligkeit wird als Software-Filter angewendet.',
  4259. // Scale tab
  4260. scaleCalibration: 'Waagen-Kalibrierung',
  4261. currentWeight: 'Aktuelles Gewicht',
  4262. tareOffset: 'Tara',
  4263. calFactor: 'Faktor',
  4264. knownWeight: 'Bekanntes Gewicht',
  4265. calStep1: 'Alle Gegenstände von der Waage entfernen und Nullpunkt setzen.',
  4266. calStep2: 'Bekanntes Gewicht auf die Waage legen.',
  4267. setZero: 'Nullpunkt setzen',
  4268. calibrateNow: 'Kalibrieren',
  4269. calibrated: 'Kalibriert',
  4270. tareSet: 'Tara-Befehl gesendet. Warte auf Gerät...',
  4271. tareFailed: 'Tara-Befehl fehlgeschlagen',
  4272. zeroSet: 'Nullpunkt gesetzt. Bekanntes Gewicht auf die Waage legen.',
  4273. calibrationDone: 'Kalibrierung abgeschlossen!',
  4274. calibrationFailed: 'Kalibrierung fehlgeschlagen',
  4275. lastCalibrated: 'Zuletzt kalibriert',
  4276. stable: 'Stabil',
  4277. settling: 'Stabilisierung...',
  4278. firmware: 'Firmware',
  4279. scale: 'Waage',
  4280. noDevice: 'Kein SpoolBuddy-Gerät gefunden',
  4281. // Updates tab
  4282. daemonVersion: 'Daemon-Version',
  4283. currentVersion: 'Aktuell',
  4284. versionPending: 'Warte auf Daemon...',
  4285. checking: 'Prüfe...',
  4286. checkUpdates: 'Nach Updates suchen',
  4287. updateAvailable: 'Update verfügbar',
  4288. updateInstructions: 'Update per SSH: SpoolBuddy-Installationsskript ausführen.',
  4289. upToDate: 'Aktuell',
  4290. includeBeta: 'Beta-Versionen einschließen',
  4291. },
  4292. writeTag: {
  4293. tabExisting: 'Vorhandene Spule',
  4294. tabNew: 'Neue Spule',
  4295. tabReplace: 'Tag ersetzen',
  4296. searchPlaceholder: 'Suche nach Material, Farbe, Marke...',
  4297. noUntaggedSpools: 'Keine Spulen ohne Tags',
  4298. noTaggedSpools: 'Keine Spulen mit Tags',
  4299. selectSpool: 'Spule auswählen, dann einen NTAG auf den Leser legen',
  4300. placeTag: 'NTAG auf den Leser legen',
  4301. tagReady: 'Tag erkannt — bereit zum Schreiben',
  4302. writeTag: 'Tag beschreiben',
  4303. replaceTag: 'Tag ersetzen',
  4304. writing: 'Tag wird beschrieben...',
  4305. waiting: 'Warte auf SpoolBuddy...',
  4306. writeSuccess: 'Tag erfolgreich beschrieben!',
  4307. writeFailed: 'Schreiben fehlgeschlagen',
  4308. queueFailed: 'Schreibbefehl konnte nicht eingereiht werden',
  4309. tryAgain: 'Erneut versuchen',
  4310. cancel: 'Abbrechen',
  4311. replaceWarning: 'Alter Tag wird getrennt. Neuer Tag ersetzt ihn.',
  4312. deviceOffline: 'SpoolBuddy ist offline',
  4313. material: 'Material',
  4314. colorName: 'Farbname',
  4315. color: 'Farbe',
  4316. brand: 'Marke',
  4317. weight: 'Gewicht (g)',
  4318. createSpool: 'Spule erstellen',
  4319. creating: 'Wird erstellt...',
  4320. spoolCreated: 'Spule erstellt! Bereit zum Schreiben.',
  4321. createFailed: 'Spule konnte nicht erstellt werden',
  4322. },
  4323. },
  4324. bugReport: {
  4325. title: 'Fehler melden',
  4326. description: 'Beschreibung',
  4327. descriptionPlaceholder: 'Was ist schiefgelaufen? Bitte beschreiben Sie das Problem...',
  4328. email: 'E-Mail (optional)',
  4329. emailPlaceholder: 'ihre@email.de',
  4330. emailPrivacy: 'Falls angegeben, wird Ihre E-Mail in einem eingeklappten Abschnitt des GitHub-Issues aufgeführt, damit der Betreuer sich melden kann.',
  4331. screenshot: 'Screenshot',
  4332. uploadOrPaste: 'Bild hochladen, einfügen oder ziehen',
  4333. dataCollectedSummary: 'Welche Daten werden im Bericht gesendet?',
  4334. dataIncluded: 'Enthalten:',
  4335. dataIncludedList: 'App-Version, Betriebssystem, Architektur, Python-Version, Datenbankstatistiken (nur Anzahl), Druckermodelle, Düsenanzahl, Firmware-Versionen, Verbindungsstatus, Integrationsstatus (Spoolman, MQTT, HA), nicht-sensible Einstellungen, Netzwerkschnittstellenanzahl, Docker-Details, Abhängigkeitsversionen.',
  4336. dataNeverIncluded: 'Nie enthalten:',
  4337. dataNeverIncludedList: 'Druckernamen, Seriennummern, Zugangscodes, Passwörter, IP-Adressen, E-Mail-Adressen, API-Schlüssel, Tokens, Webhook-URLs, Hostnamen oder Benutzernamen.',
  4338. submit: 'Absenden',
  4339. collectingLogs: 'Diagnoseprotokolle werden gesammelt...',
  4340. collectingLogsHint: 'Debug-Protokollierung aktiviert, Drucker werden nach aktuellen Daten abgefragt.',
  4341. submitting: 'Fehlerbericht wird gesendet...',
  4342. submitSuccess: 'Fehlerbericht erfolgreich gesendet!',
  4343. submitFailed: 'Fehlerbericht konnte nicht gesendet werden',
  4344. thankYou: 'Vielen Dank!',
  4345. submitted: 'Ihr Fehlerbericht wurde eingereicht.',
  4346. viewIssue: 'Issue ansehen',
  4347. unexpectedError: 'Ein unerwarteter Fehler ist aufgetreten',
  4348. countdownSeconds: '{{seconds}}s',
  4349. },
  4350. };