# Texte für Debian dpkg/dselect/po/de.po
# Copyright © 2000 Software in the Public Interest.
# Hartmut Koptein <koptein@debian.org>, Apr 2000.
# Erich Schubert <debian@vitavonni.de>, March 2001.
# Michael Piefel <piefel@debian.org>, 2001, 2002, 2003, 2004, 2005.
# Florian Ernst <florian@uni-hd.de>, 2004.
# Sven Joachim <svenjoac@gmx.de>, 2006, 2007, 2008, 2009, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: Debian dpkg 1.15.8.5\n"
"Report-Msgid-Bugs-To: debian-dpkg@lists.debian.org\n"
"POT-Creation-Date: 2011-10-14 07:11+0200\n"
"PO-Revision-Date: 2010-10-24 09:44+0200\n"
"Last-Translator: Sven Joachim <svenjoac@gmx.de>\n"
"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8-bit\n"

#: dselect/basecmds.cc:125
msgid "Search for ? "
msgstr "Suchen nach ? "

#: dselect/basecmds.cc:147
msgid "Error: "
msgstr "Fehler: "

#: dselect/basecmds.cc:178
msgid "Help: "
msgstr "Hilfe: "

#: dselect/basecmds.cc:184
msgid "Press ? for help menu, . for next topic, <space> to exit help."
msgstr ""
"»?« für Hilfemenü, ».« für nächstes Thema, <Leer> zum Verlassen der Hilfe."

#: dselect/basecmds.cc:191
msgid "Help information is available under the following topics:"
msgstr "Hilfeinformationen sind unter den folgenden Themen verfügbar:"

#: dselect/basecmds.cc:199
msgid ""
"Press a key from the list above, <space> or `q' to exit help,\n"
"  or `.' (full stop) to read each help page in turn. "
msgstr ""
"Drücken Sie eine Taste aus der obigen Liste, <Leer> oder »q«, um die\n"
"  Hilfe zu beenden, oder ».«, um alle Hilfeseiten nacheinander zu lesen. "

#: dselect/basecmds.cc:205
msgid "error reading keyboard in help"
msgstr "Fehler beim Lesen der Tastatur in der Hilfe"

#: dselect/baselist.cc:57
msgid "ioctl(TIOCGWINSZ) failed"
msgstr "ioctl(TIOCGWINSZ) fehlgeschlagen"

#: dselect/baselist.cc:60
msgid "doupdate in SIGWINCH handler failed"
msgstr "doupdate im SIGWINCH-Handler fehlgeschlagen"

#: dselect/baselist.cc:67
msgid "failed to restore old SIGWINCH sigact"
msgstr "Alter SIGWINCH-sigact konnte nicht wiederhergestellt werden"

#: dselect/baselist.cc:69
msgid "failed to restore old signal mask"
msgstr "Alte Signalmaske konnte nicht wiederhergestellt werden"

#: dselect/baselist.cc:79
msgid "failed to get old signal mask"
msgstr "Erhalten der alten Signalmaske fehlgeschlagen"

#: dselect/baselist.cc:80
msgid "failed to get old SIGWINCH sigact"
msgstr "Erhalten des alten SIGWINCH-sigact fehlgeschlagen"

#: dselect/baselist.cc:84
msgid "failed to block SIGWINCH"
msgstr "SIGWINCH konnte nicht blockiert werden"

#: dselect/baselist.cc:89
msgid "failed to set new SIGWINCH sigact"
msgstr "Neuer SIGWINCH-sigact konnte nicht gesetzt werden"

#: dselect/baselist.cc:126
msgid "failed to allocate colour pair"
msgstr "Farbpaar konnte nicht zugewiesen werden"

#: dselect/baselist.cc:167
msgid "failed to create title window"
msgstr "Titelfenster konnte nicht erzeugt werden"

#: dselect/baselist.cc:171
msgid "failed to create whatinfo window"
msgstr "whatinfo-Fenster konnte nicht erzeugt werden"

#: dselect/baselist.cc:175
msgid "failed to create baselist pad"
msgstr "»baselist pad« konnte nicht erzeugt werden"

#: dselect/baselist.cc:178
msgid "failed to create heading pad"
msgstr "»heading pad« konnte nicht erzeugt werden"

#: dselect/baselist.cc:182
msgid "failed to create thisstate pad"
msgstr "»thisstate pad« konnte nicht erzeugt werden"

#: dselect/baselist.cc:186
msgid "failed to create info pad"
msgstr "»info pad« konnte nicht erzeugt werden"

#: dselect/baselist.cc:191
msgid "failed to create query window"
msgstr "Abfrage-Fenster konnte nicht erzeugt werden"

#: dselect/baselist.cc:255
msgid "Keybindings"
msgstr "Tastenzuordnungen"

#: dselect/baselist.cc:303
#, c-format
msgid "  -- %d%%, press "
msgstr "  -- %d%%, drücken Sie "

#: dselect/baselist.cc:306
#, c-format
msgid "%s for more"
msgstr "%s für mehr"

#: dselect/baselist.cc:310
#, c-format
msgid "%s to go back"
msgstr "%s, um zurückzugehen"

#: dselect/bindings.cc:78
msgid "[not bound]"
msgstr "[nicht zugeordnet]"

#: dselect/bindings.cc:82
#, c-format
msgid "[unk: %d]"
msgstr "[unbek: %d]"

# CHECKME: Wo kann man sich die Tastenbelegungen anzeigen lassen?
#: dselect/bindings.cc:139
msgid "Scroll onwards through help/information"
msgstr "Vorwärts durch die Hilfe/Informationen scrollen"

#: dselect/bindings.cc:140
msgid "Scroll backwards through help/information"
msgstr "Rückwärts durch die Hilfe/Informationen scrollen"

#: dselect/bindings.cc:141
msgid "Move up"
msgstr "Nach oben"

#: dselect/bindings.cc:142
msgid "Move down"
msgstr "Nach unten"

#: dselect/bindings.cc:143
msgid "Go to top of list"
msgstr "Zum Listenanfang"

#: dselect/bindings.cc:144
msgid "Go to end of list"
msgstr "Zum Listenende"

#: dselect/bindings.cc:145
msgid "Request help (cycle through help screens)"
msgstr "Hilfe abrufen (zyklisch durch die Hilfeseiten blättern)"

#: dselect/bindings.cc:146
msgid "Cycle through information displays"
msgstr "Zyklisch durch die Informationsanzeigen blättern"

#: dselect/bindings.cc:147
msgid "Redraw display"
msgstr "Anzeige neu zeichnen"

#: dselect/bindings.cc:148
msgid "Scroll onwards through list by 1 line"
msgstr "Liste um 1 Zeile vorwärts scrollen"

#: dselect/bindings.cc:149
msgid "Scroll backwards through list by 1 line"
msgstr "Liste um 1 Zeile rückwärts scrollen"

#: dselect/bindings.cc:150
msgid "Scroll onwards through help/information by 1 line"
msgstr "Hilfe/Informationen um 1 Zeile vorwärts scrollen"

#: dselect/bindings.cc:151
msgid "Scroll backwards through help/information by 1 line"
msgstr "Hilfe/Informationen um 1 Zeile rückwärts scrollen"

#: dselect/bindings.cc:152
msgid "Scroll onwards through list"
msgstr "Liste vorwärts scrollen"

#: dselect/bindings.cc:153
msgid "Scroll backwards through list"
msgstr "Liste rückwärts scrollen"

#: dselect/bindings.cc:156
msgid "Mark package(s) for installation"
msgstr "Paket(e) zur Installation markieren"

#: dselect/bindings.cc:157
msgid "Mark package(s) for deinstallation"
msgstr "Paket(e) zum Entfernen markieren"

#: dselect/bindings.cc:158
msgid "Mark package(s) for deinstall and purge"
msgstr "Paket(e) zum Entfernen und vollständigen Löschen markieren"

# CHECKME: Was ist damit gemeint?
#: dselect/bindings.cc:159
msgid "Make highlight more specific"
msgstr "Hervorhebung genauer machen"

# CHECKME: Was ist damit gemeint?
#: dselect/bindings.cc:160
msgid "Make highlight less specific"
msgstr "Hervorhebung weniger genau machen"

#: dselect/bindings.cc:161
msgid "Search for a package whose name contains a string"
msgstr "Paket suchen, dessen Namen eine Zeichenfolge enthält"

#: dselect/bindings.cc:162
msgid "Repeat last search."
msgstr "Letzte Suche wiederholen."

# »section« im Sinne von Devel/Games/Hamradio etc. übersetze
# ich überall mit »Bereich«, wie in aptitude
#: dselect/bindings.cc:163
msgid "Swap sort order priority/section"
msgstr "Sortierreihenfolge Priorität/Bereich vertauschen"

#: dselect/bindings.cc:164
msgid "Quit, confirming, and checking dependencies"
msgstr "Beenden, bestätigen und Abhängigkeiten prüfen"

#: dselect/bindings.cc:165
msgid "Quit, confirming without check"
msgstr "Beenden, bestätigen, aber nicht prüfen"

#: dselect/bindings.cc:166
msgid "Quit, rejecting conflict/dependency suggestions"
msgstr "Beenden, Konflikt-/Abhängigkeitsempfehlungen ablehnen"

#: dselect/bindings.cc:167
msgid "Abort - quit without making changes"
msgstr "Abbrechen - beenden, ohne Änderungen vorzunehmen"

#: dselect/bindings.cc:168
msgid "Revert to old state for all packages"
msgstr "Zum alten Status aller Pakete zurückkehren"

#: dselect/bindings.cc:169
msgid "Revert to suggested state for all packages"
msgstr "Zum vorgeschlagenen Status aller Pakete zurückkehren"

#: dselect/bindings.cc:170
msgid "Revert to directly requested state for all packages"
msgstr "Zum direkt verlangten Status aller Pakete zurückkehren"

#: dselect/bindings.cc:171
msgid "Revert to currently installed state for all packages"
msgstr "Zum derzeit installierten Status aller Pakete zurückkehren"

#: dselect/bindings.cc:174
msgid "Select currently-highlighted access method"
msgstr "Derzeit hervorgehobene Zugriffsmethode auswählen"

#: dselect/bindings.cc:175
msgid "Quit without changing selected access method"
msgstr "Beenden, ohne die Zugriffsmethode zu ändern"

#: dselect/helpmsgs.cc:29
msgid "Keystrokes"
msgstr "Tastenkürzel"

#: dselect/helpmsgs.cc:29
msgid ""
"Motion keys: Next/Previous, Top/End, Up/Down, Backwards/Forwards:\n"
"  j, Down-arrow         k, Up-arrow             move highlight\n"
"  N, Page-down, Space   P, Page-up, Backspace   scroll list by 1 page\n"
"  ^n                    ^p                      scroll list by 1 line\n"
"  t, Home               e, End                  jump to top/end of list\n"
"  u                     d                       scroll info by 1 page\n"
"  ^u                    ^d                      scroll info by 1 line\n"
"  B, Left-arrow         F, Right-arrow          pan display by 1/3 screen\n"
"  ^b                    ^f                      pan display by 1 character\n"
"\n"
"Mark packages for later processing:\n"
" +, Insert  install or upgrade      =, H  hold in present state\n"
" -, Delete  remove                  :, G  unhold: upgrade or leave "
"uninstalled\n"
" _          remove & purge config\n"
"                                             Miscellaneous:\n"
"Quit, exit, overwrite (note capitals!):       ?, F1 request help (also "
"Help)\n"
" Return  Confirm, quit (check dependencies)   i, I  toggle/cycle info "
"displays\n"
"   Q     Confirm, quit (override dep.s)       o, O  cycle through sort "
"options\n"
" X, Esc  eXit, abandoning any changes made    v, V  change status display "
"opts\n"
"   R     Revert to state before this list      ^l   redraw display\n"
"   U     set all to sUggested state             /   search (Return to "
"cancel)\n"
"   D     set all to Directly requested state  n, \\  repeat last search\n"
msgstr ""
"Bewegungstasten: Nächstes/Vorheriges, Anfang/Ende, Hoch/Runter, Rück-/"
"Vorwärts:\n"
"  j, Pfeil ab         k, Pfeil hoch           Hervorhebung bewegen\n"
"  N, Bild ab, Leert.  P, Bild hoch, Rückschr. Liste um 1 Seite scrollen\n"
"  ^n                  ^p                      Liste um 1 Zeile scrollen\n"
"  t, Pos1             e, Ende                 springe zu Anfang/Ende der "
"Liste\n"
"  u                   d                       Info um 1 Seite scrollen\n"
"  ^u                  ^d                      Info um 1 Zeile scrollen\n"
"  B, Pfeil links      F, Pfeil rechts         Anz. um 1/3 Bildschirm "
"schieben\n"
"  ^b                  ^f                      Anzeige um 1 Zeichen schieben\n"
"\n"
"Pakete für spätere Bearbeitung markieren:\n"
" +, Einfg   install. oder aktual.  =, H  im momentanen Zustand halten\n"
" -, Entf    löschen                :, G  loslassen: aktual. oder uninst. "
"lassen\n"
" _          löschen und Konfiguration entfernen\n"
"                                             Verschiedenes:\n"
"Beenden, überstimmen (groß/klein beachten!):  ?, F1 Hilfe (auch Hilfe-"
"Taste)\n"
" Eingabe Bestät., Ende (Abh. überprüfen)      i, I  Info-Anzeige umschalten\n"
"   Q     Bestät., Ende (Abh. überstimmen)     o, O  Sortierung ändern\n"
" X, Esc  Abbruch, alle Änderungen verwerfen   v, V  Zustandsanzeige ändern\n"
"   R     zu Zustand vor Liste zurückkehren     ^l   Anzeige neu zeichnen\n"
"   U     alle auf vorgeschl. Zustand setzen     /   suchen (Eingabe bricht "
"ab)\n"
"   D     alle auf direkt angef. Zust. setzen  n, \\  letzte Suche "
"wiederholen\n"

#: dselect/helpmsgs.cc:55
msgid "Introduction to package selections"
msgstr "Einführung in die Paketauswahl"

# Michael Piefel: Diese Übersetzung ist sehr frei. Aber es erscheint mir
# sehr wichtig, dass sie in die Standard-Terminal-Größe von 80x25
# passt. Auf diesen ist nämlich sonst die Hilfe abgeschnitten!
# Sven Joachim: In UTF-8-Terminals kann die Hilfe trotzdem abgeschnitten
# werden, da dselect annimmt, dass jedes Zeichen nur 1 Byte breit ist.
#: dselect/helpmsgs.cc:55
msgid ""
"Welcome to dselect's main package listing.\n"
"\n"
"You will be presented with a list of packages which are installed or "
"available\n"
"for installation.  You can navigate around the list using the cursor keys,\n"
"mark packages for installation (using `+') or deinstallation (using `-').\n"
"Packages can be marked either singly or in groups; initially you will see "
"that\n"
"the line `All packages' is selected.  `+', `-' and so on will affect all "
"the\n"
"packages described by the highlighted line.\n"
"\n"
"Some of your choices will cause conflicts or dependency problems; you will "
"be\n"
"given a sub-list of the relevant packages, so that you can solve the "
"problems.\n"
"\n"
"You should read the list of keys and the explanations of the display.\n"
"Much on-line help is available, please make use of it - press `?' at\n"
"any time for help.\n"
"\n"
"When you have finished selecting packages, press <enter> to confirm "
"changes,\n"
"or `X' to quit without saving changes. A final check on conflicts and\n"
"dependencies will be done - here too you may see a sublist.\n"
"\n"
"Press <space> to leave help and enter the list now.\n"
msgstr ""
"Willkommen zur Hauptpaketauswahl von dselect.\n"
"\n"
"Sie bekommen eine Liste von Paketen angezeigt, die installiert oder zur\n"
"Installation verfügbar sind. Mit den Pfeiltasten können Sie sich durch die\n"
"Liste bewegen und ein Paket zum Installieren (mit »+«) oder Entfernen (mit\n"
"»-«) markieren. Pakete können einzeln oder in Gruppen markiert werden; zu\n"
"Anfang sehen Sie »Alle Pakete« hervorgehoben. »+«, »-« usw. wirken dann auf\n"
"alle Pakete, die durch die hervorgehobene Zeile beschrieben werden.\n"
"\n"
"Gelegentlich ergeben sich Konflikte oder Abhängigkeitsprobleme; eine "
"Teilliste\n"
"betroffener Pakete wird angezeigt, in der Sie dann die Probleme lösen "
"können.\n"
"\n"
"Sie sollten die Liste der Tasten und die Erklärung der Anzeige durchlesen.\n"
"Es ist viel Hilfe verfügbar, bitte nutzen Sie sie - drücken Sie jederzeit "
"»?«,\n"
"um die Hilfe aufzurufen.\n"
"\n"
"Wenn Sie mit ihrer Wahl zufrieden sind, drücken Sie <Eingabe>, um "
"Änderungen\n"
"zu bestätigen oder »X«, um die Paketliste ohne Änderungen zu verlassen. Es\n"
"gibt noch eine abschließende Konflikt- und Abhängigkeitsprüfung - eventuell\n"
"erscheint wieder eine Teilliste.\n"
"\n"
"Drücken Sie <Leer>, um die Hilfe zu verlassen und zur Paketliste zu "
"gelangen.\n"

#: dselect/helpmsgs.cc:80
msgid "Introduction to read-only package list browser"
msgstr "Einführung in den Nur-Lese-Paketlisten-Browser"

#: dselect/helpmsgs.cc:80
msgid ""
"Welcome to dselect's main package listing.\n"
"\n"
"You will be presented with a list of packages which are installed or "
"available\n"
"for installation.  Since you do not have the privilege necessary to update\n"
"package states, you are in a read-only mode.  You can navigate around the\n"
"list using the cursor keys (please see the `Keystrokes' help screen), "
"observe\n"
"the status of the packages and read information about them.\n"
"\n"
"You should read the list of keys and the explanations of the display.\n"
"Much on-line help is available, please make use of it - press `?' at\n"
"any time for help.\n"
"\n"
"When you have finished browsing, press `Q' or <enter> to quit.\n"
"\n"
"Press <space> to leave help and enter the list now.\n"
msgstr ""
"Willkommen zur Hauptpaketauswahl von dselect. \n"
"\n"
"Sie bekommen eine Liste von Paketen angezeigt, die installiert oder zur\n"
"Installation verfügbar sind. Da Sie nicht die zum Aktualisieren des Status\n"
"von Paketen nötigen Privilegien besitzen, sind Sie im Nur-Lese-Modus. Mit\n"
"den Pfeiltasten können Sie sich durch die Liste bewegen (bitte lesen Sie "
"die\n"
"Tastaturkürzel-Hilfe), den Zustand von Paketen begutachten und "
"Informationen\n"
"über sie erhalten.\n"
"\n"
"Sie sollten die Liste der Tasten und die Erklärung der Anzeige durchlesen.\n"
"Es ist viel Hilfe verfügbar, bitte nutzen Sie sie - drücken Sie jederzeit\n"
"»?«, um die Hilfe aufzurufen.\n"
"\n"
"Wenn Sie mit dem Durchforsten fertig sind, drücken Sie »Q« oder die\n"
"Eingabetaste zum Beenden.\n"
"\n"
"Drücken Sie <Leer>, um die Hilfe zu verlassen und zur Paketliste zu "
"gelangen.\n"

#: dselect/helpmsgs.cc:99
msgid "Introduction to conflict/dependency resolution sub-list"
msgstr "Hinweise zur Teilliste zum Auflösen von Konflikten/Abhängigkeiten"

# Auch dieser Hilfebildschirm sollte die 22 Zeilen nicht überschreiten.
#: dselect/helpmsgs.cc:99
msgid ""
"Dependency/conflict resolution - introduction.\n"
"\n"
"One or more of your choices have raised a conflict or dependency problem -\n"
"some packages should only be installed in conjunction with certain others, "
"and\n"
"some combinations of packages may not be installed together.\n"
"\n"
"You will see a sub-list containing the packages involved.  The bottom half "
"of\n"
"the display shows relevant conflicts and dependencies; use `i' to cycle "
"between\n"
"that, the package descriptions and the internal control information.\n"
"\n"
"A set of `suggested' packages has been calculated, and the initial markings "
"in\n"
"this sub-list have been set to match those, so you can just hit Return to\n"
"accept the suggestions if you wish.  You may abort the change(s) which "
"caused\n"
"the problem(s), and go back to the main list, by pressing capital `X'.\n"
"\n"
"You can also move around the list and change the markings so that they are "
"more\n"
"like what you want, and you can `reject' my suggestions by using the "
"capital\n"
"`D' or `R' keys (see the keybindings help screen).  You can use capital `Q' "
"to\n"
"force me to accept the situation currently displayed, in case you want to\n"
"override a recommendation or think that the program is mistaken.\n"
"\n"
"Press <space> to leave help and enter the sub-list; remember: press `?' for "
"help.\n"
msgstr ""
"Abhängigkeits/Konflikt-Auflösung - Einführung.\n"
"\n"
"Eine oder mehrere Ihrer Auswahlen haben einen Konflikt oder ein "
"Abhängigkeits-\n"
"problem ausgelöst - einige Pakete sollten nur zusammen mit bestimmten "
"anderen\n"
"und wieder andere dürfen nicht gemeinsam installiert werden.\n"
"\n"
"Sie werden eine Teilliste der betroffenen Pakete sehen. Die untere Hälfte "
"der\n"
"Anzeige zeigt relevante Konflikte und Abhängigkeiten; benutzen Sie »i« zum\n"
"Umschalten zwischen diesen Infos, Paketbeschreibungen und int. Control-"
"Infos.\n"
"\n"
"Eine Zahl »befürworteter« Pakete wurde berechnet und anfängliche "
"Markierungen\n"
"entsprechend gesetzt, so dass Sie einfach alles mit der Eingabetaste über-\n"
"nehmen können, wenn Sie möchten. Sie können die Änderung(en), die zu "
"Problemen\n"
"führte(n), mit »X« rückgängig machen und zur Hauptliste zurückkehren.\n"
"\n"
"Ebenso können Sie sich in der Liste bewegen und Markierungen nach ihrem\n"
"Belieben ändern, und Sie können die Vorschläge »ablehnen« mit »D« oder »R«\n"
"(siehe auch die Hilfe zu Tastaturkürzeln). Sie können »Q« benutzen, um zu\n"
"erzwingen, die momentane Situation anzunehmen, für den Fall, dass Sie eine\n"
"Empfehlung überstimmen wollen oder denken, das Programm habe sich geirrt.\n"
"\n"
"Zur der Liste kommen Sie mit der Leertaste; zur Erinnerung: »?« bringt "
"Hilfe.\n"

#: dselect/helpmsgs.cc:125
msgid "Display, part 1: package listing and status chars"
msgstr "Anzeige, Teil 1: Paketliste und Statuskürzel"

# Hier sind es bereits im Original 23 Zeilen. Es gibt wohl keine Chance,
# das zu kürzen.
#: dselect/helpmsgs.cc:125
msgid ""
"The top half of the screen shows a list of packages.  For each package you "
"see\n"
"four columns for its current status on the system and mark.  In terse mode "
"(use\n"
"`v' to toggle verbose display) these are single characters, from left to "
"right:\n"
"\n"
" Error flag: Space - no error (but package may be in broken state - see "
"below)\n"
"              `R'  - serious error during installation, needs "
"reinstallation;\n"
" Installed state:     Space    - not installed;\n"
"                       `*'     - installed;\n"
"                       `-'     - not installed but config files remain;\n"
"   packages in these { `U'     - unpacked but not yet configured;\n"
"   states are not    { `C'     - half-configured (an error happened);\n"
"   (quite) properly  { `I'     - half-installed (an error happened);\n"
"   installed         { `W',`t' - triggers are awaited resp. pending.\n"
" Old mark: what was requested for this package before presenting this list;\n"
" Mark: what is requested for this package:\n"
"  `*': marked for installation or upgrade;\n"
"  `-': marked for removal, but any configuration files will remain;\n"
"  `=': on hold: package will not be processed at all;\n"
"  `_': marked for purge completely - even remove configuration;\n"
"  `n': package is new and has yet to be marked for install/remove/&c.\n"
"\n"
"Also displayed are each package's Priority, Section, name, installed and\n"
"available version numbers (shift-V to display/hide) and summary "
"description.\n"
msgstr ""
"Die obere Hälfte des Bildschirms zeigt eine Liste der Pakete. Für jedes "
"Paket\n"
"gibt es vier Spalten für momentanen Status auf dem System und die "
"Markierung.\n"
"Im knappen Modus (ausführlich mit »v«) sind es folgende einzelne Zeichen:\n"
"\n"
" Fehler: Leer - kein Fehler (aber Paket evtl. in inkonsist. Zustand - s.u.)\n"
"         »R«  - schwerer Fehler bei der Installation, Neuinstallation "
"nötig;\n"
" Installationsstatus:  Leer    - nicht installiert;\n"
"                       »*«     - installiert;\n"
"                       »-«     - nicht install., aber Konfiguration "
"vorhanden;\n"
"   Pakete in diesem  { »U«     - entpackt, aber noch nicht konfiguriert;\n"
"   Status sind nicht { »C«     - halb konfiguriert (Fehler ist "
"aufgetreten);\n"
"   (ganz) richtig    { »I«     - halb installiert (Fehler ist aufgetreten);\n"
"   installiert       { »W«,»t« - Trigger werden erwartet bzw. sind "
"anhängig.\n"
" Alte Marke: der Zustand dieses Pakets, bevor diese Liste angezeigt wurde;\n"
" Marke: was mit dem Paket geschehen soll:\n"
"   »*«: markiert zur Installation bzw. Aktualisierung;\n"
"   »-«: markiert zum Entfernen, aber Konfiguration soll erhalten bleiben;\n"
"   »=«: auf Halten: das Paket wird nicht verarbeitet;\n"
"   »_«: markiert zum vollständigen Löschen - auch der Konfiguration;\n"
"   »n«: Paket ist neu und muss erst zur Installation etc. markiert werden\n"
"\n"
"Auch angezeigt werden Priorität, Bereich, Name, installierte und verfügbare\n"
"Version (»V« zum Ein-/Ausblenden) der Pakete sowie eine kurze Beschreibung.\n"

#: dselect/helpmsgs.cc:152
msgid "Display, part 2: list highlight; information display"
msgstr "Anzeige, Teil 2: Listenhervorhebung; Informationsanzeige"

# Daran denken: 22 Zeilen, 80 Zeichen!
#: dselect/helpmsgs.cc:152
msgid ""
"* Highlight: One line in the package list will be highlighted.  It "
"indicates\n"
"  which package(s) will be affected by presses of `+', `-' and `_'.\n"
"\n"
"* The dividing line in the middle of the screen shows a brief explanation "
"of\n"
"  the status of the currently-highlighted package, or a description of "
"which\n"
"  group is highlighted if a group line is.  If you don't understand the\n"
"  meaning of some of the status characters displayed, go to the relevant\n"
"  package and look at this divider line, or use the `v' key for a verbose\n"
"  display (press `v' again to go back to the terse display).\n"
"\n"
"* The bottom of the screen shows more information about the\n"
"  currently-highlighted package (if there is only one).\n"
"\n"
"  It can show an extended description of the package, the internal package\n"
"  control details (either for the installed or available version of the\n"
"  package), or information about conflicts and dependencies involving the\n"
"  current package (in conflict/dependency resolution sublists).\n"
"\n"
"  Use the `i' key to cycle through the displays, and `I' to hide the\n"
"  information display or expand it to use almost all of the screen.\n"
msgstr ""
"* Hervorhebung: Eine Zeile der Paketliste ist hervorgehoben. Sie zeigt\n"
"  an, welches Paket von den Kommandos »+«, »-« und »_« beeinflusst wird.\n"
"\n"
"* Die Trennlinie in der Bildschirmmitte zeigt eine kurze Erklärung des "
"Zustands\n"
"  des hervorgehobenen Pakets oder eine Beschreibung der Gruppe, wenn eine "
"her-\n"
"  vorgehoben ist. Wenn Sie die Bedeutung einiger der angezeigten "
"Statuszeichen\n"
"  nicht verstehen, gehen Sie zum entsprechenden Paket und schauen Sie auf "
"die\n"
"  Trennlinie, oder benutzen Sie »v« für eine ausführliche Anzeige (und "
"wieder\n"
"  »v«, um zur knappen Anzeige zurückzukehren).\n"
"\n"
"* Die untere Bildschirmhälfte zeigt noch mehr Informationen über das\n"
"  gerade hervorgehobene Paket (wenn nur eins hervorgehoben ist).\n"
"\n"
"  Sie kann eine erweiterte Beschreibung des Pakets, die internen Paket-\n"
"  Kontroll-Details (entweder für die installierte oder die verfügbare "
"Version)\n"
"  oder Informationen über Konflikte und Abhängigkeiten, die das Paket\n"
"  betreffen (in Konflikt-/Abhängigkeits-Teillisten), anzeigen.\n"
"\n"
"  Benutzen Sie »i«, um durch die Anzeigen zu wechseln und »I«, um die\n"
"  Informationsanzeige zu verstecken oder sie zu vergrößern.\n"

#: dselect/helpmsgs.cc:176
msgid "Introduction to method selection display"
msgstr "Einführung zum Methoden-Auswahl-Menü"

#: dselect/helpmsgs.cc:176
msgid ""
"dselect and dpkg can do automatic installation, loading the package files to "
"be\n"
"installed from one of a number of different possible places.\n"
"\n"
"This list allows you to select one of these installation methods.\n"
"\n"
"Move the highlight to the method you wish to use, and hit Enter.  You will "
"then\n"
"be prompted for the information required to do the installation.\n"
"\n"
"As you move the highlight a description of each method, where available, is\n"
"displayed in the bottom half of the screen.\n"
"\n"
"If you wish to quit without changing anything use the `x' key while in the "
"list\n"
"of installation methods.\n"
"\n"
"A full list of keystrokes is available by pressing `k' now, or from the "
"help\n"
"menu reachable by pressing `?'.\n"
msgstr ""
"dselect und dpkg beherrschen automatische Installation, indem sie die zu\n"
"installierenden Pakete von einem von mehreren möglichen Orten laden.\n"
"\n"
"Diese Liste bietet Ihnen die Möglichkeit, eine Installationsmethode zu "
"wählen.\n"
"\n"
"Bitte wählen Sie Ihre Methode, die Sie verwenden wollen, und drücken die\n"
"Eingabetaste. Sie werden dann nach den benötigten Informationen für die\n"
"Installation gefragt.\n"
"\n"
"Während der Auswahl wird eine Beschreibung jeder Methode - wenn verfügbar -\n"
"in der unteren Hälfte des Bildschirms angezeigt.\n"
"\n"
"Wenn Sie abbrechen wollen, ohne etwas zu ändern, drücken Sie die »x«-Taste,\n"
"während Sie sich in der Auswahlliste der Installationsmethoden befinden.\n"
"\n"
"Eine Liste aller Tastenkürzel erhalten Sie, wenn sie jetzt die »k«-Taste\n"
"drücken, oder später aus dem Hilfemenü, erreichbar mit der Taste »?«.\n"

#: dselect/helpmsgs.cc:196
msgid "Keystrokes for method selection"
msgstr "Tastenkürzel für die Methoden-Auswahl"

#: dselect/helpmsgs.cc:196
msgid ""
"Motion keys: Next/Previous, Top/End, Up/Down, Backwards/Forwards:\n"
"  j, Down-arrow         k, Up-arrow             move highlight\n"
"  N, Page-down, Space   P, Page-up, Backspace   scroll list by 1 page\n"
"  ^n                    ^p                      scroll list by 1 line\n"
"  t, Home               e, End                  jump to top/end of list\n"
"  u                     d                       scroll info by 1 page\n"
"  ^u                    ^d                      scroll info by 1 line\n"
"  B, Left-arrow         F, Right-arrow          pan display by 1/3 screen\n"
"  ^b                    ^f                      pan display by 1 character\n"
"(These are the same motion keys as in the package list display.)\n"
"\n"
"Quit:\n"
" Return, Enter    select this method and go to its configuration dialogue\n"
" x, X             exit without changing or setting up the installation "
"method\n"
"\n"
"Miscellaneous:\n"
"  ?, Help, F1      request help\n"
" ^l                redraw display\n"
"  /                search (just return to cancel)\n"
"  \\                repeat last search\n"
msgstr ""
"Bewegungstasten: Nächstes/Vorheriges, Anfang/Ende, Hoch/Runter, Rück-/"
"Vorwärts:\n"
"  j, Pfeil ab         k, Pfeil hoch           Hervorhebung bewegen\n"
"  N, Bild ab, Leert.  P, Bild hoch, Rückschr. Liste um 1 Seite scrollen\n"
"  ^n                  ^p                      Liste um 1 Zeile scrollen\n"
"  t, Pos1             e, Ende                 springe zu Anfang/Ende der "
"Liste\n"
"  u                   d                       Info um 1 Seite scrollen\n"
"  ^u                  ^d                      Info um 1 Zeile scrollen\n"
"  B, Pfeil links      F, Pfeil rechts         Anz. um 1/3 Bildschirm "
"schieben\n"
"  ^b                  ^f                      Anzeige um 1 Zeichen schieben\n"
"(Dies sind dieselben Bewegungstasten wie in der Paketliste.)\n"
"\n"
"Beenden:\n"
" Eingabetaste   Auswahl dieser Methode und Wechsel in den "
"Konfigurationsdialog\n"
" x, X           Beenden, ohne die Methode zu ändern oder einzurichten\n"
"\n"
"Verschiedenes:\n"
"  ?, Hilfe, F1     Hilfe aufrufen\n"
" ^l                Anzeige aktualisieren\n"
"  /                Suchen (Abbruch mit Eingabetaste)\n"
"  \\                letzte Suche wiederholen\n"

#: dselect/main.cc:60
msgid "Type dselect --help for help."
msgstr "Geben Sie dselect --help ein, um Hilfe zu erhalten."

#: dselect/main.cc:143
msgid "a"
msgstr "z"

#: dselect/main.cc:143
msgid "[A]ccess"
msgstr "[Z]ugriff"

#: dselect/main.cc:143
msgid "Choose the access method to use."
msgstr "Zugriffsmethode auswählen."

#: dselect/main.cc:144
msgid "u"
msgstr "e"

#: dselect/main.cc:144
msgid "[U]pdate"
msgstr "[E]rneuern"

#: dselect/main.cc:144
msgid "Update list of available packages, if possible."
msgstr "Liste der verfügbaren Pakete erneuern, falls möglich."

#: dselect/main.cc:145
msgid "s"
msgstr "a"

#: dselect/main.cc:145
msgid "[S]elect"
msgstr "[A]uswählen"

#: dselect/main.cc:145
msgid "Request which packages you want on your system."
msgstr "Auswahl der für Ihr System gewünschten Pakete treffen."

#: dselect/main.cc:146
msgid "i"
msgstr "i"

#: dselect/main.cc:146
msgid "[I]nstall"
msgstr "[I]nstall."

#: dselect/main.cc:146
msgid "Install and upgrade wanted packages."
msgstr "Gewünschte Pakete installieren und aktualisieren."

# Vorsicht Falle: "k" geht leider nicht, denn diese Taste bewegt
# die Hervorhebung um eine Zeile nach oben!
#: dselect/main.cc:147
msgid "c"
msgstr "f"

#: dselect/main.cc:147
msgid "[C]onfig"
msgstr "Kon[f]ig."

#: dselect/main.cc:147
msgid "Configure any packages that are unconfigured."
msgstr "Alle unkonfigurierten Pakete konfigurieren."

#: dselect/main.cc:148
msgid "r"
msgstr "l"

#: dselect/main.cc:148
msgid "[R]emove"
msgstr "[L]öschen"

#: dselect/main.cc:148
msgid "Remove unwanted software."
msgstr "Nicht gewünschte Software löschen."

#: dselect/main.cc:149
msgid "q"
msgstr "b"

#: dselect/main.cc:149
msgid "[Q]uit"
msgstr "[B]eenden"

#: dselect/main.cc:149
msgid "Quit dselect."
msgstr "Dselect beenden."

#: dselect/main.cc:150
msgid "menu"
msgstr "Menü"

#: dselect/main.cc:155
#, c-format
msgid "Debian `%s' package handling frontend version %s.\n"
msgstr "Debian »%s« Paketverwaltungs-Frontend Version %s.\n"

#: dselect/main.cc:158
msgid ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"
msgstr ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"

#: dselect/main.cc:162
msgid ""
"This is free software; see the GNU General Public License version 2 or\n"
"later for copying conditions. There is NO warranty.\n"
msgstr ""
"Dies ist freie Software; lesen Sie die GNU General Public License in der\n"
"Version 2 oder höher für Kopierbedingungen. Es wird KEINE Haftung "
"übernommen.\n"

#: dselect/main.cc:172 dselect/main.cc:220
msgid "<standard output>"
msgstr "<Standardausgabe>"

#: dselect/main.cc:183
#, c-format
msgid ""
"Usage: %s [<option> ...] [<action> ...]\n"
"\n"
msgstr ""
"Aufruf: %s [<Option> ...] [<Aktion> ...]\n"
"\n"

#: dselect/main.cc:187
#, c-format
msgid ""
"Options:\n"
"  --admindir <directory>     Use <directory> instead of %s.\n"
"  --expert                   Turn on expert mode.\n"
"  --debug <file> | -D<file>  Turn on debugging, sending output to <file>.\n"
"  --colour | --color screenpart:[foreground],[background][:attr[+attr+..]]\n"
"                             Configure screen colours.\n"
"\n"
msgstr ""
"Optionen:\n"
"  --admindir <Verzeichnis>     <Verzeichnis> statt %s verwenden.\n"
"  --expert                     Experten-Modus einschalten.\n"
"  --debug <Datei> | -D<Datei>  Debuggen einschalten, Ausgaben an <Datei> "
"senden\n"
"  --colour | --color Element:[Vordergrund],[Hintergrund][:Attr[+Attr+..]]\n"
"                               Bildschirmfarben konfigurieren.\n"
"\n"

#: dselect/main.cc:196
#, c-format
msgid ""
"  --help                     Show this help message.\n"
"  --version                  Show the version.\n"
"\n"
msgstr ""
"  --help                       Diesen Hilfetext anzeigen.\n"
"  --version                    Version anzeigen.\n"
"\n"

#: dselect/main.cc:201
#, c-format
msgid ""
"Actions:\n"
"  access update select install config remove quit\n"
"\n"
msgstr ""
"Aktionen:\n"
"  access update select install config remove quit\n"
"\n"

#: dselect/main.cc:205
#, c-format
msgid "Screenparts:\n"
msgstr "Bildschirmelemente:\n"

#: dselect/main.cc:210
#, c-format
msgid "Colours:\n"
msgstr "Farben:\n"

#: dselect/main.cc:215
#, c-format
msgid "Attributes:\n"
msgstr "Attribute:\n"

#: dselect/main.cc:233
#, c-format
msgid "couldn't open debug file `%.255s'\n"
msgstr "Debug-Datei »%.255s« konnte nicht geöffnet werden\n"

# %s kann unterchiedliches Geschlecht haben (Farbe, Bildschirmelement, Farbattribut)
#: dselect/main.cc:253
#, c-format
msgid "Invalid %s `%s'\n"
msgstr "%s »%s« ist ungültig\n"

#: dselect/main.cc:270
msgid "screen part"
msgstr "Bildschirmelement"

#: dselect/main.cc:276
msgid "Null colour specification\n"
msgstr "Leere Farbspezifikation\n"

#: dselect/main.cc:284 dselect/main.cc:289
msgid "colour"
msgstr "Farbe"

#: dselect/main.cc:297
msgid "colour attribute"
msgstr "Farbattribut"

#: dselect/main.cc:329
msgid "Terminal does not appear to support cursor addressing.\n"
msgstr "Das Terminal scheint Cursoradressierung nicht zu unterstützen.\n"

#: dselect/main.cc:331
msgid "Terminal does not appear to support highlighting.\n"
msgstr "Das Terminal scheint Hervorhebung nicht zu unterstützen.\n"

#: dselect/main.cc:333
#, c-format
msgid ""
"Set your TERM variable correctly, use a better terminal,\n"
"or make do with the per-package management tool %s.\n"
msgstr ""
"Setzen Sie ihre TERM-Variable richtig, verwenden Sie ein besseres Terminal,\n"
"oder begnügen Sie sich mit dem Werkzeug %s zur paketweisen Verwaltung.\n"

#: dselect/main.cc:336
msgid "terminal lacks necessary features, giving up"
msgstr "Terminal lässt notwendige Fähigkeiten vermissen, Abbruch"

#: dselect/main.cc:417
msgid ""
"\n"
"\n"
"Move around with ^P and ^N, cursor keys, initial letters, or digits;\n"
"Press <enter> to confirm selection.   ^L redraws screen.\n"
"\n"
msgstr ""
"\n"
"\n"
"Bewegen Sie sich mit ^P, ^N, Pfeiltasten, Anfangsbuchstaben oder Ziffern;\n"
"Drücken Sie <Eingabe> zur Bestätigung.   ^L zeichnet den Bildschirm neu.\n"
"\n"

#: dselect/main.cc:428
msgid ""
"\n"
"\n"
"Read-only access: only preview of selections is available!"
msgstr ""
"\n"
"\n"
"Nur-Lese-Zugriff: Lediglich die Vorschau der Auswahlen ist verfügbar!"

#: dselect/main.cc:448
msgid "failed to getch in main menu"
msgstr "getch im Hauptmenü fehlgeschlagen"

#: dselect/main.cc:531
#, c-format
msgid "unknown action string `%.50s'"
msgstr "unbekannte Aktionszeichenkette »%.50s«"

#: dselect/methlist.cc:77
msgid "dselect - list of access methods"
msgstr "dselect - Liste der Zugriffsmethoden"

#: dselect/methlist.cc:86
#, c-format
msgid "Access method `%s'."
msgstr "Zugriffsmethode »%s«."

#: dselect/methlist.cc:120
msgid "Abbrev."
msgstr "Abkürz."

#: dselect/methlist.cc:121 dselect/pkginfo.cc:105 dselect/pkgtop.cc:291
msgid "Description"
msgstr "Beschreibung"

#: dselect/methlist.cc:164 dselect/pkglist.cc:572
msgid "doupdate failed"
msgstr "doupdate fehlgeschlagen"

#: dselect/methlist.cc:166 dselect/pkglist.cc:575
msgid "failed to unblock SIGWINCH"
msgstr "SIGWINCH konnte nicht entblockt werden"

#: dselect/methlist.cc:170 dselect/pkglist.cc:580
msgid "failed to re-block SIGWINCH"
msgstr "SIGWINCH konnte nicht erneut blockiert werden"

#: dselect/methlist.cc:171 dselect/pkglist.cc:582
msgid "getch failed"
msgstr "getch fehlgeschlagen"

#: dselect/methlist.cc:188
msgid "Explanation"
msgstr "Beschreibung"

#: dselect/methlist.cc:197
msgid "No explanation available."
msgstr "Keine Beschreibung verfügbar."

#: dselect/method.cc:67
#, c-format
msgid ""
"\n"
"\n"
"%s: %s\n"
msgstr ""
"\n"
"\n"
"%s: %s\n"

#: dselect/method.cc:70
msgid ""
"\n"
"Press <enter> to continue."
msgstr ""
"\n"
"Drücken Sie <Eingabe> zum Fortsetzen."

#: dselect/method.cc:161
#, c-format
msgid "Press <enter> to continue.\n"
msgstr "Drücken Sie <Eingabe> zum Fortfahren.\n"

#: dselect/method.cc:162
msgid "<standard error>"
msgstr "<Standardfehlerausgabe>"

# CHECKME
#: dselect/method.cc:165
msgid "error reading acknowledgement of program failure message"
msgstr "Fehler beim Lesen der Bestätigung der Programm-Fehlermeldung"

#: dselect/method.cc:196
msgid "update available list script"
msgstr "Skript zur Aktualisierung der Verfügbarkeitsliste"

#: dselect/method.cc:200
msgid "installation script"
msgstr "Installationsskript"

#: dselect/method.cc:246
msgid "query/setup script"
msgstr "Abfrage-/Einrichtungsskript"

# CHECKME: »Options-Datei« oder »Optionen-Datei«?
#: dselect/methparse.cc:53
#, c-format
msgid "syntax error in method options file `%.250s' -- %s"
msgstr "Syntaxfehler in Methoden-Options-Datei »%.250s« -- %s"

#: dselect/methparse.cc:59
#, c-format
msgid "error reading options file `%.250s'"
msgstr "Fehler beim Lesen der Options-Datei »%.250s«"

# CHECKME
#: dselect/methparse.cc:90
#, c-format
msgid "unable to read `%.250s' directory for reading methods"
msgstr "Verzeichnis »%.250s« kann nicht gelesen werden, um Methoden zu lesen"

#: dselect/methparse.cc:106
#, c-format
msgid "method `%.250s' has name that is too long (%d > %d characters)"
msgstr "Methode »%.250s« hat einen zu langen Namen (%d > %d Zeichen)"

#: dselect/methparse.cc:117
#, c-format
msgid "unable to access method script `%.250s'"
msgstr "Auf Methodenskript »%.250s« kann nicht zugegriffen werden"

#: dselect/methparse.cc:123
#, c-format
msgid "unable to read method options file `%.250s'"
msgstr "Methoden-Options-Datei »%.250s« kann nicht gelesen werden"

#: dselect/methparse.cc:147
msgid "non-digit where digit wanted"
msgstr "Nichtziffer, wo Ziffer erwartet wurde"

#: dselect/methparse.cc:150
msgid "EOF in index string"
msgstr "EOF in Indexzeichenkette"

#: dselect/methparse.cc:153
msgid "index string too long"
msgstr "Indexzeichenkette zu lang"

#: dselect/methparse.cc:156
msgid "newline before option name start"
msgstr "Zeilenvorschub vor Optionsnamenanfang"

#: dselect/methparse.cc:158
msgid "EOF before option name start"
msgstr "EOF vor Optionsnamenanfang"

#: dselect/methparse.cc:162
msgid "nonalpha where option name start wanted"
msgstr "Nichtbuchstabe, wo Anfang eines Optionsnamen erwartet wurde"

#: dselect/methparse.cc:164
msgid "non-alphanum in option name"
msgstr "nicht-alphanumerisches Zeichen im Optionsnamen"

#: dselect/methparse.cc:167
msgid "EOF in option name"
msgstr "EOF im Optionsnamen"

#: dselect/methparse.cc:172
msgid "newline before summary"
msgstr "Zeilenvorschub vor Zusammenfassung"

#: dselect/methparse.cc:174
msgid "EOF before summary"
msgstr "EOF vor Zusammenfassung"

#: dselect/methparse.cc:180
msgid "EOF in summary - missing newline"
msgstr "EOF in Zusammenfassung - Zeilenvorschub fehlt"

#: dselect/methparse.cc:190
#, c-format
msgid "unable to open option description file `%.250s'"
msgstr "Options-Beschreibungs-Datei »%.250s« kann nicht geöffnet werden"

#: dselect/methparse.cc:194
#, c-format
msgid "unable to stat option description file `%.250s'"
msgstr ""
"Options-Beschreibungs-Datei »%.250s« kann nicht mit stat abgefragt werden"

#: dselect/methparse.cc:198
#, c-format
msgid "failed to read option description file `%.250s'"
msgstr "Options-Beschreibungs-Datei »%.250s« konnte nicht gelesen werden"

#: dselect/methparse.cc:201
#, c-format
msgid "error during read of option description file `%.250s'"
msgstr "Fehler beim Lesen der Options-Beschreibungs-Datei »%.250s«"

#: dselect/methparse.cc:224
#, c-format
msgid "error during read of method options file `%.250s'"
msgstr "Fehler beim Lesen der Methoden-Options-Datei »%.250s«"

#: dselect/methparse.cc:247
#, c-format
msgid "unable to open current option file `%.250s'"
msgstr "Aktuelle Options-Datei »%.250s« kann nicht geöffnet werden"

#: dselect/methparse.cc:289
#, c-format
msgid "unable to open new option file `%.250s'"
msgstr "Neue Options-Datei »%.250s« kann nicht geöffnet werden"

# FIXME: Wäre »new option file« nicht besser?
#: dselect/methparse.cc:292
#, c-format
msgid "unable to write new option to `%.250s'"
msgstr "Neue Options-Datei kann nicht nach »%.250s« geschrieben werden"

#: dselect/methparse.cc:295
#, c-format
msgid "unable to close new option file `%.250s'"
msgstr "Neue Options-Datei »%.250s« kann nicht geschlossen werden"

# FIXME: Wäre »new option file« nicht besser?
#: dselect/methparse.cc:297
#, c-format
msgid "unable to install new option as `%.250s'"
msgstr "Neue Options-Datei kann nicht als »%.250s« installiert werden"

#: dselect/pkgdisplay.cc:36
msgid "new package"
msgstr "neues Paket"

#: dselect/pkgdisplay.cc:37
msgid "install"
msgstr "install."

#: dselect/pkgdisplay.cc:38
msgid "hold"
msgstr "halten"

#: dselect/pkgdisplay.cc:39
msgid "remove"
msgstr "löschen"

#: dselect/pkgdisplay.cc:40
msgid "purge"
msgstr "vollständig löschen"

#. TRANSLATORS: The space is a trick to work around gettext which uses
#. * the empty string to store information about the translation. DO NOT
#. * CHANGE THAT IN A TRANSLATION! The code really relies on that being
#. * a single space.
#: dselect/pkgdisplay.cc:47
msgid " "
msgstr " "

#: dselect/pkgdisplay.cc:48
msgid "REINSTALL"
msgstr "REINSTALL"

#: dselect/pkgdisplay.cc:51
msgid "not installed"
msgstr "nicht installiert"

#: dselect/pkgdisplay.cc:52
msgid "removed (configs remain)"
msgstr "entfernt (Konfiguration bleibt)"

#: dselect/pkgdisplay.cc:53
msgid "half installed"
msgstr "halb installiert"

#: dselect/pkgdisplay.cc:54
msgid "unpacked (not set up)"
msgstr "entpackt (nicht eingerichtet)"

#: dselect/pkgdisplay.cc:55
msgid "half configured (config failed)"
msgstr "halb konfiguriert (Konfiguration fehlgeschlagen)"

#: dselect/pkgdisplay.cc:56
msgid "awaiting trigger processing"
msgstr "auf Trigger-Verarbeitung wartend"

#: dselect/pkgdisplay.cc:57
msgid "triggered"
msgstr "getriggered"

#: dselect/pkgdisplay.cc:58
msgid "installed"
msgstr "installiert"

# FIXME: Die nächsten Texte tauchen sowohl vor »Pakete« als auch alleine
# in der Statuszeile sowie (bei ausführlicher Anzeige) in der
# Prioritätsspalte auf, das sieht richtig blöd aus!
# CHECKME: Groß- oder Kleinschreibung?
#: dselect/pkgdisplay.cc:61
msgid "Required"
msgstr "Erforderliche"

#: dselect/pkgdisplay.cc:62
msgid "Important"
msgstr "Wichtige"

# FIXME: Weder »Standard- Pakete« noch »Standard Pakete« ist toll :-(
#: dselect/pkgdisplay.cc:63
msgid "Standard"
msgstr "Standard"

#: dselect/pkgdisplay.cc:64
msgid "Optional"
msgstr "Optionale"

# FIXME, siehe »Standard« oben
#: dselect/pkgdisplay.cc:65
msgid "Extra"
msgstr "Extra"

#: dselect/pkgdisplay.cc:66
msgid "!Bug!"
msgstr "!Fehler!"

#: dselect/pkgdisplay.cc:67
msgid "Unclassified"
msgstr "Unklassifizierte"

# CHECKME: Der Unterschied zwischen »befürwortet« und »empfiehlt«
# dürfte vielen Leuten nicht so ohne weiteres klar sein.
# Leider geht »schlägt vor« nicht: Paket A schlägt vor Paket B ... :-(
#: dselect/pkgdisplay.cc:70
msgid "suggests"
msgstr "befürwortet"

#: dselect/pkgdisplay.cc:71
msgid "recommends"
msgstr "empfiehlt"

#: dselect/pkgdisplay.cc:72
msgid "depends on"
msgstr "hängt ab von"

#: dselect/pkgdisplay.cc:73
msgid "pre-depends on"
msgstr "hängt ab (vorher) von"

# CHECKME: breaks ist keine symmetrische Beziehung
#: dselect/pkgdisplay.cc:74
msgid "breaks"
msgstr "beschädigt"

#: dselect/pkgdisplay.cc:75
msgid "conflicts with"
msgstr "kollidiert mit"

#: dselect/pkgdisplay.cc:76
msgid "provides"
msgstr "liefert"

#: dselect/pkgdisplay.cc:77
msgid "replaces"
msgstr "ersetzt"

#: dselect/pkgdisplay.cc:78
msgid "enhances"
msgstr "erweitert"

#: dselect/pkgdisplay.cc:81
msgid "Req"
msgstr "Erf"

#: dselect/pkgdisplay.cc:82
msgid "Imp"
msgstr "Wic"

#: dselect/pkgdisplay.cc:83
msgid "Std"
msgstr "Std"

#: dselect/pkgdisplay.cc:84
msgid "Opt"
msgstr "Opt"

#: dselect/pkgdisplay.cc:85
msgid "Xtr"
msgstr "Ext"

#: dselect/pkgdisplay.cc:86
msgid "bUG"
msgstr "bUG"

#: dselect/pkgdisplay.cc:87
msgid "?"
msgstr "?"

#: dselect/pkgdisplay.cc:95 dselect/pkgdisplay.cc:115
msgid "Broken"
msgstr "Defekte"

#: dselect/pkgdisplay.cc:96
msgid "New"
msgstr "Neue"

# FIXME: "Upgradable" (wie in aptitude) wäre besser
#: dselect/pkgdisplay.cc:97
msgid "Updated"
msgstr "Aktualisierte"

#: dselect/pkgdisplay.cc:98
msgid "Obsolete/local"
msgstr "Veraltete/Lokale"

#: dselect/pkgdisplay.cc:99
msgid "Up-to-date"
msgstr "Aktuelle"

#: dselect/pkgdisplay.cc:100
msgid "Available"
msgstr "Verfügbare"

#: dselect/pkgdisplay.cc:101 dselect/pkgdisplay.cc:117
msgid "Removed"
msgstr "Entfernte"

#: dselect/pkgdisplay.cc:102 dselect/pkgdisplay.cc:111
msgid "Brokenly installed packages"
msgstr "Unvollständig installierte Pakete"

#: dselect/pkgdisplay.cc:103
msgid "Newly available packages"
msgstr "Neu verfügbare Pakete"

# FIXME: "Upgradable", s.o.
#: dselect/pkgdisplay.cc:104
msgid "Updated packages (newer version is available)"
msgstr "Aktualisierte Pakete (neuere Version ist verfügbar)"

# CHECKME: »vorhanden« streichen?
#: dselect/pkgdisplay.cc:105
msgid "Obsolete and local packages present on system"
msgstr "Veraltete und lokale Pakete im System vorhanden"

#: dselect/pkgdisplay.cc:106
msgid "Up to date installed packages"
msgstr "Aktuelle installierte Pakete"

#: dselect/pkgdisplay.cc:107
msgid "Available packages (not currently installed)"
msgstr "Verfügbare Pakete (derzeit nicht installiert)"

#: dselect/pkgdisplay.cc:108
msgid "Removed and no longer available packages"
msgstr "Entfernte und nicht mehr verfügbare Pakete"

#: dselect/pkgdisplay.cc:112
msgid "Installed packages"
msgstr "Installierte Pakete"

#: dselect/pkgdisplay.cc:113
msgid "Removed packages (configuration still present)"
msgstr "Entfernte Pakete (Konfigurationsdateien sind noch vorhanden)"

#: dselect/pkgdisplay.cc:114
msgid "Purged packages and those never installed"
msgstr "Vollständig gelöschte und noch nie installierte Pakete"

#: dselect/pkgdisplay.cc:116
msgid "Installed"
msgstr "Installiert"

#: dselect/pkgdisplay.cc:118
msgid "Purged"
msgstr "Vollständig gelöscht"

#: dselect/pkgdisplay.cc:198
msgid "dselect - recursive package listing"
msgstr "dselect - Rekursive Paketliste"

#: dselect/pkgdisplay.cc:199
msgid "dselect - inspection of package states"
msgstr "dselect - Ansicht der Paketzustände"

#: dselect/pkgdisplay.cc:200
msgid "dselect - main package listing"
msgstr "dselect - Hauptpaketliste"

#: dselect/pkgdisplay.cc:208
msgid " (by section)"
msgstr " (nach Bereich)"

#: dselect/pkgdisplay.cc:211
msgid " (avail., section)"
msgstr " (Verfüg., Bereich)"

#: dselect/pkgdisplay.cc:214
msgid " (status, section)"
msgstr " (Status, Bereich)"

#: dselect/pkgdisplay.cc:223
msgid " (by priority)"
msgstr " (nach Priorität)"

#: dselect/pkgdisplay.cc:226
msgid " (avail., priority)"
msgstr " (Verfüg., Priorität)"

#: dselect/pkgdisplay.cc:229
msgid " (status, priority)"
msgstr " (Status, Priorität)"

#: dselect/pkgdisplay.cc:238 dselect/pkgdisplay.cc:250
msgid " (alphabetically)"
msgstr " (alphabetisch)"

#: dselect/pkgdisplay.cc:241
msgid " (by availability)"
msgstr " (nach Verfügbarkeit)"

#: dselect/pkgdisplay.cc:244
msgid " (by status)"
msgstr " (nach Status)"

#: dselect/pkgdisplay.cc:258
msgid " mark:+/=/- terse:v help:?"
msgstr " Mark:+/=/- knapp:v Hilfe:?"

#: dselect/pkgdisplay.cc:259
msgid " mark:+/=/- verbose:v help:?"
msgstr " Mark:+/=/- ausführlich:v Hilfe:?"

#: dselect/pkgdisplay.cc:260
msgid " terse:v help:?"
msgstr " knapp:v Hilfe:?"

#: dselect/pkgdisplay.cc:261
msgid " verbose:v help:?"
msgstr " ausführlich:v Hilfe:?"

#: dselect/pkginfo.cc:80
msgid ""
"The line you have highlighted represents many packages; if you ask to "
"install, remove, hold, etc. it you will affect all the packages which match "
"the criterion shown.\n"
"\n"
"If you move the highlight to a line for a particular package you will see "
"information about that package displayed here.\n"
"You can use `o' and `O' to change the sort order and give yourself the "
"opportunity to mark packages in different kinds of groups."
msgstr ""
"Die hervorgehobene Zeile repräsentiert viele Pakete; wenn Sie um "
"Installieren, Löschen, Halten usw. bitten, so sind alle Pakete, auf die das "
"angezeigte Kriterium zutrifft, betroffen.\n"
"\n"
"Wenn Sie die Hervorhebung auf eine Zeile für ein bestimmtes Paket bewegen, "
"sehen Sie hier Informationen zu diesem Paket.\n"
"Sie können »o« und »O« benutzen, um die Sortierreihenfolge zu ändern und "
"damit die Pakete in anderen Gruppen zu markieren."

#: dselect/pkginfo.cc:93
msgid "Interrelationships"
msgstr "Gegenseitige Beziehungen"

#: dselect/pkginfo.cc:112
msgid "No description available."
msgstr "Keine Beschreibung verfügbar."

#: dselect/pkginfo.cc:130
msgid "Installed control file information"
msgstr "Installierte Control-Datei-Informationen"

#: dselect/pkginfo.cc:146
msgid "Available control file information"
msgstr "Verfügbare Control-Datei-Informationen"

#: dselect/pkglist.cc:416
msgid "There are no packages."
msgstr "Es gibt keine Pakete."

#: dselect/pkglist.cc:507
msgid "invalid search option given"
msgstr "ungültige Suchoption angegeben"

#: dselect/pkglist.cc:521
msgid "error in regular expression"
msgstr "Fehler in regulärem Ausdruck"

#: dselect/pkgsublist.cc:107
msgid " does not appear to be available\n"
msgstr " scheint nicht verfügbar zu sein\n"

#: dselect/pkgsublist.cc:127
msgid " or "
msgstr " oder "

#: dselect/pkgtop.cc:57
msgid "All"
msgstr "Alle"

#: dselect/pkgtop.cc:79
msgid "All packages"
msgstr "Alle Pakete"

# CHECKME
#: dselect/pkgtop.cc:83
#, c-format
msgid "%s packages without a section"
msgstr "%s Pakete ohne einen Bereich"

#: dselect/pkgtop.cc:85
#, c-format
msgid "%s packages in section %s"
msgstr "%s Pakete im Bereich %s"

#: dselect/pkgtop.cc:91
#, c-format
msgid "%s %s packages"
msgstr "%s %s Pakete"

# CHECKME
#: dselect/pkgtop.cc:95
#, c-format
msgid "%s %s packages without a section"
msgstr "%s %s Pakete ohne einen Bereich"

#: dselect/pkgtop.cc:97
#, c-format
msgid "%s %s packages in section %s"
msgstr "%s %s Pakete im Bereich %s"

#: dselect/pkgtop.cc:118
#, c-format
msgid "%-*s %s%s%s;  %s (was: %s).  %s"
msgstr "%-*s %s%s%s;  %s (war: %s).  %s"

#: dselect/pkgtop.cc:263
msgid "Error"
msgstr "Fehler"

#: dselect/pkgtop.cc:267
msgid "Installed?"
msgstr "Installiert?"

# "Alte Markierung" würde abgeschnitten
#: dselect/pkgtop.cc:271
msgid "Old mark"
msgstr "Alte Marke"

# FIXME: Nach 10 oder 11 Zeichen wird abgeschnitten :-(
#: dselect/pkgtop.cc:275
msgid "Marked for"
msgstr "Ausgewählt zur"

#: dselect/pkgtop.cc:278
msgid "EIOM"
msgstr "FIAM"

#: dselect/pkgtop.cc:280
msgid "Section"
msgstr "Bereich"

# FIXME: Nach 8 Zeichen wird abgeschnitten :-(
#: dselect/pkgtop.cc:281
msgid "Priority"
msgstr "Priorität"

#: dselect/pkgtop.cc:282
msgid "Package"
msgstr "Paket"

#: dselect/pkgtop.cc:286
msgid "Inst.ver"
msgstr "Inst.Ver"

#: dselect/pkgtop.cc:289
msgid "Avail.ver"
msgstr "Verf.Ver"

#~ msgid "returned error exit status %d.\n"
#~ msgstr "gab Fehlerrückgabewert %d zurück.\n"

#~ msgid "was interrupted.\n"
#~ msgstr "wurde unterbrochen.\n"

#~ msgid "was terminated by a signal: %s.\n"
#~ msgstr "wurde durch ein Signal beendet: %s.\n"

#~ msgid "(It left a coredump.)\n"
#~ msgstr "(Es hinterließ ein Speicherabbild.)\n"

#~ msgid "failed with an unknown wait return code %d.\n"
#~ msgstr "schlug mit einem unbekannten Warterückgabewert %d fehl.\n"
