PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Forums Hébergement > Forum Serveur - Sécurité et techniques > fr.comp.os.unix > Centrer texte
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
fr.comp.os.unix Système UNIX.

Centrer texte

Réponse
 
LinkBack Outils de la discussion
Vieux 16/01/2007, 10h09   #1
Ozzii
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Centrer texte

Bonjour,

je suis sous Solaris et AIX:
Y a t'il un moyen + simple de centrer un texte que de faire de multiple
calculs (nombre de caracteres-80/2 puis rajout d'autant de blanc en
debut de ligne) ?

Merci par avance


  Réponse avec citation
Vieux 16/01/2007, 10h40   #2
Nicolas George
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Centrer texte

Ozzii wrote in message <mn.829d7d719bee6c66.67192@internet.com>:
> Y a t'il un moyen + simple de centrer un texte que de faire de multiple
> calculs (nombre de caracteres-80/2 puis rajout d'autant de blanc en
> debut de ligne) ?


Selon la situation:

\begin{center}

Ton texte.

\end{center}

ou bien:

<div style="text-align:center">

Ton texte.

</div>

Dans le dernier cas, il vaudrait mieux définir une classe particulière, et
utiliser un style global.

Il y a évidemment d'autres solutions.
  Réponse avec citation
Vieux 16/01/2007, 10h56   #3
Damien Wyart
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Centrer texte

* Ozzii <email@internet.com> in fr.comp.os.unix:
> je suis sous Solaris et AIX: Y a t'il un moyen + simple de centrer un
> texte que de faire de multiple calculs (nombre de caracteres-80/2 puis
> rajout d'autant de blanc en debut de ligne) ?


Le plus direct est sans doute la commande :center de vim, mais
évidemment, cela nécessite qu'il soit installé.

Sinon, quelques solutions perl ou awk sont données dans ce fil de
discussion :
http://groups.google.fr/group/comp.e...b1f52b5c293ab/

Ainsi que : http://www.linuxjournal.com/articles...79/2479l1.html

Certains systèmes ont également une commande center qui réalise le
centrage directement...

--
DW
  Réponse avec citation
Vieux 16/01/2007, 12h37   #4
Stephane Chazelas
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Centrer texte

2007-01-16, 11:09(+01), Ozzii:
[...]
> je suis sous Solaris et AIX:
> Y a t'il un moyen + simple de centrer un texte que de faire de multiple
> calculs (nombre de caracteres-80/2 puis rajout d'autant de blanc en
> debut de ligne) ?

[...]

command -p awk '{printf "%*s\n", 36+length/2, $0}'

n'est pas si compliqué.

Sinon:

sed -e :1 -e '/.\{72\}/b2' -e 's/.*/ & /;b1 -e :2 -e 's/ *$//'

--
Stéphane
  Réponse avec citation
Vieux 16/01/2007, 16h58   #5
ozzii
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Centrer texte

Ceci fonctionne très bien pour un fichier en entrée.
Cependant, j'aimerais faire cela dans une fonction directement dans le
script où je veux centrer le ligne. Donc je fais ceci :

function CENTRE
{
printf '%s\n' "$1"|nawk '{
printf "%*s\n", 36+length/2, $0
}'
}
LIGNE="ENTETE"
CENTRE $LIGNE

Est-ce que c'est correct ou j'ai un moyen plus simple (ou mieux car le
awk c'est pas mon fort)?
En fait j'utilise le nawk car le awk sous Solaris me fait des erreurs.

On Jan 16, 1:37 pm, Stephane Chazelas <cette.adre...@est.invalid>
wrote:
> 2007-01-16, 11:09(+01), Ozzii:
> command -p awk '{printf "%*s\n", 36+length/2, $0}'


  Réponse avec citation
Vieux 16/01/2007, 20h02   #6
Stephane Chazelas
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Centrer texte

2007-01-16, 08:58(-08), ozzii:
> Ceci fonctionne très bien pour un fichier en entrée.
> Cependant, j'aimerais faire cela dans une fonction directement dans le
> script où je veux centrer le ligne. Donc je fais ceci :
>
> function CENTRE
> {
> printf '%s\n' "$1"|nawk '{
> printf "%*s\n", 36+length/2, $0
> }'
> }
> LIGNE="ENTETE"
> CENTRE $LIGNE
>
> Est-ce que c'est correct ou j'ai un moyen plus simple (ou mieux car le
> awk c'est pas mon fort)?
> En fait j'utilise le nawk car le awk sous Solaris me fait des erreurs.

[...]

Pourquoi utiliser la syntaxe ksh des fonctions?

centre() {
for i do
printf '%*s\n' "$(( ($#i + ${COLUMNS:-80} - 8) / 2))" "$i"
done
}

centre a aa aaa aaaa

--
Stéphane
  Réponse avec citation
Vieux 17/01/2007, 14h39   #7
ozzii
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: Centrer texte

car comme j'ai 2 système (Solaris et AIX), c'est + simple. De + j'ai
appris tout seul le script (pas parfaitement) en regardant des choses
existantes.

Merci pour la commande.

On Jan 16, 9:02 pm, Stephane Chazelas <cette.adre...@est.invalid>
wrote:
> 2007-01-16, 08:58(-08), ozzii:
>
> > Ceci fonctionne très bien pour un fichier en entrée.
> > Cependant, j'aimerais faire cela dans une fonction directement dans le
> > script où je veux centrer le ligne. Donc je fais ceci :

>
> > function CENTRE
> > {
> > printf '%s\n' "$1"|nawk '{
> > printf "%*s\n", 36+length/2, $0
> > }'
> > }
> > LIGNE="ENTETE"
> > CENTRE $LIGNE

>
> > Est-ce que c'est correct ou j'ai un moyen plus simple (ou mieux car le
> > awk c'est pas mon fort)?
> > En fait j'utilise le nawk car le awk sous Solaris me fait des erreurs.[....]

>
> Pourquoi utiliser la syntaxe ksh des fonctions?
>
> centre() {
> for i do
> printf '%*s\n' "$(( ($#i + ${COLUMNS:-80} - 8) / 2))" "$i"
> done
>
> }centre a aa aaa aaaa
>
> --
> Stéphane


  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 19h36.


Édité par : vBulletin® version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières ©2000-2008
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 0,13201 seconds with 15 queries