# Catalan translation of Dselect.
# Copyright © 2001, 2002, 2003, 2004, 2005, 2006, 2010 Software in the Public Interest, Inc.
# Antoni Bella <bella5@teleline.es>, 2001, 2002.
# Jordi Mallach <jordi@debian.org>, 2002, 2003, 2004, 2005, 2006, 2010.
# Guillem Jover <guillem@debian.org>, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: dpkg 1.15.8.6\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 17:38+0200\n"
"Last-Translator: Jordi Mallach <jordi@debian.org>\n"
"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"

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

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

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

#: dselect/basecmds.cc:184
msgid "Press ? for help menu, . for next topic, <space> to exit help."
msgstr ""
"Premeu ? per al menú d'ajuda, . per al següent tema, <espai> per a sortir."

#: dselect/basecmds.cc:191
msgid "Help information is available under the following topics:"
msgstr "La info. d'ajuda està disponible sota els següents temes:"

#: 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 ""
"Premeu una tecla de de la llista superior, <espai> o «q» per a sortir de\n"
"l'ajuda, o «.» (punt) per a llegir cada pàgina d'ajuda al seu torn. "

#: dselect/basecmds.cc:205
msgid "error reading keyboard in help"
msgstr "s'ha produït un error en llegir del teclat en l'ajuda"

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

#: dselect/baselist.cc:60
msgid "doupdate in SIGWINCH handler failed"
msgstr "ha fallat el «doupdate» en el gestor de SIGWINCH"

#: dselect/baselist.cc:67
msgid "failed to restore old SIGWINCH sigact"
msgstr "no s'ha pogut restablir l'antic senyal SIGWINCH"

#: dselect/baselist.cc:69
msgid "failed to restore old signal mask"
msgstr "no s'ha pogut restablir la màscara de senyal antiga"

#: dselect/baselist.cc:79
msgid "failed to get old signal mask"
msgstr "no s'ha pogut obtindre la màscara de senyal antiga"

#: dselect/baselist.cc:80
msgid "failed to get old SIGWINCH sigact"
msgstr "no s'ha pogut obtindre l'antic senyal SIGWINCH"

#: dselect/baselist.cc:84
msgid "failed to block SIGWINCH"
msgstr "no s'ha pogut blocar SIGWINCH"

#: dselect/baselist.cc:89
msgid "failed to set new SIGWINCH sigact"
msgstr "no s'ha pogut establir el senyal nou SIGWINCH"

#: dselect/baselist.cc:126
msgid "failed to allocate colour pair"
msgstr "no s'ha pogut assignar una parella de colors"

#: dselect/baselist.cc:167
msgid "failed to create title window"
msgstr "no s'ha pogut crear la finestra de títol"

#: dselect/baselist.cc:171
msgid "failed to create whatinfo window"
msgstr "no s'ha pogut crear la finestra de «whatinfo»"

#: dselect/baselist.cc:175
msgid "failed to create baselist pad"
msgstr "no s'ha pogut crear el «baselist pad»"

#: dselect/baselist.cc:178
msgid "failed to create heading pad"
msgstr "no s'ha pogut crear el «heading pad»"

#: dselect/baselist.cc:182
msgid "failed to create thisstate pad"
msgstr "no s'ha pogut crear el «thisstate pad»"

#: dselect/baselist.cc:186
msgid "failed to create info pad"
msgstr "no s'ha pogut crear el «info pad»"

#: dselect/baselist.cc:191
msgid "failed to create query window"
msgstr "no s'ha pogut crear la finestra de pregunta"

#: dselect/baselist.cc:255
msgid "Keybindings"
msgstr "Assignacions de tecles"

#: dselect/baselist.cc:303
#, c-format
msgid "  -- %d%%, press "
msgstr "  -- %d%%, premeu "

#: dselect/baselist.cc:306
#, c-format
msgid "%s for more"
msgstr "%s per a continuar"

#: dselect/baselist.cc:310
#, c-format
msgid "%s to go back"
msgstr "%s per a tornar"

#: dselect/bindings.cc:78
msgid "[not bound]"
msgstr "[no associada]"

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

#: dselect/bindings.cc:139
msgid "Scroll onwards through help/information"
msgstr "Avança a través de l'ajuda/info."

#: dselect/bindings.cc:140
msgid "Scroll backwards through help/information"
msgstr "Retrocedeix a través de l'ajuda/info."

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

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

#: dselect/bindings.cc:143
msgid "Go to top of list"
msgstr "Vés al principi de la llista"

#: dselect/bindings.cc:144
msgid "Go to end of list"
msgstr "Vés al final de la llista"

#: dselect/bindings.cc:145
msgid "Request help (cycle through help screens)"
msgstr "Demana ajuda (avança per les pàgines d'ajuda)"

#: dselect/bindings.cc:146
msgid "Cycle through information displays"
msgstr "Avança a través de les pantalles d'info."

#: dselect/bindings.cc:147
msgid "Redraw display"
msgstr "Redibuixa la pantalla"

#: dselect/bindings.cc:148
msgid "Scroll onwards through list by 1 line"
msgstr "Desplaça endavant a través de la llista en 1 línia"

#: dselect/bindings.cc:149
msgid "Scroll backwards through list by 1 line"
msgstr "Desplaça enrrere a través de la llista en 1 línia"

#: dselect/bindings.cc:150
msgid "Scroll onwards through help/information by 1 line"
msgstr "Desplaça endavant a través de l'ajuda/info. en 1 línia"

#: dselect/bindings.cc:151
msgid "Scroll backwards through help/information by 1 line"
msgstr "Desplaça enrrere a través de l'ajuda/info. en 1 línia"

#: dselect/bindings.cc:152
msgid "Scroll onwards through list"
msgstr "Desplaça endavant a través de la llista"

#: dselect/bindings.cc:153
msgid "Scroll backwards through list"
msgstr "Desplaça enrrere a través de la llista"

#: dselect/bindings.cc:156
msgid "Mark package(s) for installation"
msgstr "Marca els paquets per a instaŀlar"

#: dselect/bindings.cc:157
msgid "Mark package(s) for deinstallation"
msgstr "Marca el/els paquet(s) per a desinstaŀlar"

#: dselect/bindings.cc:158
msgid "Mark package(s) for deinstall and purge"
msgstr "Marca el/els paquet(s) per a desinstaŀlar i purgar"

#: dselect/bindings.cc:159
msgid "Make highlight more specific"
msgstr "Fes un ressaltat més específic"

#: dselect/bindings.cc:160
msgid "Make highlight less specific"
msgstr "Fes un ressaltat menys específic"

#: dselect/bindings.cc:161
msgid "Search for a package whose name contains a string"
msgstr "Cerca un paquet per al qual el nom contingui una cadena"

#: dselect/bindings.cc:162
msgid "Repeat last search."
msgstr "Repeteix la darrera recerca"

#: dselect/bindings.cc:163
msgid "Swap sort order priority/section"
msgstr "Intercanvia el mecanisme d'ordre prioritat/secció"

#: dselect/bindings.cc:164
msgid "Quit, confirming, and checking dependencies"
msgstr "Surt, confirmant i comprovant dependències"

#: dselect/bindings.cc:165
msgid "Quit, confirming without check"
msgstr "Surt, confirmant i sense comprovar dependències"

#: dselect/bindings.cc:166
msgid "Quit, rejecting conflict/dependency suggestions"
msgstr "Surt, rebutjant els suggeriments de conflictes/dependències"

#: dselect/bindings.cc:167
msgid "Abort - quit without making changes"
msgstr "Avorta - surt sense fer cap canvi"

#: dselect/bindings.cc:168
msgid "Revert to old state for all packages"
msgstr "Reverteix a l'antic estat per a tots els paquets"

#: dselect/bindings.cc:169
msgid "Revert to suggested state for all packages"
msgstr "Reverteix a l'estat suggerit per a tots els paquets"

#: dselect/bindings.cc:170
msgid "Revert to directly requested state for all packages"
msgstr "Reverteix a l'estat requerit directament per a tots els paquets"

#: dselect/bindings.cc:171
msgid "Revert to currently installed state for all packages"
msgstr "Reverteix a l'estat actual d'instaŀlació per a tots els paquets"

#: dselect/bindings.cc:174
msgid "Select currently-highlighted access method"
msgstr "Selecciona el mètode d'accés actualment ressaltat"

#: dselect/bindings.cc:175
msgid "Quit without changing selected access method"
msgstr "Surt sense canviar el mètode d'accés seleccionat"

#: dselect/helpmsgs.cc:29
msgid "Keystrokes"
msgstr "Assignacions de tecles"

#: 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 ""
"Tecles de moviment: Re Pàg/Av Pàg, Inici/Fí,  endavant/enrere:\n"
"  j, Avall             k, Amunt               mou el ressaltat\n"
"  N, Pàg avall, Espai  P, Pàg amunt, Retrocés desplaça la llista 1 pàgina\n"
"  ^n                   ^p                     desplaça la llista 1 línia\n"
"  t, Inici             e, Fi                  salta a l'inici/fí de la "
"llista\n"
"  u                    d                      desplaça la info. 1 pàgina\n"
"  ^u                   ^d                     desplaça la info. 1 línia\n"
"  B, Esquerra          F, Dreta               desplaça la visual. ⅓ "
"pantalla\n"
"  ^b                   ^f                     desplaça la visual. 1 "
"caràcter\n"
"Marca els paquets per a processament posterior:\n"
" +, Inserta instaŀla o actualitza   =, H manté en l'estat actual\n"
" -, Supr    desinstaŀla             :, G no manté: actualitza o deixa "
"deinstaŀlat\n"
"\n"
" _          desinstaŀla i purga la configuració\n"
"                                               Misceŀlània:\n"
"Surt, sobreescriu (compte amb les majúscules!): ?, F1 demana ajuda (tb "
"Ajuda)\n"
" Enter  Confirma, ix (verifica dependències)    i, I  mostra els tipus "
"d'info.\n"
"   Q    Confirma, ix (no verifica dependènc.)   o, O  commuta opcions "
"d'ordre\n"
" X, Esc iX, abandonant qualsevol canvi          v, V  canvia la visual. "
"d'estat\n"
"   R    ToRna a l'estat abans d'aquesta llista   ^l   refresca la "
"visualització\n"
"   U    deixa-ho tot en l'estat sUggerit          /   cerca (Retorn "
"canceŀla)\n"
"   D    deixa-ho tot en l'estat requerit        n, \\  repeteix la darrera "
"cerca\n"

#: dselect/helpmsgs.cc:55
msgid "Introduction to package selections"
msgstr "Introducció a les seleccions de paquets"

#: 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 ""
"Benvingut al llistat principal de paquets del dselect.\n"
"\n"
"S'us presentarà un llistat de paquets que estan instaŀlats o disponibles\n"
"per a ser instaŀlats. Podeu navegar pel llistat emprant les tecles de\n"
"cursor, marcar els paquets a instaŀlar (utilitzant «+») o desinstal·lar\n"
"(utilitzant «-»).\n"
"Els paquets poden marcar-se per separat o per grups: inicialment veureu\n"
"que la línia «Tots els paquets» està seleccionada.  «+», «-», etc.\n"
"afectarà als paquets descrits per la línia ressaltada.\n"
"\n"
"Algunes de les vostres seleccions causaran conflictes o problemes de\n"
"dependències; s'us donarà una subllista dels paquets rellevants per a que\n"
"pogueu solventar els problemes.\n"
"\n"
"Haurieu de llegir la llista de tecles i les explicacions de la pantalla.\n"
"Hi ha molta ajuda en línia disponible, feu ús d'ella - premeu «?» en\n"
"qualsevol moment per a obtindre ajuda.\n"
"\n"
"Quan hagueu acabat de seleccionar paquets, prémeu <enter> per a confirmar\n"
"els canvis, o «X» per a sortir sense desar els canvis. Llavors es "
"realitzarà\n"
"una darrera verificació dels conflictes i dependències - aquí també podrieu\n"
"veure una subllista.\n"
"\n"
"Premeu <espai> per a abandonar l'ajuda i entrar ara al llistat.\n"

#: dselect/helpmsgs.cc:80
msgid "Introduction to read-only package list browser"
msgstr "Introducció al navegador només lectura del llistat de paquets"

#: 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 ""
"Benvingut al llistat principal de paquets de dselect.\n"
"\n"
"S'us presentarà un llistat de paquets que estan instaŀlats o disponibles\n"
"per a ser instaŀlats. Ja que no teniu els privilegis necessaris per a\n"
"actualitzar els estats dels paquets, esteu en el mode només lectura. Podeu\n"
"navegar pel llistat emprant les tecles de cursor (vegeu la pantalla d'ajuda\n"
"de «Dreceres»), observar l'estat dels paquets i llegir informació sobre "
"ells.\n"
"\n"
"Haurieu de llegir la llista de tecles i les explicacions de la pantalla.\n"
"Hi ha molta ajuda en línia disponible, feu ús d'ella - premeu «?» en\n"
"qualsevol moment per a obtindre ajuda.\n"
"\n"
"Quan hagueu acabat de navegar, premeu «Q» o <enter> per a sortir.\n"
"\n"
"Premeu <espai> per a abandonar l'ajuda i entrar ara al llistat.\n"

#: dselect/helpmsgs.cc:99
msgid "Introduction to conflict/dependency resolution sub-list"
msgstr "Introducció a la subllista de resolució de conflictes/dependències"

#: 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 ""
"Resolució de dependències/conflictes - introducció.\n"
"\n"
"Una o més seleccions han ocasionat un problema de conflicte o dependència -\n"
"alguns dels paquets només s'haurien d'instaŀlar junt amb d'altre i algunes\n"
"combinacions de paquets no es poden instaŀlar juntes.\n"
"\n"
"Veureu una subllista que conté els paquets involucrats. La meitat inferior\n"
"de la pantalla mostra les dependències i conflictes rellevants; useu «i» "
"per\n"
"a canviar entre això, les descripcions dels paquets i la informació interna\n"
"de control.\n"
"\n"
"S'ha calculat un repertori de paquets «suggerits» i les marques inicials en\n"
"aquesta subllista s'han posat per a lligar amb aquells, pel que podreu\n"
"simplement prémer Enter per a acceptar les suggerències si ho desitgeu.\n"
"Podeu avortar el(s) canvi(s) que han causat el problema i tornar a la\n"
"llista principal, prement la «X» majúscula.\n"
"\n"
"També us podeu moure per la llista i canviar les marques per a que "
"s'adapten\n"
"al que voleu, i podeu «rebutjar» les suggerències utilitzant la «D» o «R»\n"
"majúscula (vegeu la pantalla d'ajuda de lligams de tecles). Podeu utilitzar\n"
"la «Q» majúscula per a forçar a acceptar la situació mostrada actualment,\n"
"en el cas de que desitgeu descartar una recomanació o penseu que el\n"
"programa s'ha equivocat.\n"
"\n"
"Premeu <espai> per a abandonar l'ajuda i entrar en la subllista; recordeu:\n"
"premeu «?» per a obtindre ajuda.\n"

#: dselect/helpmsgs.cc:125
msgid "Display, part 1: package listing and status chars"
msgstr "Mostra, primera part: llistat de paquets i caràcters d'estat"

#: 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 ""
"La meitat superior de la pantalla mostra una llista de paquets. Per a cada\n"
"paquet veureu quatre columnes amb la marca i el seu estat actual al "
"sistema.\n"
"Al mode resumit, (useu «v» per a canviar al mode detallat) aquests són\n"
"caràcters individuals, d'esquerra a dreta:\n"
" Seny. d'error: Espai - cap error (però el paquet pot estar en estat "
"trencat\n"
"                     - mireu més endavant)\n"
"                «R»  - error seriós durant la instaŀlació, cal reinstaŀlar-"
"ho;\n"
" Estat d'instaŀlació:    Espai -  no instal·lat;\n"
"                          «*»  - instaŀlat;\n"
"                          «-»  - no instaŀlat, però queden fitxers de "
"config.;\n"
"         els paquets en { «U»  - desempaquetat però encara sense "
"configurar;\n"
"         aquests estats { «C»  - a mig configurar (s'ha produït un error);\n"
"         estan trencats { «I»  - a mig instaŀlar (s'ha produït un error).\n"
" Marca antiga: el que s'havia demanat abans de presentar aquesta llista;\n"
" Marca: el que es demana per aquest paquet:\n"
"   «*»: marcat per a instaŀlació o actualització;\n"
"   «-»: marcat per a supressió, però els fitxers de configuració romandran;\n"
"   «=»: mantingut: el paquet no serà processat de cap manera;\n"
"   «_»: marcat per a purga completa - suprimeix també la configuració\n"
"   «n»: el paquet és nou i encara s'ha de marcar instaŀlació/supressió/etc.\n"
"\n"
"També es mostra la prioritat, secció, nom, números de versió disponible i\n"
"instaŀlada de cada paquet (majús-V per a mostrar/amagar) i descripció\n"
"resumida.\n"

#: dselect/helpmsgs.cc:152
msgid "Display, part 2: list highlight; information display"
msgstr "Mostra, segona part: llista ressaltada; mostra la info."

#: 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 ""
"* Ressaltat: el ressaltat destacarà una línia en el llistat de paquets. "
"Indica\n"
"  a quin(s) paquet(s) afectarà el prémer «+», «-» i «_».\n"
"\n"
"* La línia divisòria en la meitat de la pantalla mostra una breu explicació\n"
"  de l'estat del paquet ressaltat o una descripció del grup ressaltat si es\n"
"  tracta d'una línia de grup.  Si no enteneu el significat d'alguns dels\n"
"  caràcters d'estat mostrats, dirigiu-vos al paquet rellevant i mireu en\n"
"  aquesta línia de divisió, o useu la tecla «v» per a una pantalla "
"detallada\n"
"  (premeu «v» novament per a tornar a la vista anterior).\n"
"\n"
"* El final de la pantalla mostra més informació sobre el paquet actualment\n"
"  destacat (si només n'hi ha un).\n"
"\n"
"  Pot mostrar una descripció estesa del paquet, els detalls de control "
"interns\n"
"  del paquet (tant per a la versió instaŀlada com per a la disponible) o\n"
"  informació sobre els conflictes i les dependències referents al paquet\n"
"  actual (en sub-llistes de resolució de conflicte/dependències).\n"
"\n"
"  Useu la tecla «i» per a per a canviar entre les pantalles i «I» per a\n"
"  amagar la mostra d'informació, o expandir-la per a que utilitze quasi "
"tota\n"
"  la pantalla.\n"

#: dselect/helpmsgs.cc:176
msgid "Introduction to method selection display"
msgstr "Introducció al mètode de selecció mostrat"

#: 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 i dpkg poden fer una instaŀlació automàtica, carregant els paquets\n"
"que s'instaŀlaran des d'una gran diversitat de llocs diferents.\n"
"\n"
"Aquesta llista vos permetrà seleccionar un d'aquests mètodes d'instaŀlació.\n"
"\n"
"Desplaceu el ressaltat lluminós al mètode que desitgeu emprar i premeu "
"<Intro>\n"
"Llavors se vos preguntarà per la informació necessària per a la "
"instaŀlació.\n"
"\n"
"Mentre desplaceu l'indicatiu ressaltat se vos mostrarà, quan estigui "
"disponible,\n"
"una descripció de cada mètode en la meitat inferior de la pantalla.\n"
"\n"
"Si desitgeu sortir sense canviar res useu la tecla «x» mentre estigueu\n"
"en la llista de mètodes d'instaŀlació.\n"
"\n"
"Una completa llista amb les combinacions de tecles es troba disponible al\n"
"prémer «k», o des del menú d'ajuda al que s'accedeix prement «?».\n"

#: dselect/helpmsgs.cc:196
msgid "Keystrokes for method selection"
msgstr "Assignacions de tecles per a la selecció del mètode"

#: 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 ""
"Tecles de moviment: Re Pàg/Av Pàg, Inici/Fí,  endavant/enrere:\n"
"  j, Avall             k, Amunt               mou el ressaltat\n"
"  N, Pàg avall, Espai  P, Pàg amunt, Retrocés desplaça la llista 1 pàgina\n"
"  ^n                   ^p                     desplaça la llista 1 línia\n"
"  t, Inici             e, Fi                  salta a l'inici/fí de la "
"llista\n"
"  u                    d                      desplaça la info. 1 pàgina\n"
"  ^u                   ^d                     desplaça la info. 1 línia\n"
"  B, Esquerra          F, Dreta               desplaça la visual. ⅓ "
"pantalla\n"
"  ^b                   ^f                     desplaça la visual. 1 "
"caràcter\n"
"(Aquestes són les mateixes tecles de moviment del la visualització\n"
"de la llista de paquets)\n"
"\n"
"Ix:\n"
" Retorn, Intro   selecciona aquest mètode i vés al seu diàleg de "
"configuració\n"
" x, X            Ix sense canviar o configurar el mètode d'instaŀlació\n"
"\n"
"Misceŀlània:\n"
"   ?, Ajuda, F1       demana ajuda\n"
"  ^l                  refresca la visualització\n"
"   /                  cerca (Retorn canceŀla)\n"
"   \\                  repeteix la darrera cerca\n"

#: dselect/main.cc:60
msgid "Type dselect --help for help."
msgstr "Teclegeu dselect --help per a obtindre ajuda."

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

#: dselect/main.cc:143
msgid "[A]ccess"
msgstr "[M]ètode"

#: dselect/main.cc:143
msgid "Choose the access method to use."
msgstr "Escull el mètode d'accés que emprareu."

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

#: dselect/main.cc:144
msgid "[U]pdate"
msgstr "[A]ctualitza"

#: dselect/main.cc:144
msgid "Update list of available packages, if possible."
msgstr "Actualitza la llista de paquets disponibles, si és possible."

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

#: dselect/main.cc:145
msgid "[S]elect"
msgstr "[S]elecciona"

#: dselect/main.cc:145
msgid "Request which packages you want on your system."
msgstr "Selecciona els paquets que voleu en el sistema."

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

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

#: dselect/main.cc:146
msgid "Install and upgrade wanted packages."
msgstr "Instaŀla i actualitza els paquets desitjats."

#: dselect/main.cc:147
msgid "c"
msgstr "c"

#: dselect/main.cc:147
msgid "[C]onfig"
msgstr "[C]onfigura"

#: dselect/main.cc:147
msgid "Configure any packages that are unconfigured."
msgstr "Configura els paquets que no estiguin configurats."

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

#: dselect/main.cc:148
msgid "[R]emove"
msgstr "[D]esinstaŀla"

#: dselect/main.cc:148
msgid "Remove unwanted software."
msgstr "Desinstaŀla els paquets no desitjats."

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

#: dselect/main.cc:149
msgid "[Q]uit"
msgstr "Sur[T]"

#: dselect/main.cc:149
msgid "Quit dselect."
msgstr "Surt de dselect."

#: dselect/main.cc:150
msgid "menu"
msgstr "menú"

#: dselect/main.cc:155
#, c-format
msgid "Debian `%s' package handling frontend version %s.\n"
msgstr "Interfície de gestió de paquets «%s» de Debian versió %s.\n"

#: dselect/main.cc:158
msgid ""
"Copyright (C) 1994-1996 Ian Jackson.\n"
"Copyright (C) 2000,2001 Wichert Akkerman.\n"
msgstr ""
"Copyright © 1994-1996 Ian Jackson.\n"
"Copyright © 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 ""
"Això és programari lliure, vegeu la Llicència Publica General GNU versió 2\n"
"o posterior per a les condicions de còpia. No hi ha CAP garantia.\n"

#: dselect/main.cc:172 dselect/main.cc:220
msgid "<standard output>"
msgstr "<eixida estàndard>"

#: dselect/main.cc:183
#, c-format
msgid ""
"Usage: %s [<option> ...] [<action> ...]\n"
"\n"
msgstr ""
"Forma d'ús: %s [<opció> …] [<acció> …]\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 ""
"Opcions:\n"
"  --admindir <directori>        Utilitza <directori> en comptes de %s.\n"
"  -expert                       Habilita el mode expert.\n"
"  --debug <fitxer> | -D<fitxer> Habilita la depuració, enviant l'eixida\n"
"                                a <fitxer>.\n"
"  --colour | --color screenpart:[foreground],[background][:attr[+attr+..]]\n"
"                                Configura els colors de la pantalla.\n"
"\n"

#: dselect/main.cc:196
#, c-format
msgid ""
"  --help                     Show this help message.\n"
"  --version                  Show the version.\n"
"\n"
msgstr ""
"  --help                        Mostra aquest missatge d'ajuda.\n"
"  --version                     Mostra la versió.\n"
"\n"

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

#: dselect/main.cc:205
#, c-format
msgid "Screenparts:\n"
msgstr "Parts de la pantalla:\n"

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

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

#: dselect/main.cc:233
#, c-format
msgid "couldn't open debug file `%.255s'\n"
msgstr "no es pot obrir el fitxer de depuració «%.255s»\n"

#: dselect/main.cc:253
#, c-format
msgid "Invalid %s `%s'\n"
msgstr "%s invàlid: «%s»\n"

#: dselect/main.cc:270
msgid "screen part"
msgstr "part de la pantalla"

#: dselect/main.cc:276
msgid "Null colour specification\n"
msgstr "Especificació de color nula\n"

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

#: dselect/main.cc:297
msgid "colour attribute"
msgstr "atribut del color"

#: dselect/main.cc:329
msgid "Terminal does not appear to support cursor addressing.\n"
msgstr "El terminal no sembla donar suport al direccionament pel cursor.\n"

#: dselect/main.cc:331
msgid "Terminal does not appear to support highlighting.\n"
msgstr "El terminal sembla no donar suport per a ressaltats.\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 ""
"Establiu la variable TERM correctament, utilitzeu un terminal millor\n"
"o feu la construcció amb l'eina de gestió per paquets %s.\n"

#: dselect/main.cc:336
msgid "terminal lacks necessary features, giving up"
msgstr "el terminal no té les característiques necessàries, s'està avortant"

#: 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"
"Mogueu-vos amb les tecles del cursor ^P i ^N, lletres inicials o dígits;\n"
"Premeu <enter> per a confirmar la selecció.   ^L redibuixa la pantalla.\n"
"\n"

#: dselect/main.cc:428
msgid ""
"\n"
"\n"
"Read-only access: only preview of selections is available!"
msgstr ""
"\n"
"\n"
"Accés de només lectura: només és poden veure les selecciones disponibles!"

#: dselect/main.cc:448
msgid "failed to getch in main menu"
msgstr "no s'ha pogut fer «getch» en el menú principal"

#: dselect/main.cc:531
#, c-format
msgid "unknown action string `%.50s'"
msgstr "la cadena d'acció «%.50s» és desconeguda"

#: dselect/methlist.cc:77
msgid "dselect - list of access methods"
msgstr "dselect - llista dels mètodes d'accés"

#: dselect/methlist.cc:86
#, c-format
msgid "Access method `%s'."
msgstr "Mètode d'accés «%s»."

#: dselect/methlist.cc:120
msgid "Abbrev."
msgstr "Abreujament"

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

#: dselect/methlist.cc:164 dselect/pkglist.cc:572
msgid "doupdate failed"
msgstr "«doupdate» ha fallat"

#: dselect/methlist.cc:166 dselect/pkglist.cc:575
msgid "failed to unblock SIGWINCH"
msgstr "no s'ha pogut desblocar SIGWINCH"

#: dselect/methlist.cc:170 dselect/pkglist.cc:580
msgid "failed to re-block SIGWINCH"
msgstr "no s'ha pogut tornar a blocar SIGWINCH"

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

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

#: dselect/methlist.cc:197
msgid "No explanation available."
msgstr "No hi ha explicació disponible."

#: 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"
"Premeu <enter> per a continuar."

#: dselect/method.cc:161
#, c-format
msgid "Press <enter> to continue.\n"
msgstr "Premeu <enter> per a continuar.\n"

#: dselect/method.cc:162
msgid "<standard error>"
msgstr "<eixida d'error estàndard>"

#: dselect/method.cc:165
msgid "error reading acknowledgement of program failure message"
msgstr ""
"s'ha produït un error en llegir el reconeixement del missatge de la falla "
"del programa"

#: dselect/method.cc:196
msgid "update available list script"
msgstr "seqüència d'actualització de la llista «available»"

#: dselect/method.cc:200
msgid "installation script"
msgstr "seqüència d'instaŀlació"

#: dselect/method.cc:246
msgid "query/setup script"
msgstr "seqüència de petició/configuració"

#: dselect/methparse.cc:53
#, c-format
msgid "syntax error in method options file `%.250s' -- %s"
msgstr "error de sintaxi al fitxer d'opcions del mètode «%.250s» -- %s"

#: dselect/methparse.cc:59
#, c-format
msgid "error reading options file `%.250s'"
msgstr "s'ha produït un error en llegir el fitxer d'opcions «%.250s»"

#: dselect/methparse.cc:90
#, c-format
msgid "unable to read `%.250s' directory for reading methods"
msgstr "no es pot llegir el directori «%.250s» per a llegir els mètodes"

#: dselect/methparse.cc:106
#, c-format
msgid "method `%.250s' has name that is too long (%d > %d characters)"
msgstr "el mètode «%.250s» té un nom massa llarg (%d > %d caràcters)"

#: dselect/methparse.cc:117
#, c-format
msgid "unable to access method script `%.250s'"
msgstr "no es pot accedir a la seqüència del mètode «%.250s»"

#: dselect/methparse.cc:123
#, c-format
msgid "unable to read method options file `%.250s'"
msgstr "no es pot llegir el fitxer d'opcions del mètode «%.250s»"

#: dselect/methparse.cc:147
msgid "non-digit where digit wanted"
msgstr "s'ha trobat un no dígit quan s'esperava un dígit"

#: dselect/methparse.cc:150
msgid "EOF in index string"
msgstr "EOF en la cadena d'índex"

#: dselect/methparse.cc:153
msgid "index string too long"
msgstr "cadena d'índex massa llarga"

#: dselect/methparse.cc:156
msgid "newline before option name start"
msgstr "línia nova abans de que comenci el nom de l'opció"

#: dselect/methparse.cc:158
msgid "EOF before option name start"
msgstr "EOF abans de que comenci el nom de l'opció"

#: dselect/methparse.cc:162
msgid "nonalpha where option name start wanted"
msgstr "caràcter no alfanumèric on s'esperava el principi del nom d'una opció"

#: dselect/methparse.cc:164
msgid "non-alphanum in option name"
msgstr "caràcter no alfanumèric en el nom d'opció"

#: dselect/methparse.cc:167
msgid "EOF in option name"
msgstr "EOF dins del nom de l'opció"

#: dselect/methparse.cc:172
msgid "newline before summary"
msgstr "línia nova abans del resum"

#: dselect/methparse.cc:174
msgid "EOF before summary"
msgstr "EOF abans del resum"

#: dselect/methparse.cc:180
msgid "EOF in summary - missing newline"
msgstr "EOF en el resum - falta una línia nova"

#: dselect/methparse.cc:190
#, c-format
msgid "unable to open option description file `%.250s'"
msgstr "no es pot obrir el fitxer de descripció d'opcions «%.250s»"

#: dselect/methparse.cc:194
#, c-format
msgid "unable to stat option description file `%.250s'"
msgstr "no es pot fer «stat» sobre el fitxer de descripció d'opcions «%.250s»"

#: dselect/methparse.cc:198
#, c-format
msgid "failed to read option description file `%.250s'"
msgstr "no s'ha pogut llegir el fitxer de descripció d'opcions «%.250s»"

#: dselect/methparse.cc:201
#, c-format
msgid "error during read of option description file `%.250s'"
msgstr ""
"s'ha produït un error en llegir el fitxer de descripció d'opcions «%.250s»"

#: dselect/methparse.cc:224
#, c-format
msgid "error during read of method options file `%.250s'"
msgstr ""
"s'ha produït un error en llegir el fitxer d'opcions del mètode «%.250s»"

#: dselect/methparse.cc:247
#, c-format
msgid "unable to open current option file `%.250s'"
msgstr "no es pot obrir l'actual fitxer d'opcions «%.250s»"

#: dselect/methparse.cc:289
#, c-format
msgid "unable to open new option file `%.250s'"
msgstr "no es pot obrir el fitxer d'opcions nou «%.250s»"

#: dselect/methparse.cc:292
#, c-format
msgid "unable to write new option to `%.250s'"
msgstr "no es pot escriure una opció nova en «%.250s»"

#: dselect/methparse.cc:295
#, c-format
msgid "unable to close new option file `%.250s'"
msgstr "no es pot tancar el fitxer d'opcions nou «%.250s»"

#: dselect/methparse.cc:297
#, c-format
msgid "unable to install new option as `%.250s'"
msgstr "no es pot instaŀlar l'opció nova com a «%.250s»"

#: dselect/pkgdisplay.cc:36
msgid "new package"
msgstr "paquet nou"

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

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

#: dselect/pkgdisplay.cc:39
msgid "remove"
msgstr "desinstaŀla"

#: dselect/pkgdisplay.cc:40
msgid "purge"
msgstr "purgar"

#. 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 "REINSTAL·LA"

#: dselect/pkgdisplay.cc:51
msgid "not installed"
msgstr "no instaŀlat"

#: dselect/pkgdisplay.cc:52
msgid "removed (configs remain)"
msgstr "desinstaŀlat (queden els config)"

#: dselect/pkgdisplay.cc:53
msgid "half installed"
msgstr "instaŀlat a mitjes"

#: dselect/pkgdisplay.cc:54
msgid "unpacked (not set up)"
msgstr "desempaquetat (no configurat)"

#: dselect/pkgdisplay.cc:55
msgid "half configured (config failed)"
msgstr "a mig configurar (configuració fallida)"

#: dselect/pkgdisplay.cc:56
msgid "awaiting trigger processing"
msgstr "esperant el processament dels activadors"

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

#: dselect/pkgdisplay.cc:58
msgid "installed"
msgstr "instaŀlat"

#: dselect/pkgdisplay.cc:61
msgid "Required"
msgstr "Requerit"

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

#: dselect/pkgdisplay.cc:63
msgid "Standard"
msgstr "Estàndard"

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

#: dselect/pkgdisplay.cc:65
msgid "Extra"
msgstr "Extra"

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

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

#: dselect/pkgdisplay.cc:70
msgid "suggests"
msgstr "suggereix"

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

#: dselect/pkgdisplay.cc:72
msgid "depends on"
msgstr "depèn de"

#: dselect/pkgdisplay.cc:73
msgid "pre-depends on"
msgstr "predepèn de"

#: dselect/pkgdisplay.cc:74
msgid "breaks"
msgstr "trenca"

#: dselect/pkgdisplay.cc:75
msgid "conflicts with"
msgstr "entra en conflicte amb"

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

#: dselect/pkgdisplay.cc:77
msgid "replaces"
msgstr "reemplaça"

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

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

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

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

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

#: 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 "Trencat"

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

#: dselect/pkgdisplay.cc:97
msgid "Updated"
msgstr "Amb actualització disponible"

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

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

#: dselect/pkgdisplay.cc:100
msgid "Available"
msgstr "Disponible"

#: dselect/pkgdisplay.cc:101 dselect/pkgdisplay.cc:117
msgid "Removed"
msgstr "Desinstaŀlats"

#: dselect/pkgdisplay.cc:102 dselect/pkgdisplay.cc:111
msgid "Brokenly installed packages"
msgstr "Paquets mal instaŀlats"

#: dselect/pkgdisplay.cc:103
msgid "Newly available packages"
msgstr "Nous paquets disponibles"

#: dselect/pkgdisplay.cc:104
msgid "Updated packages (newer version is available)"
msgstr "Actualització disponible"

#: dselect/pkgdisplay.cc:105
msgid "Obsolete and local packages present on system"
msgstr "Paquets obsolets i presents en el sistema"

#: dselect/pkgdisplay.cc:106
msgid "Up to date installed packages"
msgstr "Paquets actualitzats, no hi ha versió més nova"

#: dselect/pkgdisplay.cc:107
msgid "Available packages (not currently installed)"
msgstr "Paquets disponibles (no instaŀlats actualment)"

#: dselect/pkgdisplay.cc:108
msgid "Removed and no longer available packages"
msgstr "Paquets desinstaŀlats que ja no estan disponibles"

#: dselect/pkgdisplay.cc:112
msgid "Installed packages"
msgstr "Paquets instaŀlats"

#: dselect/pkgdisplay.cc:113
msgid "Removed packages (configuration still present)"
msgstr "Paquets desinstaŀlats (falta la configuració)"

#: dselect/pkgdisplay.cc:114
msgid "Purged packages and those never installed"
msgstr "Paquets purgats o que no mai foren instaŀlats"

#: dselect/pkgdisplay.cc:116
msgid "Installed"
msgstr "Instaŀlat"

#: dselect/pkgdisplay.cc:118
msgid "Purged"
msgstr "Purgats"

#: dselect/pkgdisplay.cc:198
msgid "dselect - recursive package listing"
msgstr "dselect - llista recursiva de paquets"

#: dselect/pkgdisplay.cc:199
msgid "dselect - inspection of package states"
msgstr "dselect - inspecció de l'estat dels paquets"

#: dselect/pkgdisplay.cc:200
msgid "dselect - main package listing"
msgstr "dselect - llistat de paquets"

#: dselect/pkgdisplay.cc:208
msgid " (by section)"
msgstr " (per secció)"

#: dselect/pkgdisplay.cc:211
msgid " (avail., section)"
msgstr " (disp., secció)"

#: dselect/pkgdisplay.cc:214
msgid " (status, section)"
msgstr " (estat, secció)"

#: dselect/pkgdisplay.cc:223
msgid " (by priority)"
msgstr " (per prioritat)"

#: dselect/pkgdisplay.cc:226
msgid " (avail., priority)"
msgstr " (disp., prioritat)"

#: dselect/pkgdisplay.cc:229
msgid " (status, priority)"
msgstr " (estat, prioritat)"

#: dselect/pkgdisplay.cc:238 dselect/pkgdisplay.cc:250
msgid " (alphabetically)"
msgstr " (alfabèticament)"

#: dselect/pkgdisplay.cc:241
msgid " (by availability)"
msgstr " (per disponibilitat)"

#: dselect/pkgdisplay.cc:244
msgid " (by status)"
msgstr " (per estat)"

#: dselect/pkgdisplay.cc:258
msgid " mark:+/=/- terse:v help:?"
msgstr " marca:+/=/- concís:v ajuda:?"

#: dselect/pkgdisplay.cc:259
msgid " mark:+/=/- verbose:v help:?"
msgstr " marca:+/=/- depuració:v ajuda:?"

#: dselect/pkgdisplay.cc:260
msgid " terse:v help:?"
msgstr " concís:v ajuda:?"

#: dselect/pkgdisplay.cc:261
msgid " verbose:v help:?"
msgstr " depuració:v ajuda:?"

#: 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 ""
"La línia que heu ressaltat representa molts paquets. Si demaneu que "
"s'instaŀlin, desinstal·lin, mantinguin, etc. això afectarà a tots els "
"paquets que cumpleixin el criteri indicat.\n"
"\n"
"Si desplaceu l'indicatiu de ressaltat a una línia d'un paquet determinat se "
"vos mostrarà informació referent a aquest paquet.\n"
"Podeu emprar «o» i «O» per a canviar l'ordre dels paquets llistats permetent-"
"vos marcar els paquets per diferents classes o grups."

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

#: dselect/pkginfo.cc:112
msgid "No description available."
msgstr "No hi ha cap descripció disponible."

#: dselect/pkginfo.cc:130
msgid "Installed control file information"
msgstr "Informació del fitxer de control instaŀlada"

#: dselect/pkginfo.cc:146
msgid "Available control file information"
msgstr "Informació del fitxer de control disponible"

#: dselect/pkglist.cc:416
msgid "There are no packages."
msgstr "No hi ha paquets."

#: dselect/pkglist.cc:507
msgid "invalid search option given"
msgstr "s'ha donat una opció de recerca invàlida"

#: dselect/pkglist.cc:521
msgid "error in regular expression"
msgstr "error en l'expressió regular"

#: dselect/pkgsublist.cc:107
msgid " does not appear to be available\n"
msgstr " no sembla estar disponible\n"

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

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

#: dselect/pkgtop.cc:79
msgid "All packages"
msgstr "Tots els paquets"

#: dselect/pkgtop.cc:83
#, c-format
msgid "%s packages without a section"
msgstr "%s paquets sense secció"

#: dselect/pkgtop.cc:85
#, c-format
msgid "%s packages in section %s"
msgstr "%s paquets en la secció %s"

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

#: dselect/pkgtop.cc:95
#, c-format
msgid "%s %s packages without a section"
msgstr "Paquets %s %s sense secció"

#: dselect/pkgtop.cc:97
#, c-format
msgid "%s %s packages in section %s"
msgstr "Paquets %s %s en la secció %s"

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

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

#: dselect/pkgtop.cc:267
msgid "Installed?"
msgstr "Instaŀlat?"

#: dselect/pkgtop.cc:271
msgid "Old mark"
msgstr "Marca antiga"

#: dselect/pkgtop.cc:275
msgid "Marked for"
msgstr "Marcat per a"

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

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

#: dselect/pkgtop.cc:281
msgid "Priority"
msgstr "Prioritat"

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

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

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

#~ msgid "returned error exit status %d.\n"
#~ msgstr "retorna l'eixida d'error %d.\n"

#~ msgid "was interrupted.\n"
#~ msgstr "s'ha interromput.\n"

#~ msgid "was terminated by a signal: %s.\n"
#~ msgstr "s'ha finalitzat pel senyal: %s.\n"

#~ msgid "(It left a coredump.)\n"
#~ msgstr "(Ha deixat un bolcat de memòria.)\n"

#~ msgid "failed with an unknown wait return code %d.\n"
#~ msgstr "ha fallat retornant un codi d'estat en espera desconegut %d.\n"

#~ msgid "unable to run %.250s process `%.250s'"
#~ msgstr "no es pot executar el procés %.250s «%.250s»"

#~ msgid "failed config"
#~ msgstr "configuració fallida"

#~ msgid "unable to wait for %.250s"
#~ msgstr "no es pot fer «wait» en %.250s"

#~ msgid "got wrong child's status - asked for %ld, got %ld"
#~ msgstr "s'ha obtingut un estat equivocat - s'esperava %ld, s'ha rebut %ld"

#~ msgid "Recommended"
#~ msgstr "Recomanat"

#~ msgid "Contrib"
#~ msgstr "Contrib"

#~ msgid "Rec"
#~ msgstr "Rec"

#~ msgid "Ctb"
#~ msgstr "Ctb"

#~ msgid ""
#~ "baselist::startdisplay() done ...\n"
#~ "\n"
#~ " xmax=%d, ymax=%d;\n"
#~ "\n"
#~ " title_height=%d, colheads_height=%d, list_height=%d;\n"
#~ " thisstate_height=%d, info_height=%d, whatinfo_height=%d;\n"
#~ "\n"
#~ " colheads_row=%d, thisstate_row=%d, info_row=%d;\n"
#~ " whatinfo_row=%d, list_row=%d;\n"
#~ "\n"
#~ msgstr ""
#~ "baselist::startdisplay() finalitzat …\n"
#~ "\n"
#~ " xmax=%d, ymax=%d;\n"
#~ "\n"
#~ " title_height=%d, colheads_height=%d, list_height=%d;\n"
#~ " thisstate_height=%d, info_height=%d, whatinfo_height=%d;\n"
#~ "\n"
#~ " colheads_row=%d, thisstate_row=%d, info_row=%d;\n"
#~ " whatinfo_row=%d, list_row=%d;\n"
#~ "\n"

#~ msgid "[none]"
#~ msgstr "[cap]"

#~ msgid "error un-catching signal %d: %s\n"
#~ msgstr "s'ha produït un error en desassignar el senyal %d: %s\n"

#~ msgid "unable to ignore signal %d before running %.250s"
#~ msgstr "no es pot ignorar el senyal %d abans d'executar %.250s"

#~ msgid "(no clientdata)"
#~ msgstr "(no hi ha dades del client)"

#~ msgid "<null>"
#~ msgstr "<nul>"

#~ msgid "interrelationships affecting "
#~ msgstr "interrelacions que afecten "

#~ msgid "description of "
#~ msgstr "descripció de "

#~ msgid "description"
#~ msgstr "descripció"

#~ msgid "currently installed control info"
#~ msgstr "info. de control actualment instaŀlada"

#~ msgid "available version of control info for "
#~ msgstr "info. de control de la versió disponible de "
