[Résolu] Unité, SIunits et commande

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

[Résolu] Unité, SIunits et commande

Messagepar pavel_vikanov » Mercredi 15 Septembre 2010, 09:55

Bonjour à tous,

Cela fait un p'tit moment que je n'ai pas eu besoin de votre aide avisée, aujourd'hui, je pêche !!! :mrgreen:
J'ai découvert, avec grand bonheur, le package SIunits mais, il ne me suffit déjà plus !! Pourtant je ne l'utilise que depuis 20 minutes...
Je cherche à mettre en commande les unités que j'utiliserai le plus régulièrement pour éviter de retaper à chaque fois les fastidieux \nano\gram.\kilo\reciprocal\gram et compagnie.

Dans l'idée, je ne dois pas être très loin, mais ça ne fonctionne pas :

Code: Tout sélectionner
\usepackage[squaren,Gray, cdot]{SIunits}
\newcommand{kgt}[1]{\kilo\gram.\reciprocal\tonne}


Pour que ça fasse directement la conversion quand je tape dans mon texte :

Code: Tout sélectionner
\unit{2}{\kgt}


Quelqu'un aurait-il une idée ?

Merci d'avance !
Dernière édition par pavel_vikanov le Mercredi 15 Septembre 2010, 10:01, édité 1 fois.
Il vaut mieux être saoul que con, ça dure moins longtemps.
pavel_vikanov
Kilo-utilisateur
 
Messages: 141
Inscription: Mercredi 09 Décembre 2009, 13:17
Localisation: Aix en Provence
Statut actuel: Post-bac | Doctorat

Publicité

Re: unité, SIunits et commande

Messagepar pavel_vikanov » Mercredi 15 Septembre 2010, 09:56

PS : j'ai mis ce [1] parce que j'ai trouvé un exemple comme cela mais je ne sais même pas à quoi il correspond !!
Il vaut mieux être saoul que con, ça dure moins longtemps.
pavel_vikanov
Kilo-utilisateur
 
Messages: 141
Inscription: Mercredi 09 Décembre 2009, 13:17
Localisation: Aix en Provence
Statut actuel: Post-bac | Doctorat

Re: unité, SIunits et commande

Messagepar pavel_vikanov » Mercredi 15 Septembre 2010, 10:00

Bon, j'annule mon post, je viens de trouver...

Code: Tout sélectionner
\usepackage[squaren,Gray, cdot]{SIunits}
\newcommand{\kgt}{\kilo\gram.\reciprocal\tonne}



Code: Tout sélectionner
\unit{2}{\kgt}
Il vaut mieux être saoul que con, ça dure moins longtemps.
pavel_vikanov
Kilo-utilisateur
 
Messages: 141
Inscription: Mercredi 09 Décembre 2009, 13:17
Localisation: Aix en Provence
Statut actuel: Post-bac | Doctorat

Re: [résolu] unité, SIunits et commande

Messagepar jcs » Mercredi 15 Septembre 2010, 10:08

bonjour
je ne suis pas un spécialiste mais je pense que
le [1] correspond au nombre d'arguments que doit recevoir une macro
pavel_vikanov a écrit:\usepackage[squaren,Gray, cdot]{SIunits}
\newcommand{\kgt}{\kilo\gram.\reciprocal\tonne

il me semble que le point après gram est superflu même nuisible
jcs
Téra-utilisateur
 
Messages: 1356
Inscription: Lundi 24 Novembre 2008, 22:17
Statut actuel: Actif et salarié | Enseignant

Re: [résolu] unité, SIunits et commande

Messagepar pavel_vikanov » Mercredi 15 Septembre 2010, 10:17

Ben le "." est attribué à un "\cdot" dans le préambule, pour le moment je ne rencontre pas de difficultés avec !
Il vaut mieux être saoul que con, ça dure moins longtemps.
pavel_vikanov
Kilo-utilisateur
 
Messages: 141
Inscription: Mercredi 09 Décembre 2009, 13:17
Localisation: Aix en Provence
Statut actuel: Post-bac | Doctorat

Re: [Résolu] Unité, SIunits et commande

Messagepar Romain Janvier » Mercredi 15 Septembre 2010, 11:55

Perso, je fais comme cela:

Code: Tout sélectionner
\newcommand\m[1]{\SI{#1}{\metre}}
\newcommand\cm[1]{\SI{#1}{\centi\metre}}
\newcommand\dm[1]{\SI{#1}{\deci\metre}}
\newcommand\km[1]{\SI{#1}{\kilo\metre}}
\newcommand\CM{\si{\centi\metre}}
\newcommand\M{\si{\metre}}
\newcommand\MM{\si{\milli\metre}}


Ensuite si on veut taper 12 cm, on fait:
Code: Tout sélectionner
\cm{12}


Et si on veut utlilser l'unité dans une phrase, on tape:
Code: Tout sélectionner
Bla bla {\CM} bla bla.


Il faut bien mettre les accolades pour avoir les espaces comme il faut.
Romain Janvier
Kilo-utilisateur
 
Messages: 146
Inscription: Lundi 23 Août 2010, 13:57
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar Francky » Mercredi 15 Septembre 2010, 22:35

Moi, je préfère le package siunitx qui semble avoir un bel avenir.
Et comme je n'aime pas les commandes persos (j'en utilise le moins possible),

je tape
Code: Tout sélectionner
$\SI{12}{\centi\metre}$

pour avoir "12cm".
C'est vrai que c'est un peu plus long, mais ça passe très bien.
Linux Mint | TeXLive - TexMaker - asymptote | Python3 & C - Geany - Project Euler - SPOJ
Entia non sunt multiplicanda praeter necessitatem
Francky
Giga-utilisateur
 
Messages: 683
Inscription: Dimanche 11 Avril 2010, 13:01
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar projetmbc » Jeudi 16 Septembre 2010, 08:19

Quel est l'intérêt de ces packages ? Taper \SI{12}{\centi\metre} pour obtenir 12cm me semble trop verbeux. Maintenant si d'autres fonctionnalités que de ne pas avoir d'espace entre le 12 et cm justifie d'utiliser ces packages, j'aimerais savoir lesquelles.
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar pavel_vikanov » Jeudi 16 Septembre 2010, 09:06

Quand tu fais de la chimie et que tu dois parler de Bq.kg-1, mol.l-1.s-1, ng.l-1, etc etc..., en gros, que tu te tapes à peu près toutes les unités, sous unités, exposants, les plus barbares à écrire qui soit, que ces unités tu les utilises environ toutes les phrases, je t'assure qu'avoir des "raccourcis" pour les rentrer est un gain de temps phénoménal. En tout cas je le vois comme ça.
Il vaut mieux être saoul que con, ça dure moins longtemps.
pavel_vikanov
Kilo-utilisateur
 
Messages: 141
Inscription: Mercredi 09 Décembre 2009, 13:17
Localisation: Aix en Provence
Statut actuel: Post-bac | Doctorat

Re: [Résolu] Unité, SIunits et commande

Messagepar rebouxo » Jeudi 16 Septembre 2010, 12:42

Je confirme siunitx est l'extension qu'il faut utiliser pour gérer les unités. Elle reprend complète les autres extensions qui permettent de gérer les unités.
Elle permet aussi de définir des raccourcis pour les unités utilisées fréquemment.
Quand au raccourcis, ma préférence ira plutôt aux raccourcis dans l'éditeur, car je trouve que c'est bien plus lisible. Mais, car il y a un mais, dans ton exemple, des commandes LaTeX seront plus efficace : cela te permettra de ne modifier que la définition des commandes et non tout ton document.
Il y a donc des avantages et des inconvénients dans les deux méthodes.
Tiens cela me fait penser que je pourrais faire des raccourcis clavier avec emacs pour les unités classiques:
C-c C-p k -> \kilo
C-c C-u h -> \hour
C-c C-u H -> \hertz

A rajouter sur ma to do list.

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6958
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar Francky » Jeudi 16 Septembre 2010, 19:44

projetmbc a écrit:Quel est l'intérêt de ces packages ? Taper \SI{12}{\centi\metre} pour obtenir 12cm me semble trop verbeux. Maintenant si d'autres fonctionnalités que de ne pas avoir d'espace entre le 12 et cm justifie d'utiliser ces packages, j'aimerais savoir lesquelles.


Je le fais pour donner du sens au code.
Ainsi, si je souhaite réimprimer mon texte avec une autre fonte pour les unités,
ou une couleur rose bonbon, ou une autre fantaisie,
je peut tout gérer dans le préambule.

De manière générale, je tente d'écrire tout ce qui est en mode maths en international,
et les aménagements locaux se font dans le préambule. Il n'y a donc strictement rien à traduire dans le mode maths.
Le mode texte seul serait à traduire.

Je dis ça sans avoir la prétention de faire traduire mes œuvres, c'est juste un style que je m'impose.
Évidement, il existe des "snippets" ou autre astuce pour écrire vite tout nombre avec unité.
Linux Mint | TeXLive - TexMaker - asymptote | Python3 & C - Geany - Project Euler - SPOJ
Entia non sunt multiplicanda praeter necessitatem
Francky
Giga-utilisateur
 
Messages: 683
Inscription: Dimanche 11 Avril 2010, 13:01
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar Romain Janvier » Vendredi 17 Septembre 2010, 19:14

Du coup je comprends mal ta réponse. Pour avoir du code plus flexible, il vaut mieux avoir recours aux commandes persos. Comme ca, si un jour je largue siuntix, je n'ai qu'à remplacer mes macros dans mon preambule. Je pourrai par exemple prendre:
Code: Tout sélectionner
\newcommand\cm[1]{$#1\text{~cm}$}

Alors que toi, tu devras tout reprendre. Bon forcement, avec un petit script sed, ca se fait, mais c'est moins pratique. Après il est vrai que l'abus de commandes persos peut rendre le code illisible, mais il faut faire l'effort de donner des noms comprehensibles (ce que je ne fais pas toujours).
Romain Janvier
Kilo-utilisateur
 
Messages: 146
Inscription: Lundi 23 Août 2010, 13:57
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar rebouxo » Vendredi 17 Septembre 2010, 22:29

Oui, je ne suis pas certain qu'on ne puisse pas le faire avec les commandes de siuntix. Comme tu écris \SI{nb}{unité}, il suffit de récrire une macro. Dans ce cas là, utiliser siunitx revient à utiliser des commandes personnelles (en mieux écrite).

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6958
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar Romain Janvier » Vendredi 17 Septembre 2010, 22:39

C'est exactement ce que je fais. J'utilise siunitx, mais avec des macros pour me simplifier la vie. Mon message precedent etait juste pour indiquer mon desaccord avec Francky. En meme temps, quelqu'un qui vient nous parler de lisibilité de code et qui fait des programmes python sur une seule ligne :mrgreen: (Cherchez pas, c'est une private-joke entre nous).
Romain Janvier
Kilo-utilisateur
 
Messages: 146
Inscription: Lundi 23 Août 2010, 13:57
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar projetmbc » Samedi 18 Septembre 2010, 02:27

Je ne parlais pas de lisibilité mais d'efficacité avec un code un peu long à taper. Si on peut faire par exemple des conversions d'unités, je comprendrais que l'on puisse utiliser ce package. C'est juste une remarque.

PS : j'ai abandonné mon projet Python depuis bien longtemps.
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar Romain Janvier » Samedi 18 Septembre 2010, 09:30

Le programme python en une ligne, c'etait pour Francky.

Et si je devais compter le n ombre de projet en python que j'ai abandonné, il faudrait inventer une nouvelle unite pour siunitx.
Romain Janvier
Kilo-utilisateur
 
Messages: 146
Inscription: Lundi 23 Août 2010, 13:57
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar projetmbc » Samedi 18 Septembre 2010, 11:02

Oups, au temps pour moi. :shock:
projetmbc
Péta-utilisateur
 
Messages: 1897
Inscription: Samedi 29 Décembre 2007, 00:58
Statut actuel: Actif et salarié | Enseignant

Re: [Résolu] Unité, SIunits et commande

Messagepar Francky » Samedi 18 Septembre 2010, 14:33

[mode HS]
Pour que tout le monde puisse comprendre la private joke citée plus haut.
Faire un programme qui donne le nombre de partitions d'un entier en somme de k entiers.
ex : 5=0+0+0+5, 5=0+0+1+4, 5=0+0+2+3, 5=0+1+1+3, 5=0+1+2+2, 5=1+1+1+2
il y a 6 partitions de 5 en somme de 4 entiers.

Pas si facile, pour le débutant total que j'étais (une après la découverte du mot Python,
lors d'un stage où j'ai d'ailleurs rencontré Romain, qui est coupable de m'avoir fait découvrir LaTeX ...)

Histoire de rigoler, j'ai condensé mon programme en une seule ligne. Fonctionnel.
À vous de jouer, objectif 1 ligne et nombre minimal de caractères !!!

Depuis j'ai fait très peu de Python, mais ça devrait revenir, je crois à fond en SageMaths ...
[mode HS OFF]


Vive SiUnitX !
Linux Mint | TeXLive - TexMaker - asymptote | Python3 & C - Geany - Project Euler - SPOJ
Entia non sunt multiplicanda praeter necessitatem
Francky
Giga-utilisateur
 
Messages: 683
Inscription: Dimanche 11 Avril 2010, 13:01
Statut actuel: Actif et salarié | Enseignant


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Grapeshot [Crawler], MSN [Bot] et 15 invités