Puede personalizar la lista de paquetes de varias maneras: la presentación de los paquetes, como se crea la jerarquía de paquetes, como se agrupan los paquetes e incluso configurar la pantalla principal.
Esta sección describe como configurar los contenidos y el formato de la
lista de paquetes, la línea de estado y la de cabecera, así como la salida
de aptitude search
.
Puede definir el formato de cada uno de estos espacios con una “cadena
formato”. Una cadena formato es una cadena de texto que contiene
escapes tales como %
%p
,
%S
, y más. La salida resultante se crea tomando el texto
para reemplazar los escapes %
de acuerdo a su significado
(explicados a continuación).
Un escape %
puede tener un tamaño definido, en cuyo caso
siempre se reemplazaría con la misma cantidad de texto (con espacios
añadidos para rellenar si es necesario), o puede ser
“ampliable”, tomando el espacio que las columnas de tamaño fijo
no requieren. De existir varias columnas ampliables, el espacio se
distribuye de manera equitativa.
Todos los escapes %
tienen un tamaño y/o capacidad de
ampliación. Puede cambiar el tamaño de un escape %
insertándolo entre %
y el carácter que identifica el
escape; por ejemplo, %20V
genera la versión candidata del paquete, 20 caracteres
de ancho. El ancho “básico” de la columna puede variar
dependiendo del contenido si inserta un signo de interrogación
(?
) entre %
y el carácter que
identifica el escape. Cabe que las columnas resultantes no se puedan alinear
verticalmente.
Si desea poder ampliar un escape %
en particular, a pesar
de tener un ancho definido, inserte una celdilla (p. ej.,
“#
”) a su derecha. Por ejemplo, para mostrar
la versión candidata de un paquete sin importar su longitud, use la cadena
formato %V#
. Puede también insertar #
después de algo que no es un escape %
; aptitude
“ampliará” el texto que precede a #
añadiendo espacios tras él.
En resumen, la sintaxis de un escape %
es:
%
[ancho
][?
]código
[#
]
The configuration variables Aptitude::UI::Package-Display-Format
,
Aptitude::UI::Package-Header-Format
,
and Aptitude::UI::Package-Status-Format
define the default formats the package list, the header at the top of the
package list, and the status line below the package list respectively. To
change how the results of an aptitude
search
command are displayed, use the -F
option.
Los siguientes escapes %
están disponibles en cadenas
formato:
Nota | |
---|---|
Algunas de las descripciones a continuación se refieren al “paquete”. En la interfaz gráfica de usuario (GUI), esto es el paquete que está visionando o el seleccionado; en la busca en línea de órdenes, esto es el paquete que está visionando |
Escape | Nombre | Tamaño predeterminado | Ampliable | Descripción |
---|---|---|---|---|
%% | Literal % | 1 | No | Ésto no es realmente un escape; sólo inserta un signo porcentual en la salida en el momento en que aparece. |
%# | Reemplazo de parámetro | Variable | No |
En algunas circunstancias, una cadena formato de presentación puede tener
“parámetros”: por ejemplo, en el search de
línea de órdenes, los grupos encontrados en la búsqueda se usan como
parámetros al presentar el resultado. El parámetro, que se indica con
número , reemplaza al código del formato.
|
%a | Marca de acción | 1 | No | Una marca de un solo carácter que resume cualquier acción que se va a ejecutar sobre el paquete, como se describe en Figura 2.10, “Valores de la marca de “acción””. |
%A | Acción | 10 | No | Una descripción algo más detallada de la acción que se va a ejecutar sobre el paquete. |
%B | Total rotos | 12 | No |
Si no hay paquetes rotos, no produce nada. De otra forma, genera una cadena
como por ejemplo “Broken: 10 ”,
que describe el número de paquetes rotos.
|
%c | Marca de estado actual | 1 | No | Una marca de un solo carácter que resume el estado actual del paquete, como se describe en Figura 2.9, “Valores de la marca de “estado actual””. |
%C | Estado actual | 11 | No | Una descripción más detallada del estado actual del paquete. |
%d | Descripción | 40 | Si | La descripción corta del paquete. |
%D | El tamaño del paquete | 8 | No | El tamaño del fichero de paquete que contiene el paquete. |
%E | Architecture | 10 | No |
Outputs the string of the architecture, for example
“amd64 ”.
|
%e | Source | 30 | No |
Outputs the source package, for example
“aptitude ” for
“aptitude-doc-en ”.
|
%H | Nombre del anfitrión («host») | 15 | No | El nombre del ordenador en el que ejecuta aptitude. |
%i | Prioridad pin | 4 | No | Mostrar la prioridad más alta asignada a la versión de un paquete; para paquetes, muestra la prioridad de la versión que se va a instalar de forma predeterminada (de existir). |
%I | Tamaño instalado | 8 | No | El espacio aproximado que el paquete ocupará en el disco duro. |
%m | Desarrollador | 30 | Si | El desarrollador del paquete. |
%M | Marca de automático | 1 | No |
Si el paquete esta automáticamente instalado, da como salida
“A ”; si no, no devuelve nada.
|
%n | Versión del programa | La longitud de “0.8.13”. | No |
Mostrar la versión de aptitude que está ejecutando, actualmente
“0.8.13 ”.
|
%N | Nombre del programa | La longitud del nombre. | No |
Mostrar el nombre del programa; generalmente,
“aptitude ”.
|
%o | TamDescarga | 17 | No |
Si no se va a instalar ningún paquete, no muestra nada. De otra forma,
muestra una cadena que describe el tamaño total de todos los paquetes que va
a instalar (una estimación de cuanto necesita descargar); por ejemplo
“TamDesc: 1000B ”.
|
%O | Origin | 30 | No |
Outputs a string of the origin of the package, for example
“Debian:unstable [amd64] ”.
|
%p | Nombre del paquete | 30 | Si | Mostrar el nombre del paquete. Cuando vea un paquete en un contexto de árbol, su nombre estará en negrita, de ser posible, de acuerdo a su profundidad en el árbol. |
%P | Prioridad | 9 | No | Mostrar la prioridad de un paquete. |
%r | Total de dependencias inversas | 2 | No | Mostrar el número aproximado de paquetes instalados que dependen del paquete. |
%R | Prioridad abreviada | 3 | No |
Mostrar una descripción abreviada de la prioridad de un paquete: por ejemplo
“Important ” pasa a ser
“Imp ”.
|
%s | Sección | 10 | No | Mostrar la sección del paquete |
%S | Estado de confianza | 1 | No | Mostrar la letra «U» si el paquete no está firmado. |
%t | Archivo | 10 | Si | El archivo en el que se encuentra el paquete. |
%T | Tagged (and user-tags) | 30 | No |
Mostrar “ This field also includes user-tags. |
%u | Cambio de uso de disco | 30 | No |
Si las acciones seleccionadas van a alterar la cantidad de espacio usado en
el disco, muestra la descripción del cambio en el espacio del disco duro;
por ejemplo “Se usará 100MB de espacio en
disco. ”
|
%v | Versión actual | 14 | No |
Mostrar la versión instalada del paquete, o
<none> si el paquete no está
instalado.
|
%V | Versión candidata | 14 | No |
Mostrar la versión del paquete que puede instalar si ejecuta
+) sobre el paquete, o
<none> si el paquete no está
disponible.
| → (
%Z | Cambio de espacio | 9 | No | Mostrar cuanto espacio adicional se va a usar, o cuanto espacio se va a liberar al instalar, actualizar o eliminar un paquete. |
La jerarquía de paquetes se genera a través de una directriz de
agrupación: reglas que describen como se debe construir la
jerarquía. Una directriz de agrupación describe una
“segmentación” de reglas; cada regla puede descartar paquetes,
crear sub-jerarquías en los cuales los paquetes residen, o manipular el
árbol. Los elementos de configuración Aptitude::UI::Default-Grouping
y Aptitude::UI::Default-Preview-Grouping
definen las directrices de agrupación para listas de paquetes recién creadas
y pantallas de previsualización, respectivamente. Puede configurar la
directriz de agrupación para la lista de paquetes
actual pulsando G.
Una directriz de agrupación se describe con una lista separada por comas de
reglas:
.
Cada regla1
,regla2
,...
regla
consiste de su nombre, posiblemente
seguido de argumentos: por ejemplo, versions
o
section(subdir)
. El tipo de regla determina si se
necesitan argumentos, y cuantos.
Una regla puede ser no-terminal o terminal. Una regla no-terminal procesa un paquete generando parte de la jerarquía, para después filtrar el paquete con otra regla. Una regla terminal, por otra parte, también genera parte del árbol (por lo general, elementos correspondientes al paquete), pero no filtra el paquete con otra regla posterior. Si no se define una regla terminal, aptitude utiliza la regla predeterminada, que es crear los “elementos de paquete” estándar.
action
Agrupar paquetes de acuerdo a la acción que se va a realizar sobre ellos; se ignorarán paquetes sin cambios y no actualizables. Éste es el agrupamiento que se emplea en los árboles de previsualización.
arquitectura
Agrupa paquetes de acuerdo a su arquitectura.
deps
Ésta es una regla terminal.
Creación de elementos de paquete estándar que puede expandir para mostrar las dependencias del paquete.
filter(patrón
)
Incluir sólo paquetes con al menos una versión que coincide con
patrón
.
No descartar ningún paquete si “no hay” un
patrón
. Ésta es una característica de
compatibilidad inversa y puede quedar obsoleta en el futuro.
firstchar[(mode
)]
Agrupar paquetes en base al primer carácter del nombre.
To be precise, it is not always the first letter -- for packages starting
with lib*
the name of the group is
liba
, libb
, ... like in Debian FTPs.
modo
puede ser uno de los siguientes:
binary
Group based on the binary package name. This is the default if no
mode
is specified.
Ejemplo 2.7. Grouping policy firstchar
or
firstchar(binary)
With the source package dpkg
as an example, the binary
packages dselect
, dpkg
and
dpkg-dev
would be grouped under d
,
while libdpkg-dev
and libdpkg-perl
would be added to the libd
group.
source
Group based on the source package name.
This is useful for example when browsing packages coming from the same
source package (source grouping
policy) within large collections (examples: all installed packages, all
upgradable packages, all packages from "main" section), to add an
intermediate grouping step. In this way, one can for example emulate the
hierarchy of FTPs (try grouping:
"section(topdir),firstchar(source),source"
).
Ejemplo 2.8. Grouping policy firstchar(source)
Again, with the source package dpkg
as an example, all
the binary packages dselect
, dpkg
,
dpkg-dev
, libdpkg-dev
and
libdpkg-perl
would be grouped under d
.
pattern(patrón
[=>título
] [{directriz
}] [, ...])
Una directriz de agrupación que puede personalizar. Cada versión de cada
paquete se compara con el patrón
dado. La primera
correspondencia se emplea para asignar un título
al paquete; entonces, los paquetes se agrupan según su
título
. Las cadenas con forma
\N
que aparecen en título
se
reemplazan por el enésimo resultado de la búsqueda. Si
título
no está presente, se toma como
\1
. Observe que los paquetes que no se corresponden con
ningún patrón
no aparecen en el árbol.
Ejemplo 2.9. Uso de pattern
(patrón) para agrupar paquetes en base a
su desarrollador.
pattern(
?maintainer
() => \1)
El ejemplo anterior agrupa paquetes de acuerdo al campo de desarrollador. La
directriz pattern(
realiza la misma
función, al igual que un ?maintainer
())título
ausente pasa a
ser \1
de manera predeterminada.
Cabe que una entrada finalice en ||
, en lugar de
=>
. Esto indica que los
paquetes que se corresponden con título
patrón
se
insertaran en el árbol al mismo nivel que el agrupación
patrón
, en lugar de insertarlos en sub-árboles.
El ejemplo anterior muestra las paquetes que se van a eliminar en un
sub-árbol, y muestra todos los demás paquetes en el nivel actual, agrupados
de acuerdo a las directrices que sigue pattern
(patrón).
De manera predeterminada, todos los paquetes que se corresponden con cada
patrón se agrupan de acuerdo a las reglas que sigue la directriz del
pattern
. Para definir una directriz diferente para
algunos paquetes, describa la directriz entre llaves ({}
)
a continuación del titulo del grupo, después de ||
, o
después del patrón, en caso de que ninguno este presente. Por ejemplo:
La directriz del ejemplo anterior tiene los siguientes efectos:
Los paquetes que se van a eliminar se muestran en un sub-árbol etiquetado “Paquetes que se eliminarán”; la directriz de agrupación para este sub-árbol esta vacío, con lo cual se muestran los paquetes en una lista plana.
Los paquetes que se van a instalar se muestran en un árbol etiquetado
Paquetes que se instalarán
y agrupados de acuerdo a las
directrices que sigue pattern
.
Todos los paquetes restantes se ubican en el nivel mas alto del árbol, agrupados de acuerdo a su estado.
Véase “Patrones de búsqueda” para más información acerca del
formato de patrón
.
prioridad
Agrupar paquetes de acuerdo a su prioridad.
section[(modo
[,passthrough])]
Agrupar paquetes de acuerdo a su campo de Sección.
modo
puede ser uno de los siguientes:
none
Agrupar en base a todo el campo de la sección, con lo cual se crean
categorías tales como “non-free/games”. Ésta es la manera
predeterminada si no se especifica el modo
.
topdir
Agrupar en base a la parte del campo de la sección antes del primer signo
/
; si esta parte de la sección no se reconoce, o si no
hay un /
se usará la primera entrada en la lista
Aptitude::Sections::Top-Sections
.
subdir
Agrupar en base a la parte del campo de sección después del primer signo
/
, de estar en la lista Aptitude::Sections::Top-Sections
.
En caso contrario, o en ausencia de /
, agrupa en base a
todo el campo de la sección.
subdirs
Agrupar en base a la parte del campo de la Sección después del primer signo
/
, si la porción del campo que lo antecede está dentro de
la lista Aptitude::Sections::Top-Sections
;
si no, o en ausencia de /
, se usará todo el campo. Si hay
varios signos /
en la porción del campo que esta en uso,
se formará una jerarquía de grupos. Por ejemplo, si
“games
” no es un miembro de Aptitude::Sections::Top-Sections
,
entonces un paquete con una sección de
“games/arcade
” se colocará debajo de la
cabecera de nivel superior “games
”, en un
sub-árbol llamado “arcade
”.
En presencia de passthrough
, aquellos paquetes que por
una razón u otra no tienen una sección real (por ejemplo, paquetes
virtuales) pasarán directamente al siguiente nivel de agrupación sin ser
primero colocados en sub-categorías.
status
Agrupar paquetes en las siguientes categorías:
Actualizaciones de seguridad
Actualizables
Nuevo
Instalados
No instalados
Obsoletos y creados localmente
Virtuales
source
Agrupa paquetes de acuerdo a su nombre de paquete fuente.
tag[(faceta
)]
Agrupar paquetes de acuerdo a la información «Tag» (etiqueta) guardado en
los ficheros de paquetes Debian. Si introduce
faceta
solo se mostrarán las marcas
correspondientes a esta faceta, y se ocultarán los paquetes que no poseen
esta faceta; de otra forma, se muestran todos los paquetes al menos una vez
(con paquetes sin etiquetar listados separadamente de los paquetes
etiquetados).
Para más información acerca de debtags, consulte http://debtags.alioth.debian.org.
task
Crear un árbol llamado “Tareas” que contiene las tareas
disponibles (la información acerca de las tareas es extraída de
debian-tasks.desc
, en el paquete
tasksel
). La regla que sigue a
tarea
creará sus categorías como hermanos de Tareas.
versions
Ésta es una regla terminal.
Crear elementos estándar de paquete que se pueden expandir para mostrar las versiones del paquete.
Por omisión, los paquetes en la lista de paquetes o en la salida de
aptitude search
se
ordenan por nombre. De todas formas, a menudo es bastante útil ordenarlos de
acuerdo a otros criterios (por ejemplo, por tamaño de paquete), y aptitude
le permite hacer precisamente esto modificando la directriz de
ordenación.
Al igual que la directriz de agrupación descrita en la sección anterior, la directriz de
ordenación es una lista separada por comas. Cada elemento de la lista es el
nombre de una regla de ordenación; si hay paquetes “iguales” de
acuerdo a la primera regla, se emplea la segunda regla para ordenarlos, y
así en adelante. Insertar un signo de tilde (~
) delante
de una regla revierte el significado normal de esa regla. Por ejemplo,
priority,~name
ordena paquetes por prioridad, pero los
paquetes con la misma prioridad se colocarán en orden inverso de acuerdo a
su nombre.
Para modificar la directriz de ordenación en una lista de paquetes activa,
pulse S. Para modificar la ordenación predeterminada de
todas las listas de paquetes, configure la opción de configuración
Aptitude::UI::Default-Sorting
.
Para modificar la directriz de ordenación de búsqueda en aptitude
, use la opción
de línea de órdenes --sort
.
Las reglas disponibles son:
installsize
Ordenar paquetes según la cantidad estimada de espacio que necesitan cuando se instalan.
installsizechange
Sorts packages by the change in the installed size (estimated amount of size required when installed), comparing the current version (if installed) and the candidate version to be installed, upgraded or removed.
debsize
Sorts packages by the size of the package.
name
Ordenar paquetes por nombre.
priority
Ordenar paquetes por prioridad.
version
Ordenar paquetes de acuerdo a su número de versión.