Personnaliser la disposition de l'affichage

Éléments d'affichage
Placement des éléments d'affichage
Référence des options de la disposition de l'affichage

Il est possible de réordonner la liste des paquets d'aptitude en apportant les modifications appropriées au fichier de configuration.

Éléments d'affichage

La disposition est conservée dans le groupe de configuration Aptitude::UI::Default-Package-View et consiste en une liste d'éléments d'affichage :

Nom Type {
  Row ligne;
  Column colonne;
  Width largeur;
  Height hauteur;

  options supplémentaires...
};

Cela crée un élément d'affichage nommé Nom dont le type est donné par Type. Les options Row, Column, Width et Height doivent être présentes. Elles déterminent où l'élément d'affichage est situé. Voyez ci-dessous pour une explication détaillée sur la manière dont les éléments d'affichage sont disposés.

Vous trouverez des exemples concernant la manière de modifier la disposition de l'affichage en consultant la définition du thème par défaut dans le fichier /usr/share/aptitude/aptitude-defaults.

Les types d'éléments d'affichage suivants sont disponibles :

Description

Cet élément d'affichage contient la « zone d'information » (typiquement une description du paquet actuellement sélectionné).

L'option PopUpDownKey donne le nom d'une commande clavier qui va montrer ou cacher l'élément d'affichage. Par exemple, mettre cette option à ShowHideDescription va donner à l'élément d'affichage actuel le même comportement que celui par défaut pour la zone d'information. L'option PopUpDownLinked donne le nom d'un autre élément d'affichage ; l'élément courant sera montré ou caché à chaque fois que l'autre élément le sera.

MainWidget

C'est une référence à l'élément d'affichage « principal » : typiquement c'est une liste de paquets. Une disposition d'affichage doit contenir exactement un élément MainWidget : pas un de plus, pas un de moins.

Static

Zone de l'écran qui affiche du texte ; elle peut contenir du code formaté décrit dans la section intitulée « Personnaliser la manière d'afficher les paquets ». Le texte à afficher peut être donné dans l'option Columns, ou être stocké dans la variable spécifiée par l'option ColumnsCfg. La couleur du texte est déterminée par le nom de la couleur passé à l'option Color.

Les objets Static peuvent être affichés et cachés de la même manière que les objets Description en utilisant les options PopUpDownKey et PopUpDownLinked.

Placement des éléments d'affichage

Les éléments d'affichage sont disposés dans une « table ». Le coin supérieur gauche d'un élément est dans la cellule donnée par les options Row et Column (commençant habituellement à la ligne 0 et la colonne 0 bien que ce ne soit pas obligatoire). La largeur d'un élément en cellule est donnée par son option Width, et sa hauteur est donnée par son option Height.

Une fois que l'élément d'affichage est disposé et qu'il a reçu une étendue initiale à l'écran, il est possible qu'il reste de l'espace. S'il y a de l'espace libre verticalement chaque ligne contenant un élément d'affichage dont l'option RowExpand est à true se verra allouer une partie de l'espace libre. De façon analogue, s'il y a de l'espace libre horizontalement, chaque colonne contenant un élément d'affichage dont l'option ColExpand est à true se verra allouer une partie de l'espace libre.

Dans le cas où il n'y a pas assez d'espace, chaque ligne ou colonne dont tous les objets ont leurs options RowShrink ou ColShrink à true sera rétrécie. S'il n'y en a pas assez, toutes les lignes et colonnes sont réduites pour s'ajuster à l'espace disponible.

Si un élément d'affichage n'est pas agrandi, mais ses lignes ou colonnes le sont, son alignement est déterminé par les options RowAlign et ColAlign. Les configurer à Left (gauche), Right (droite), Top (haut), Bottom (bas), ou Center (centré) va indiquer à aptitude où placer l'élément verticalement et horizontalement.

Par exemple, le groupe de configuration suivant crée un élément statique nommé « Header » qui est large de trois cellules et qui s'agrandit horizontalement mais pas verticalement. Il a la même couleur que les autres lignes d'en-tête et utilise le format standard des lignes d'en-tête :

Header Static {
  Row 0;
  Column 0;
  Width 3;
  Height 1;

  ColExpand true;
  ColAlign Center;

  RowAlign Center;

  Color ScreenHeaderColor;
  ColumnsCfg HEADER;
};

Référence des options de la disposition de l'affichage

Les options suivantes sont disponibles pour les éléments d'affichage :

ColAlign alignement;

Alignement doit être Left (gauche), Right (droite), ou Center (centré). Si la ligne contenant l'élément d'affichage courant est plus large que l'élément lui-même et que ColExpand est false, l'élément sera placé dans la ligne selon la valeur alignement.

Si cette option est absente, la valeur par défaut est Left.

ColExpand true|false;

Si cette option est mise à true (vrai), la colonne contenant l'élément d'affichage se verra allouer une partie de l'espace horizontal libre qui serait disponible.

Si cette option est absente, la valeur par défaut est false (faux).

Color couleur;

Cette option s'applique à l'élément Static. Couleur est le nom d'une couleur (par exemple, ScreenStatusColor) qui devrait être utilisée comme couleur par défaut pour afficher l'élément d'affichage.

Si cette option est absente, la valeur par défaut est DefaultWidgetBackground.

ColShrink true|false;

Si cette option est mise à true sur chaque élément d'une colonne et qu'il n'y a pas assez d'espace horizontal, la colonne sera rétrécie autant qu'il faut pour rentrer dans l'espace disponible. Remarquez qu'une colonne peut être rétrécie même si ColShrink est false ; cela indique simplement qu'aptitude devrait essayer de réduire une colonne particulière avant les autres.

Si cette option est absente, la valeur par défaut est false (faux).

Column colonne;

Précise la colonne la plus à gauche pouvant contenir cet élément d'affichage.

Columns format;

Cette option s'applique aux éléments d'affichage Static pour lesquels l'option ColumnsCfg n'est pas configurée. Elle configure le contenu de l'affichage de la ligne d'état. C'est une chaîne de format du type décrit dans la section intitulée « Personnaliser la manière d'afficher les paquets ».

ColumnsCfg HEADER|STATUS|nom;

Cette option s'applique aux éléments d'affichage Static. Elle configure le format d'affichage de l'élément courant à la valeur d'une autre variable de configuration. Si c'est HEADER ou STATUS, les options, respectivement, Aptitude::UI::Package-Header-Format et Aptitude::UI::Package-Status-Format, sont utilisées. Sinon l'option nom est utilisée.

Si cette option est absente, la valeur de l'option Columns est utilisée pour contrôler le contenu de l'élément statique.

Height hauteur;

Précise la hauteur de l'élément d'affichage courant.

PopUpDownKey commande;

Cette option s'applique aux éléments d'affichage Description et Static.

commande est le nom d'une commande clavier (par exemple, ShowHideDescription). Quand cette séquence de touches est pressée, l'élément d'affichage est caché s'il est visible et affiché s'il est caché.

PopUpDownLinked élément;

Cette option s'applique aux éléments d'affichage Description et Static.

élément est le nom d'un élément d'affichage. Quand élément est affiché, l'élément courant sera affiché lui aussi et quand élément est caché, l'élément courant sera caché lui aussi.

Row ligne;

Précise la ligne la plus haute pouvant contenir cet élément d'affichage.

RowAlign alignement;

alignement doit être Top (haut), Bottom (bas) ou Center (centré). Si la ligne contenant l'élément d'affichage courant est plus haute que l'élément lui-même et que RowExpand est false, l'élément sera placé dans la ligne selon la valeur alignement.

Si cette option est absente, la valeur de l'option est Top.

RowExpand true|false;

Si la valeur de cette option est true (vrai), la ligne contenant l'élément d'affichage se verra allouer une partie de l'espace horizontal libre qui serait disponible.

Si cette option est absente, la valeur par défaut est false (faux).

RowShrink true|false;

Si la valeur de cette option est true sur chaque élément d'une ligne, et s'il n'y a pas assez d'espace horizontal, la ligne sera rétrécie autant qu'il faut pour rentrer dans l'espace disponible. Remarquez qu'une ligne peut être rétrécie même si RowShrink est false ; cela indique simplement qu'aptitude devrait essayer de réduire une ligne particulière avant les autres.

Si cette option est absente, la valeur par défaut est false (faux).

Visible true|false;

Si la valeur de cette option est false (faux), cet élément d'affichage sera initialement caché. Ce n'est probablement utile que combiné avec PopUpDownKey et/ou PopUpDownLinked.

Si cette option est absente, la valeur de l'option est true.

Width largeur;

Précise la largeur de l'élément d'affichage courant.