/usr/share/doc/HOWTO/fr-html/TclTk-HOWTO.html is in doc-linux-fr-html 2013.01-3ubuntu1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for HTML5 for Linux version 5.2.0">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.72">
<title>HOWTO Tcl et Tk sous Linux (Linux Tcl and Tk HOWTO)</title>
</head>
<body>
<h1>HOWTO Tcl et Tk sous Linux <em>(Linux Tcl and Tk
HOWTO)</em></h1>
<h2>Luca Rossetti <a href=
"mailto:lukaros@tin.it">lukaros@tin.it</a>, traduit par Carine
Bournez, <a href=
"mailto:cbournez@if.insa-lyon.fr">cbournez@if.insa-lyon.fr</a></h2>
v0.2, 07 November 1998
<hr>
<em>Ce document décrit l'approche de Linux à Tcl, un langage de
script. C'est un langage interprété, facile à apprendre, qui
utilise l'absence de typage pour permettre un niveau de
programmation plus élevé et le développement rapide d'applications.
La boîte à outils Tk est un environnement de programmation pour
créer des interfaces graphiques (Graphical User Interfaces, GUI)
sous le système X-Window. Leurs fonctionnalités incluent la
possibilité d'extension et l'inclusion dans une autre application,
le développement rapide et la facilité d'utilisation.
Conjointement, Tcl et Tk apportent de grands bénéfices à la fois au
développeur et à l'utilisateur. Les interfaces basées sur Tk ont
tendance à être plus personnalisables et dynamiques que celles
construites avec une boîte à outils reposant sur du C ou C++. Tk
reproduit l'allure et les sensations de Motif. Un grand nombre
d'applications intéressantes sous X sont entièrement implémentées
en Tk, sans aucune nouvelle commande spécifique à l'application
elle-même.</em>
<hr>
<h2><a name="introduction"></a> <a name="s1">1.
Introduction</a></h2>
<p>Ceci est le Linux Tcl et Tk HOWTO. Il vise, en tant que
référence pour Linux, à couvrir tout ce qu'il est nécessaire de
connaître concernant l'installation, la configuration, ainsi qu'une
introduction au développement sous Tcl et Tk. Il présente d'abord
un historique, puis aborde les avantages et inconvénients de Tcl et
Tk sous linux, et enfin des références à d'autres sources
d'information sur une large étendue de sujets liés à ce langage de
script simple mais puissant.</p>
<p>Si vous avez déjà recompilé votre noyau Linux sous X en
utilisant la commande</p>
<hr>
<pre>
make xconfig
</pre>
<hr>
<p>vous vous être certainement trouvé face à la puissance de ce
langage de script.</p>
<p>Après l'exécution de la première étape de la recompilation du
noyau, un script appelé kconfig.tk est exécuté via wish
(l'interpréteur Tcl). La fenêtre de configuration du noyau Linux
apparaît. Au lieu de répondre à des questions en série, cet
utilitaire de configuration basé sur X vous permet d'utiliser des
cases à cocher pour sélectionner les options du noyau que vous
souhaitez activer.</p>
<p>Le système conserve les options de votre dernière configuration
afin qu'à chaque nouvelle exécution vous n'ayiez à
ajouter/supprimer quelques sélections au lieu de reprendre tout
l'ensemble des options. De plus, vous pouvez parcourir l'ensemble
(ou seulement une partie) des options du noyau dans l'ordre que
vous préférez. Après cette étape simplifiée, vous pouvez recompiler
votre noyau, en suivant la manière traditionnelle.</p>
<p>Il existe en fait un autre exemple bien connu. Avez-vous déjà
utilisé « printtool » ? (Printer Config Tool (C)
Copyright 1994 by <a href="http://www.redhat.com">Red Hat
Software</a> - author: Michael Callahan). Si vous avez installé une
distribution Red Hat, vous avez agréablement réussi à l'utiliser
pour mettre en place des services d'impression. Eh bien l'interface
de printtool est principalement un script Tcl/Tk.</p>
<p>Pour ceux qui ne connaissent pas Red Hat, laissez-moi vous dire
comment vous pouvez configurer facilement vos imprimantes, juste en
remplissant quelques champs de texte et en cochant quelques
cases.</p>
<p>Le programme lui-même se charge de mettre en place les services
en créant le répertoire de spool, écrit le fichier /etc/printcap et
le filtre de l'imprimante, relance lpd et teste votre filtre avec
des pages en ascii ou en postscript. Il permet de manipuler les
options de ghostscript (c'est-à-dire choisir jusqu'à 8 pages par
page en sortie et régler les marges), propose une aide en ligne et
plein d'autres caractéristiques.</p>
<p>Quelle est la différence avec une autre implémentation de
service d'impression ?</p>
<p>Tout est réalisé en utilisant Tcl/Tk comme une
« colle » entre applications consolidées et en opérant
avec les fichiers de configurations standards de Linux, dans un
mode fenêtré, visuel et interactif, sous X-Window. Aucune nouvelle
commande spécifique à l'application n'a été écrite.</p>
<h2><a name="ss1.1">1.1 But de ce document</a></h2>
<p>Actuellement, le but de ce document est de fournir des
références de départ aux utilisateurs de Linux ; dans les versions
futures, j'essaierai d'ajouter un petit « tutoriel de
programmation ». J'insiste : ce n'est pas (et ne veut pas
remplacer) un manuel utilisateur complet ni une référence pour le
développement et la programmation en Tcl et Tk - c'est juste un
point de départ pour les utilisateurs de Linux.</p>
<p>La conception que l'auteur se fait d'un manuel de référence
coïncide avec la définition des pages man et de nombreuses
personnes apprennent Tcl/Tk à partir de ces sources brutes
d'information. Ces fichiers font partie de la distribution du code
source et sont installés sur votre machine Linux. Vous pourrez
accéder aux pages de manuel de Tcl/Tk par la commande man.</p>
<p>Beaucoup de tutoriels de programmation complets et structurés
ont été écrits dans le but de laisser l'utilisateur débutant
trafiquer avec Tcl/Tk ; des tonnes d'autres données sont
disponibles sur Internet. M'inspirant de la philosophie de Tcl/Tk,
je ne vais pas réinventer la roue, mais essayer de cimenter cette
énorme masse d'information déjà disponible.</p>
<p>Je vous suggère de jeter un oeil aux autres documents cités dans
<a href="#references">la section Références</a> pour savoir où
trouver des informations spécifiques à propos de Tcl/Tk.</p>
<h2><a name="ss1.2">1.2 Ce qu'il faut savoir avant de
poursuivre</a></h2>
<p>Pour comprendre le B.A.BA de Tcl/Tk, vous n'avez pas besoin
d'être un gourou de la programmation, la syntaxe des commandes est
très simple. Basiquement, vous avez besoin de bien
connaître :</p>
<ul>
<li>des concepts simples de programmation ;</li>
<li>l'utilisation de commandes et d'utilitaires très usuels d'unix
;</li>
<li>l'accès à Internet ;</li>
<li>l'utilisation de ftp.</li>
</ul>
<h2><a name="ss1.3">1.3 Nouvelles versions de ce document</a></h2>
<p>Les versions plus récentes de ce document seront téléchargées
sur le site ftp : <a href=
"ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/">ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/</a>
et seront disponibles sur tous les autres miroirs.</p>
<p>Les versions hypertexte et autres de ceci, ainsi que les autres
HOWTOs de Linux sont principalement disponibles à <a href=
"http://sunsite.unc.edu/LDP/">http://sunsite.unc.edu/LDP/</a> et
<a href="http://www.linux-howto.com">http://www.linux-howto.com</a>
et sur beaucoup d'autres sites web miroirs.</p>
<p>(NDT : En France, vous pouvez utiliser le site suivant pour
le document original : <a href=
"ftp://ftp.lip6.fr/pub/linux/sunsite/docs/HOWTO/">Miroir de
Sunsite</a> ou, mieux, la version française :</p>
<p><a href="ftp://ftp.lip6.fr/pub/linux/french/HOWTO/">Archive des
HOWTO français sur LIP6</a></p>
<p><a href="http://www.freenix.org/unix/linux/HOWTO/">Archive des
HOWTO français chez Freenix</a>)</p>
<p>J'essaierai d'ajouter à <a href=
"http://space.tin.it/computer/tlqhr/">ma page Web</a> la version la
plus récente en html et en sgml. La plupart des distributions de
Linux sur CD-ROM incluent les HOWTOs, souvent dans un
sous-répertoire de /usr/doc/ et vous pouvez également en acheter
des copies imprimées chez certains distributeurs.</p>
<p>Parfois, les HOWTOs disponibles sur les CD-ROMs, sites ftp ou en
copie imprimée ne sont plus d'actualité. Si la date y figurant est
dépassée de plus de 6 mois, il existe probablement une version plus
récente sur Internet.</p>
<p>Si vous faites une traduction de ce document dans une autre
langue, envoyez-moi un mot et j'en inclurai une référence ici.</p>
<h2><a name="ss1.4">1.4 Historique des révisions</a></h2>
<ul>
<li><b>Version 0.1</b> : 28 Octobre 1998 - première
version ;</li>
<li><b>Version 0.2</b> : 07 Novembre 1998 - profonds
changements de style et rajeunissement.</li>
</ul>
<h2><a name="ss1.5">1.5 Retours et commentaires</a></h2>
<p>Je compte sur vous, lecteurs, pour rendre ce HOWTO utile. Si
vous avez des suggestions, corrections ou commentaires, s'il vous
plaît envoyez-les moi ( <a href="mailto:lukaros@tin.it">Luca
Rossetti</a>), et j'essaierai de les inclure dans la version
suivante.</p>
<p>Si des liens mentionnés dans ce document venaient à être
indisponibles ou déplacés, merci de m'en informer tout de suite
pour que je puisse mettre à jour ou changer le lien.</p>
<p>J'ai la volonté de répondre aux questions d'ordre général à
propos de Tcl/Tk et de Linux du mieux que je peux. Avant tout,
lisez s'il vous plaît toutes les informations contenues dans ce
HOWTO, et envoyez-moi un message détaillé sur le problème
rencontré.</p>
<p>Si vous publiez ce document sur un CD-ROM ou sous forme papier,
j'apprécierais d'en avoir une copie. Envoyez-moi un e-mail et je
vous donnerai mon adresse postale.</p>
<p>Dans plusieurs sections je mentionne des sociétés de publication
ou des URLs de sites commerciaux. Je ne travaille vraiment pas pour
ces gens-là.</p>
<h2><a name="ss1.6">1.6 Crédits</a></h2>
<p>La plupart des informations de ce HOWTO proviennent du livre du
Dr. Ousterhout : <a href=
"http://www.scriptics.com">Scriptics</a> et de la <a href=
"http://www.tclfaq.wservice.com/tcl-faq/">FAQ de comp.lang.tcl</a>
de Larry W. Virden.</p>
<p>Je souhaiterais remercier le <a href=
"http://www.pluto.linux.it/">PLUTO</a>, Groupe Italien des
Utilisateurs de Linux, et l'ensemble des volontaires de l' <a href=
"http://www.pluto.linux.it/ildp/">ILDP</a> (Italian Linux
Documentation Project), spécialement Eugenia Franzoni et Giovanni
Bortolozzo pour leurs commentaires.</p>
<h2><a name="ss1.7">1.7 Politique de diffusion</a></h2>
<p>Ce document est Copyright 1998 par <a href=
"mailto:lukaros@tin.it">Luca Rossetti</a>.</p>
<p>Ce document est diffusé dans l'espoir qu'il soit utile au
lecteur : bien sûr il est considéré sans garantie ; sans
même la garantie sous-jacente de commercialisabilité ou
d'adéquation à un but particulier. Ce HOWTO est une documentation
libre ; vous pouvez le redistribuer et/ou le modifier, selon
les termes du <a href=
"http://sunsite.unc.edu/LDP/LDP-COPYRIGHT.html">Copyright LDP</a>.
Veuillez lire le <a href=
"http://sunsite.unc.edu/LDP/LDP-Manifesto.html">Manifeste du
LDP</a> pour plus de détails.</p>
<h2><a name="s2">2. Histoire de Tcl/Tk</a></h2>
<p>Tcl/Tk a été créé par le <a href=
"mailto:ouster@scriptics.com">Dr. John Ousterhout</a> (prononcer
« Oh'-stir-howt ») alors qu'il enseignait à l'université
de Berkeley, en Californie. En fait, il a commencé à l'implémenter
à son retour à Berkeley au printemps 1988 ; dès l'été, il
était utilisé dans quelques applications internes, mais Tk
n'existait pas encore. Lisez l'histoire de Tcl/Tk écrite par son
auteur à <a href=
"http://www.scriptics.com/scripting/tclHistory.html">http://www.scriptics.com/scripting/tclHistory.html</a>.</p>
<h2><a name="ss2.1">2.1 Chronologie</a></h2>
<ul>
<li><b>1989 :</b> premières diffusions externes de Tcl et
début de l'implémentation de Tk ;</li>
<li><b>1991 :</b> première version de Tk ;</li>
<li><b>1994 :</b> le Dr. Ousterhout est employé par Sun
Microsystems, Inc. : il se distingue comme ingénieur et dirige
le projet Tcl.</li>
<li><b>Avril/Mai 1997 :</b> Le groupe de recherche responsable
chez Sun du développement de Tcl est déplacé dans une filiale de
Sun appelée SunScript. Cependant les choses ont changé à nouveau
rapidement. Vous pouvez lire les détails de cette évolution en
choisissant "SunScript_story" à l'URL : <a href=
"http://starbase.neosoft.com/%7Eclaird/comp.lang.tcl/">SunScript-Story</a> ;</li>
<li><b>Août 1997 :</b> un consortium Tcl est créé. Vous pouvez
en lire davantage, notamment comment en faire partie, qui est
actuellement dans le conseil d'administration, etc. en visitant
<a href="http://www.tclconsortium.org/">Tcl
Consortium</a> ;</li>
<li><b>Février 1998 :</b> le Dr. Ousterhout quitte Sun pour
fonder <a href="http://www.scriptics.com/">Scriptics</a>, une
entreprise dédiée aux outils, applications et services d'écriture
de scripts. Selon <a href=
"http://www.scriptics.com/about/news/qa.html">http://www.scriptics.com/about/news/qa.html</a>,
le coeur de Tcl/Tk reste libre, avec l'équipe de Sun qui continue
actuellement son travail sur Tcl/Tk 8.1. Après la prochaine
version, il est prévu que ce travail sur la base de Tcl/Tk migre de
Sun à Scriptics, et que l'équipe de Sun se concentre davantage sur
les extensions et applications de Tcl.</li>
<li><b>23 Avril 1998 :</b> L' <a href=
"http://www.acm.org/">ACM</a> (Association for Computing Machinery)
décerne le prix du logiciel 1997 (Software System Award) à John
Ousterhout et Scriptics ( <a href=
"http://www.acm.org/awards/">http://www.acm.org/awards/</a>). Cette
récompense est attribuée à une institution ou une personne reconnue
pour avoir développé un logiciel qui a eu une influence durable,
remarquée par des contributions à des concepts ou par un plébiscite
commercial, ou les deux.</li>
</ul>
<h2><a name="s3">3. Qu'est-ce que Tcl/Tk ?</a></h2>
<h2><a name="ss3.1">3.1 Qu'est-ce que Tcl ?</a></h2>
<p>Tcl (prononcer « tickeul ») est l'acronyme de "Tool
Command Language" (langage de commandes-outils). Tcl est en fait
divisé en deux parties : un langage et une bibliothèque.</p>
<p>Tcl est un langage de programmation simple, dont le but est de
passer des commandes à des programmes interactifs tels que des
éditeurs de texte, des débogueurs et des interpréteurs shell. Il
possède une syntaxe simple et il est lui-même programmable : les
utilisateurs de Tcl peuvent en effet écrire des procédures pour
créer des commandes plus puissantes que celles que fournies par
l'ensemble pré-construit.</p>
<p>D'autre part, Tcl est un paquetage bibliothèque intégrable dans
des applications. La bibliothèque Tcl est constituée d'un analyseur
syntaxique du langage Tcl, de routines implémentant les commandes
pré-définies de Tcl, et de procédures permettant à chaque
application d'ajouter à Tcl des commandes additionnelles qui lui
sont spécifiques. Le programme applicatif génère des commandes Tcl
et les passe à l'analyseur syntaxique de Tcl pour l'exécution.</p>
<p>Les commandes peuvent être générées en lisant des caractères sur
une source en entrée ou bien en associant des chaînes de caractères
avec des éléments de l'interface utilisateur de l'application,
comme des boutons, des entrées de menus, ou d'autres widgets
(NdT : widget = Window Gadget, élément de fenêtre). Lorsque la
bibliothèque Tcl reçoit une commande, elle analyse les champs qui
la composent et exécute directement les commandes pré-définies.</p>
<p>Pour les commandes implémentées par l'application, Tcl rappelle
l'application pour exécuter les commandes. Dans bien des cas, les
commandes lanceront des appels récursifs à l'interpréteur Tcl en
passant des chaînes optionnelles à exécuter (en fait les procédures
et commandes de bouclage conditionnel fonctionnent toutes de cette
manière). Un programme d'application peut tirer de nombreux
avantages de l'utilisation de Tcl comme langage de
commande :</p>
<ul>
<li>Tcl fournit une syntaxe standard : une fois que les
utilisateurs connaissent Tcl, ils seront capables de passer
facilement des commandes à n'importe quelle application basée sur
Tcl.</li>
<li>Tcl parvient à une bonne « programmabilité ». Tout ce
qu'une application nécessite est l'implémentation de quelques
commandes spécifiques de bas niveau. Tcl fournit de nombreuses
commandes utilitaires et une interface générique de programmation
pour construire des procédures de commande complexes. En utilisant
Tcl, les applications ne nécessitent pas de réimplémentation de ces
caractéristiques.</li>
<li>Les extensions à Tcl, telles que la boîte à outils Tk,
fournissent des mécanismes pour la communication entre
applications, en envoyant des commandes Tcl dans un sens et dans
l'autre. La structure commune du langage Tcl rend plus aisée la
communication entre applications.</li>
</ul>
<p>Il est important de noter que Tcl a été conçu en pensant que le
programmeur devrait en fait utiliser deux langages ou plus
lorsqu'il construit un système logiciel de taille
conséquente : un pour manipuler des structures de données
internes complexes, et là où la performance est cruciale, et un
autre, comme Tcl, pour écrire de très courts scripts qui assemblent
les autres morceaux, en fournissant des possibilités d'extensions à
l'utilisateur.</p>
<p>Pour celui qui écrit des scripts Tcl, la facilité
d'apprentissage, de programmation et d'assemblage, sont plus
importantes que les performances ou les possibilités de structures
de données complexes et d'algorithmes.</p>
<p>Tcl a été construit pour être aisément inclus dans un langage de
plus bas niveau lorsqu'on rencontre des tâches pour lesquelles un
langage de plus bas niveau est plus adéquat. Ainsi, les
fonctionnalités de base peuvent rester petites et chacun a
seulement besoin d'ajouter les morceaux qu'il veut ou doit
avoir.</p>
<p>Une réponse à la question « Qu'est-ce que Tcl ? raquo;
se trouve à <a href=
"http://www.NeoSoft.com/tcl/whatistcl.html">http://www.NeoSoft.com/tcl/whatistcl.html</a>.</p>
<h2><a name="ss3.2">3.2 Qu'est-ce que Tk ?</a></h2>
<p>Tk (prononcer "Tiii-kay") est une extension de Tcl qui apporte
au programmeur une interface avec le système de fenêtrage X11. Il
est à noter que Tk a été compilé avec succès sous X11 R4, X11 R5,
X11 R6, ainsi que les environnements NeWS/X11 de Sun.</p>
<p>De nombreux utilisateurs rencontreront Tcl/Tk à travers la
commande "wish". Wish est un shell de fenêtrage simple qui permet à
l'utilisateur d'écrire des applications Tcl/Tk dans un
environnement de prototypage.</p>
<p>Jusqu'à présent, Tcl/Tk ne supporte pas de fontes pour les
langues japonaise, chinoise, coréenne,...</p>
<h2><a name="ss3.3">3.3 Extensions</a></h2>
<p>Comme Tcl est facile à étendre, beaucoup essaient de partager
des extensions, notamment le populaire itcl, <a href=
"http://www.tcltk.com/itcl/">[incr Tcl]</a>, ObjectTcl, TclX,
<a href="http://tix.mne.com/">Tix</a> , et <a href=
"http://www.tcltk.com/blt/">BLT</a>.</p>
<p>Ces extensions nécessitent bien évidemment un interpréteur Tcl
étendu. De plus, de nombreuses applications Tcl libres nécessitent
une extension particulière de Tcl pour fonctionner.</p>
<p>Une des extensions les plus populaires est certainement <a href=
"http://expect.nist.gov">Expect</a>. Elle permet d'avoir une
interface sympathique pour la plupart des commandes UNIX basiques
en ligne, telles que ftp, telnet, rlogin, passwd, fsck, etc.</p>
<p>Une liste complète des extensions de Tcl/Tk peut être trouvée à
l'URL <a href=
"http://www.scriptics.com/resource/software/extensions/">http://www.scriptics.com/resource/software/extensions/</a>.</p>
<h2><a name="ss3.4">3.4 Plates-formes supportées</a></h2>
<p>Cette section contient des informations à propos de Tcl 8.0 et
Tk 8.0, versions les plus récentes de Tcl/Tk. Elles sont sorties le
18 août 1998 et le patch le plus récent (8.0.3) date du 3 septembre
1998.</p>
<p>Quand vous télédéchargez Tcl et Tk, vous récupérez deux
programmes, wish et tclsh, les bibliothèques supportant les
scripts, et la documentation en ligne. Ces programmes supportent
des plates-formes génériques de développement d'applications en
Tcl. Wish inclut la boîte à outils pour interface graphique
utilisateur Tk. Les paquetages sont prêts à être utilisés après
l'installation.</p>
<p>Tcl 8.0 et Tk 8.0 fonctionnent sur la plupart des versions des
systèmes d'exploitation suivants :</p>
<ul>
<li>Windows 95</li>
<li>Windows NT</li>
<li>Solaris et SunOS</li>
<li>Linux</li>
<li>HP-UX</li>
<li>SGI</li>
<li>IRIX</li>
<li>Digital Unix</li>
<li>AIX</li>
<li>SCO Unix</li>
<li>La plupart des autres systèmes d'exploitation voisins d'UNIX
pour Macintosh (68K et Power Mac)</li>
<li>Des versions pré-compilées sont disponibles pour diverses
distributions de Linux.</li>
</ul>
<h2><a name="s4">4. Installation et prise en main de Tcl et
Tk</a></h2>
<p>Les distributions récentes incluent Tcl et Tk. Des paquetages
rpm et deb de binaires pré-compilés sont disponibles pour les
distributions Red Hat, SuSE et Debian (ce qui facilite
l'installation).</p>
<p>Une installation standard d'une distribution récente inclura
Tcl/Tk puisque c'est un prérequis de nombreux utilitaires de
configuration qui tournent principalement sous X.</p>
<p>Tcl et Tk sont distribués librement sur Internet sous forme de
code source. Il n'y a pas de restrictions quant à leur utilisation,
ni de licence ou droits à payer (voir la section <a href=
"#license">termes de la licence</a> pour information complète).</p>
<p>Encore plus de scripts et d'extensions Tcl/Tk sont disponibles
librement également.</p>
<h2><a name="ss4.1">4.1 Télédéchargement des distributions de
base</a></h2>
<p>La base de Tcl/Tk se constitue des bibliothèques Tcl et Tk, plus
les applications wish et tclsh, la documentation associée, des
bibliothèques de scripts et des applications de démonstration. Le
site FTP primaire pour ces données est <a href=
"ftp://ftp.scriptics.com/pub/tcl/">ftp://ftp.scriptics.com/pub/tcl/</a>.</p>
<p>Le site primaire en HTTP est <a href=
"http://www.scriptics.com/software/download.html">http://www.scriptics.com/software/download.html</a>.</p>
<h2><a name="ss4.2">4.2 Installation</a></h2>
<p>A moins qu'elle ne soit déjà disponible en paquetages
propriétaires pour votre distribution, vous souhaiterez
télédécharger le version code source. Vous aurez besoin des sources
de Tcl comme de Tk. La procédure suivante se réfère à ce second
cas :</p>
<p>Choisissez entre le format tar et le format tar gzippé.</p>
<p>Fichiers Tar compressés</p>
<p>Sources de Tcl (tcl8.0.3.tar.Z) : fichier tar compressé
(environ 2.4 Mo). Sources de Tk (tk8.0.3.tar.Z) : fichier tar
compressé (environ 3.3 Mo).</p>
<p>Fichiers Tar gzippés</p>
<p>Sources de Tcl (tcl8.0.3.tar.gz) : fichier tar gzippé
(environ 1.5 Mo). Sources de Tk (tk8.0.3.tar.gz) : fichier tar
gzippé (environ 2.1 Mo).</p>
<p>Quand vous récupérez ces fichiers, vous obtenez un fichier
compressé tar avec un nom comme tcl8.0.3.tar.gz ou tcl8.0.3.tar.Z.
Ces fichiers sont identiques, sauf par la technique de compression
(les fichiers .gz sont généralement plus petits que les .Z).</p>
<p>Pour décompresser la distribution, lancez des commandes shell
comme celles-ci, selon la version que vous avez
récupérée :</p>
<hr>
<pre>
gunzip -c tcl8.0.3.tar.gz
</pre>
<hr>
ou
<hr>
<pre>
tar xf - zcat tcl8.0.3.tar.Z
</pre>
<hr>
ou
<hr>
<pre>
tar xf - unzip tcl80.3.zip
</pre>
<hr>
<p>Chacune de ces commandes crée un répertoire appelé tcl8.0.3, qui
contient les sources pour toutes les plates-formes, la
documentation, et les bibliothèques de script pour Tcl 8.0. Pour
compiler et installer la distribution, suivez les instructions du
fichier README dans le répertoire de la distribution. Assurez-vous
de compiler Tcl avant Tk, puisque Tk dépend d'informations de
Tcl.</p>
<h2><a name="ss4.3">4.3 L'archive de contributions</a></h2>
<p>Il existe beaucoup d'autres paquetages libres pour Tcl et Tk,
incluant des scripts écrits en Tcl et également des extensions
écrites en C ou C++. Ces paquetages comprennent des applications de
bases de données et d'accès réseau, un constructeur d'interfaces
graphiques utilisateur, le programme expect, des widgets Tk
supplémentaires, et des dizaines d'autres choses.</p>
<p>Le site primaire pour l'archive Tcl/Tk est <a href=
"ftp://ftp.neosoft.com/pub/tcl">ftp://ftp.neosoft.com/pub/tcl</a>.</p>
<h2><a name="ss4.4">4.4 Sites miroirs</a></h2>
<p>Plusieurs autres sites dans le monde sont des miroirs de tout ou
partie des données du site de base et de l'archive de
contributions ; vous trouverez peut-être plus pratique de
prendre des données sur un miroir plus proche de vous.</p>
<p>Le fichier ftp "0_mirror" à <a href=
"ftp://ftp.scriptics.com/pub/tcl/">ftp://ftp.scriptics.com/pub/tcl/</a>
donne une liste de miroirs dans votre pays.</p>
<h2><a name="ss4.5">4.5 Quelles versions utiliser ?</a></h2>
<p>Référez-vous toujours à la dernière version recommandée dans la
section « Tcl/Tk Core » de <a href=
"http://www.scriptics.com/software/download.html">Scriptics
Software Central page</a>.</p>
<p>A l'heure où j'écris, les versions recommandées sont les
dernières (Tcl 8.0.3 et Tk 8.0.3), qui sont sorties en septembre
1998. Tcl 8.0 contient un nouveau compilateur de pseudo-code qui
accélère l'exécution d'un facteur 2 à 10. Il fournit aussi des
contextes de dénomination (namespaces), des entrées/sorties
binaires et plusieurs nouvelles caractéristiques.</p>
<p>Tk 8.0 est la première version qui fournit l'allure et les
impressions naturelles sur les Macintoshes et les PCs. Tk 8.0
supporte également l'encapsulation d'applications et propose un
nouveau mécanisme de fonte portable. Tcl 8.0 et Tk 8.0 offrent tous
deux des fonctionnalités supplémentaires au modèle de sécurité
Safe-Tcl.</p>
<h2><a name="ss4.6">4.6 Où adresser des rapports de problèmes,
bugs, ou améliorations</a></h2>
<p>Utilisez <a href="news:comp.lang.tcl">news:comp.lang.tcl</a>
pour les communications publiques.</p>
<p>(NdT : le forum en langue française équivalent est <a href=
"news:fr.comp.lang.tcl">news:fr.comp.lang.tcl</a>).</p>
<p>Une alternative consiste à envoyer problèmes, suggestions, idées
nouvelles, etc. directement à l'auteur. Un email à <a href=
"mailto:ouster@scriptics.com">John Ousterhout</a> permet de le
contacter.</p>
<p>Lorsque vous rendez compte de problèmes ou de bugs, veillez à
mentionner tous les détails nécessaires à un diagnostic correct.
Basiquement, vous devez décrire votre matériel, votre système
d'exploitation et la version de Tcl/Tk utilisée, préciser si vous
avez fait des modifications ou des ajouts, et donner, si possible,
soit un petit bout de code, soit une URL vers du code mettant en
évidence le problème.</p>
<p>Si vous avez du logiciel dont vous pensez que la communauté
pourrait tirer parti (que ce soit un programme, une fonction, une
extension, ou un simple exemple), ou si vous avez un document, un
article de journal ou de magazine, une thèse, un projet, ou même
une annonce commerciale, faites-le savoir aux personnes
susceptibles d'être intéressées.</p>
<p>Il y a des responsables de FAQ pour tous ces domaines, ainsi
qu'un forum Usenet <a href=
"news:comp.lang.tcl.announce">comp.lang.tcl.announce</a> que vous
pouvez utiliser.</p>
<p>Cela vaut toujours la peine de soumettre vos contributions
directement sur le site ftp afin que davantage de personnes puisse
dans le futur profiter de votre expérience.</p>
<p>Pour poster sur le forum <a href=
"news:comp.lang.tcl.announce">comp.lang.tcl.announce</a>, envoyez
un email détaillé à <a href=
"mailto:tcl-announce@mitchell.org">tcl-announce</a>. N'hésitez pas
à renvoyer les gens vers votre propre site ftp ou WWW si vous en
avez un.</p>
<h2><a name="s5">5. Un tout petit peu de programmation</a></h2>
<p>Comme Tcl est un langage interprété, pour exécuter un programme
Tcl (qu'on appelle également un script) vous passez normalement le
fichier à l'interpréteur Tcl, wish, par exemple :</p>
<hr>
<pre>
wish hello.tcl
</pre>
<hr>
<p>Vous pouvez aussi utiliser wish en mode interactif et lui donner
des commandes à l'invite.</p>
<p>Il existe un autre interpréteur de Tcl en standard, tclsh, qui
comprend seulement le langage Tcl. Tclsh n'a aucune commande de
l'interface utilisateur de Tk, donc il n'est pas possible de créer
des programmes graphiques avec tclsh.</p>
<p>Certaines applications Tcl libres étendent le langage en
ajoutant de nouvelles commandes écrites sous la forme de fonctions
C. Dans ce cas, vous devez compiler l'application au lieu de passer
seulement son code Tcl à l'interpréteur wish. Ce programme
applicatif compilé est véritablement, du point de vue de Tcl, une
nouvelle version de l'interpréteur wish, avec les nouvelles
commandes en C liées dedans. Bien sûr, le programme peut être bien
plus qu'un simple interpréteur Tcl. (Note : vous pouvez aussi
utiliser la capacité de chargement automatique de Tcl sur les
systèmes qui la supportent).</p>
<h2><a name="ss5.1">5.1 Programme-minute en Tcl</a></h2>
<p>Tcl a une structure simple. Chaque ligne commence par une
nouvelle commande, par exemple button et un certain nombre
d'arguments. Chaque commande est implémentée comme si c'était une
fonction C, qui prend en charge tous les arguments.</p>
<p>Voici un exemple très bateau, le célèbre Hello World écrit en
Tcl/Tk :</p>
<hr>
<pre>
# Ceci est un commentaire
button .b -text "Hello World" -command exit
pack .b
</pre>
<hr>
<p>Dans cet exemple, vous devez taper les commandes de manière
interactive dans tclsh ou wish.</p>
<p>Vous pouvez aussi placer les commandes dans des fichiers de
script et les appeler tout comme des scripts shell. Pour reprendre
l'exemple précédent, le programme Hello World s'écrirait :</p>
<hr>
<pre>
#! /usr/local/bin wish -f
button .b -text "Hello World" -command exit
pack .b
</pre>
<hr>
<p>Mettez ce texte dans un fichier appelé Hello et assurez-vous que
wish est installé dans /usr/local/bin (si ce n'est pas le cas,
corrigez le chemin d'accès).</p>
<p>Rendez le fichier Hello exécutable, par un :</p>
<hr>
<pre>
chmod 775 Hello
</pre>
<hr>
<p>et lancez-le sous X.</p>
<p>Vous allez voir un bouton marqué Hello World dans une
fenêtre : cliquer dessus ferme la fenêtre.</p>
<h2><a name="s6">6. Langage de script : avantages et
inconvénients</a></h2>
<p>Afin de comprendre l'importance de Tcl/Tk et son futur, je vous
recommande la visite de <a href=
"http://www.scriptics.com/people/john.ousterhout/">http://www.scriptics.com/people/john.ousterhout/</a>
par <a href="mailto:ouster@scriptics.com">John K. Ousterhout</a> .
Vous y trouverez des choses à lire sur l'importance des scripts
(écrits dans des langages tels que Tcl) et une comparaison avec la
programmation système (dans des langages comme le C et le
Java).</p>
<p>Pour une lecture à propos des comparaisons, voyez <a href=
"#prosandcons">the comparison discussion</a>.</p>
<p>Voici un résumé des principaux avantages et inconvénients de
Tcl/Tk.</p>
<h2><a name="ss6.1">6.1 Reproches les plus courants à propos de
Tcl</a></h2>
<h3>Tcl est interprété</h3>
<p>Les données sont traitées de manière primaire comme des chaînes
de caractère, les programmes écrits en Tcl sont lents. Tcl 8.0
essaie de pallier ceci en compilant à un certain degré ainsi qu'en
autorisant différents types de variables.</p>
<h3>Plusieurs caractéristiques ne sont pas intuitives</h3>
<p>Les commentaires sont des commandes plutôt que de vrais
commentaires, les nombres commençant par 0 sont en octal,
l'utilisation correcte des guillemets, etc. Ces aspects sont
abordés dans les diverses FAQs.</p>
<h2><a name="ss6.2">6.2 Principaux avantages de Tcl</a></h2>
<h3>C'est un langage de script de haut niveau</h3>
<p>Vous avez besoin de beaucoup moins de code pour faire le
travail, surtout en comparaison avec des applications Motif ou
Win32. En général, le nombre de lignes de code (Line Of Code, LOC)
d'un projet logiciel est l'indice de complexité le plus
important.</p>
<h3>Tcl est libre</h3>
<p>Vouz pouvez vous procurer les sources gratuitement sur Internet
par la page Download de Scriptics ou par le site FTP pour Tcl.
<a href="http://www.scriptics.com/software/download.html">Le site
de base du logiciel</a> inclut la version code source, ainsi que
des versions binaires pour plates-formes Windows et
Macintosh ; ou bien vous pouvez trouver Tcl sur un bon nombre
de CD-ROMs pour un coût réduit.</p>
<p>Une lecture à propos de la base libre de Tcl et Tk :
<a href=
"http://www.scriptics.com/about/news/qa.html">www.scriptics.com/about/news/qa.html</a>
.</p>
<h3>Il fonctionne sur de nombreuses plates-formes</h3>
<p>Il existe des versions pour UNIX (Linux... bien sûr), Windows et
Macintosh. Exceptées quelques différences entre plates-formes, vos
scripts Tcl fonctionneront de la même manière sur tous les
systèmes.</p>
<h3>Il est interprété</h3>
<p>Vous pouvez exécuter directement votre code sans compilation ni
édition de liens (même si quelques compilateurs de Tcl sont
disponibles).</p>
<h3>Il est extensible</h3>
<p>Il est aisé d'ajouter vos propres commandes pour étendre le
langage Tcl. Vous pouvez les écrire en C ou en Tcl.</p>
<h3>Il est encapsulable dans vos applications</h3>
<p>L'interpréteur Tcl est purement et simplement un ensemble de
fonctions C que vous appelez dans votre code. Cela signifie que
vous pouvez utiliser Tcl comme langage applicatif, tout comme un
langage de macro pour un tableur.</p>
<h3>Tcl/Tk est compatible An 2000</h3>
<p>Lisez ce que le créateur de la base Tcl et Tk dit à ce
sujet : <a href=
"http://www.scriptics.com/Y2K.html">www.scriptics.com/Y2K.html</a>
.</p>
<h2><a name="s7">7. Programmes les plus célèbres utilisant
Tcl/Tk</a></h2>
<p>A part les deux implémentations décrites dans <a href=
"#introduction">l'Introduction</a>, de nombreuses applications sont
écrites en Tcl/Tk ou une combinaison de Tcl et de C. Une liste
complète de ces implémentations figure à la <a href=
"http://www.tclfaq.wservice.com/tcl-faq/part4.html">partie 4</a> de
la Foire Aux Questions sur Tcl/Tk (FAQ). Je vous suggère de visiter
<a href="http://www.scriptics.com/resource/software/">Scriptics'
Software Central</a>.</p>
<p>Un autre bon point de départ est <a href=
"http://www.NeoSoft.com/tcl/">http://www.NeoSoft.com/tcl/</a>.</p>
<p>Une des meilleures applications Tcl tournant sous Linux
s'appelle <a href=
"http://people.mainz.netsurf.de/~bolik/tkdesk/">TkDesk</a>. C'est
un gestionnaire de fenêtres et un lanceur d'applications qui
fonctionne très bien.</p>
<p>Si vous êtes développeur en Tcl/Tk, n'hésitez pas à <a href=
"mailto:lukaros@tin.it">m'envoyer</a> une URL (et une description
de votre travail) que je puisse ajouter ici.</p>
<h2><a name="references"></a> <a name="s8">8. Références</a></h2>
<p>Pour de nombreuses raisons, les gens préfèrent souvent avoir un
manuel papier comme référence ou aiment être aidés en ligne par
d'autres personnes connectées.</p>
<p>Vous pouvez trouver dans cette section une sélection de livres
de référence, de tutoriels, de sites www et forums Usenet.</p>
<h2><a name="ss8.1">8.1 Livres</a></h2>
<p>Beaucoup de livres concernant Tcl/Tk ont été écrits et vont être
publiés. Je ne vais pas essayer de tous les répertorier (<b>un
autre howto n'y suffirait pas</b> :) ). Vous trouverez davantage
d'informations et des notes complémentaires à :</p>
<ul>
<li><a href=
"http://www.tclconsortium.org/books/index.vet">www.tclconsortium.org/books/index.vet</a></li>
<li><a href=
"http://www.amazon.com/exec/obidos/subst/categories/computer-programming/tcl-tk-article/002-8989352-4516417">
www.amazon.com/exec/obidos/subst/categories/computer-programming/tcl-tk-article/002-8989352-4516417</a></li>
<li>Page : tcl_books.html à l'URL <a href=
"http://starbase.neosoft.com/%7Eclaird/comp.lang.tcl/">starbase-neosoft-tcl-books</a></li>
</ul>
<p>Je vais essayer ici de résumer en quelques lignes les livres que
je connais à ce sujet, qui sont tous d'un niveau basique à moyen.
Là encore, les gens qui connaissent le sujet ont suffisamment
d'informations pour savoir où trouver des livres d'un niveau plus
avancé.</p>
<h3>The Tcl and Tk Toolkit</h3>
<p>Auteur : <a href="mailto:ouster@scriptics.com">John K.
Ousterhout</a></p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://cseng.aw.com/bookdetail.qry?ISBN=0%2D201%2D63337%2DX&ptype=0">
cseng.aw.com/bookdetail.qry?ISBN=0%2D201%2D63337%2DX&ptype=0</a></p>
<p>Exemples du livre : <a href=
"ftp://ftp.scriptics.com/pub/tcl/doc/book.examples.Z">ftp://ftp.scriptics.com/pub/tcl/doc/book.examples.Z</a></p>
<p>Compléments au livre : <a href=
"http://www.scriptics.com/doc/tk4.0.ps">http://www.scriptics.com/doc/tk4.0.ps</a></p>
<p>Cet ouvrage couvre à l'origine Tcl 7.3 et Tk 3.6.</p>
<h3>Practical Programming in Tcl and Tk, deuxième édition</h3>
<p>Auteur : <a href="mailto:welch@acm.org">Brent Welch</a></p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://www.beedub.com/book/">http://www.beedub.com/book/</a></p>
<p>Table des matières : <a href=
"http://www.beedub.com/book/">http://www.beedub.com/book/</a></p>
<p>Publicité du livre à la section_50000.html de l'URL <a href=
"http://www.borders.com/sections/">http://www.borders.com/sections/</a></p>
<p>Cette édition révisée décrit Tcl/Tk 8.0 tel qu'il était dans sa
période beta. Les ajouts par rapport à la première édition
concernent les sockets, les paquetages, les contextes (namespaces),
et une longue section décrivant les changements dans Tcl 7.4, 7.5,
7.6 et 8.0 (et Tk également), Safe Tk, et le Plugin.</p>
<h3>Tcl and Tk Reference Manual</h3>
<p>Editeurs : <a href="mailto:marc@redhat.com">Marc Ewing</a>,
Erik Troan</p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://www.lsl.com/catalog/books/tcltk/">http://www.lsl.com/catalog/books/tcltk/</a></p>
<h3>The Visual TCL Handbook, 1/e</h3>
<p>Auteur : <a href="mailto:david@inforef.com">David
Young</a></p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://www.amazon.com/exec/obidos/ASIN/013461674X/qid%3D932034805/002-8225427-0056632">
http://www.amazon.com/exec/obidos/ASIN/013461674X/qid%3D932034805/002-8225427-0056632</a></p>
<p>Un guide complet sur Visual TCL. Ce livre mène le lecteur des
concepts de base du développement d'interfaces graphiques
utilisateur jusqu'à des développements d'applications
significatifs. Le livre se concentre sur les extensions TCLX et VT,
évoquant beaucoup de sujets fondamentaux pour TCL. VT est une
interface graphique basée sur Motif, incompatible avec Tk.
L'intégralité du langage TCL est documentée dans une section
Commands séparée. Il inclut un CD-ROM avec les versions SGI,
Solaris, HP-UX, AIX et Unixware de Visual Tcl.</p>
<h3>Running Linux</h3>
<p>Auteur : Matt Welsh et Lar Kaufman</p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://www.ora.com/catalog/runux2/noframes.html">http://www.ora.com/catalog/runux2/noframes.html</a></p>
<p>(NdT : La version française de cet ouvrage est intitulée
"Le Système Linux", aux éditions O'Reilly. Cette adaptation
française de René Cougnenc a été révisée, pour la deuxième édition,
par Manuel et Nat Makarévitch. Voir <a href=
"http://www.editions-oreilly.fr/sysad/runux2.html">http://www.editions-oreilly.fr/sysad/runux2.html</a>.</p>
<p>La 3ème édition originale doit sortir en août 1999. Voir
<a href="http://www.ora.com/catalog/runux3/noframes.html">http://www.ora.com/catalog/runux3/noframes.html</a>.
Il faudra attendre un peu pour la version française).</p>
<p>C'est un livre de base vraiment bien écrit. Il contient un
chapitre sur la programmation en Tcl/Tk (ainsi que Perl, C,
C++).</p>
<h3>Tcl/Tk for Dummies (Pour les Nuls)</h3>
<p>Auteur : Timothy Webster, with Alex Francis</p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://www.dummies.com/">http://www.dummies.com/</a></p>
<p>Un autre livre dans la série des livres de programmation.
Celui-ci se concentre sur le plugin Tcl comme environnement de
programmation.</p>
<h3>Interactive Web Applications With Tcl/Tk</h3>
<p>Auteurs : Michael Doyle, Hattie Schroeder</p>
<p>Information sur le WWW à propos de l'ouvrage : <a href=
"http://www.eolas.com/tcl/">http://www.eolas.com/tcl/</a></p>
<p>C'est un livre d'apprentissage par l'exemple, pour les personnes
qui savent un peu programmer sans être experts. Il couvre le
développement d'applets comme applications autonomes et des
applications serveurs simples. Il est fourni avec la boîte à outils
Spynergy, qui ajoute diverses procédures en pur Tcl/Tk pour le
traitement distribué, la récupération d'URL, la génération de HTML,
la gestion de bases de données et la gestion transparente de
fichiers quelle que soit la plate-forme, un éditeur de Tcl, Ed, et
un environnement de test, un outil de conversion d'image, une
démonstration des fonctionnalités de Tk, une version client/serveur
d'une application rolodex, un serveur web en Tcl pur, une
application de push en client/serveur, un navigateur web en
Tcl.</p>
<h2><a name="ss8.2">8.2 Manuels en ligne et tutoriels</a></h2>
<ul>
<li>John Ousterhout a écrit un guide dans un style ingénierie, qui
décrit le codage, la documentation et les conventions de test en
usage chez Sun pour le codage de la base en C de Tcl, et l'a mis à
disposition des autres développeurs Tcl/Tk. Il se trouve à <a href=
"ftp://ftp.scriptics.com/pub/tcl/doc/engManual.tar.Z">ftp://ftp.scriptics.com/pub/tcl/doc/engManual.tar.Z</a></li>
<li>Un second guide, couvrant l'écriture de scripts Tcl, peut être
récupéré à <a href=
"ftp://ftp.scriptics.com/pub/tcl/doc/styleGuide.tar.gz">ftp://ftp.scriptics.com/pub/tcl/doc/styleGuide.tar.gz</a>.</li>
<li><a href=
"http://http2.brunel.ac.uk:8080/~csstddm/TCL2/TCL2.html">A brief
introduction to TCL/TK</a> par <a href=
"mailto:csstddm@brunel.ac.uk">David Martland</a> .</li>
<li>Un autre tutoriel intitulé <a href=
"http://www.scism.sbu.ac.uk/tkteach/">User interfaces with
Tcl/Tk</a> a été écrit par <a href="mailto:fintan@sbu.ac.uk">Fintan
Culwin</a> .</li>
<li>Même si vous devriez avoir les pages de manuel de Tcl/Tk sur
votre système, voici un autre endroit où chercher : <a href=
"http://cuiwww.unige.ch/eao/www/TclTkMan/Man.html">TCL Manual Pages
(from TCL7.4)-Tk Manual Pages (from TK4.0)</a>.</li>
<li><a href="http://www.itd.clrc.ac.uk/Activity/TclTk">The Tcl/Tk
Cookbook</a> fournit beaucoup d'informations pour débuter.</li>
</ul>
<h2><a name="ss8.3">8.3 Sites World Wide Web</a></h2>
<p>Il existe de nombreuses ressources WWW qui offrent des
informations complémentaires sur beaucoup d'aspects de Tcl et de
ses extensions.</p>
<ul>
<li>Référez-vous à <a href=
"http://www.tclfaq.wservice.com/tcl-faq/part2.html">la FAQ-Tcl
(partie 2)</a> pour des liens en quantité vers de la documentation
Tcl/Tk et des sites web.</li>
<li>Lancez votre navigateur web sur <a href=
"http://www.tcltk.com">Tcl/Tk Information</a> : un site avec
beaucoup de liens vers des ressources Tcl/Tk sur le web
(informations, Extensions, Outils, Entraînement et
Evénements).</li>
<li>Jetez un oeil à <a href=
"http://www.tclconsortium.org/">Tcl-Consortium</a> : une
organisation à but non-lucratif pour promouvoir Tcl/Tk et soutenir
la communauté des développeurs.</li>
<li>Allez naviguer à <a href=
"http://www.NeoSoft.com/tcl/">l'Archive Officielle des Sources des
Contributions</a> pour le Tool Command Language (TCL) et la boîte à
outils Tk, hébergée par Neosoft, Inc.</li>
<li><a name="prosandcons"></a> Pour une discussion à propos du pour
et du contre des principaux langages de script : <a href=
"http://www.sun.com/sunworldonline/swol-10-1997/swol-10-scripting.html">
article paru dans SunWorld</a>, par <a href=
"mailto:claird@Starbase.NeoSoft.com">Cameron Laird</a></li>
<li>Une page web qui contient diverses comparaisons entre Tcl/Tk et
d'autres systèmes similaires. La plupart d'entre elles sont tirées
de "comp.lang.tcl", l'auteur serait heureux d'ajouter tout article
important que vous, oui vous !, voudrez lui envoyer : <a href=
"http://icemcfd.com/tcl/comparison.html">Comparaison</a> par
<a href="mailto:wayne@icemcfd.com">Wayne Christopher</a>.</li>
<li><a href="http://herzberg.ca.sandia.gov/TclCourse/">Le cours de
Tcl/Tk de E.J. Friedman-Hill's</a> : ce document est
disponible seulement sous forme PowerPoint et en HTML de basse
qualité (en format HTML, toutes les figures et une partie du texte
sont manquantes).</li>
</ul>
<h2><a name="ss8.4">8.4 Autres documents & Foires Aux
Questions</a></h2>
<p>Beaucoup de matière est disponible sur l'Internet : papiers
introductifs, papiers blancs, tutoriels, transparents, versions
PostScript de brouillons d'ouvrages publiés, et bien d'autres
choses.</p>
<p>Pour une référence complète, veuillez s'il vous plaît jeter un
oeil à l'excellente <a href=
"http://www.tclfaq.wservice.com/tcl-faq/">FAQ Tcl</a> .</p>
<h2><a name="ss8.5">8.5 Forum Usenet</a></h2>
<p><a href="news:comp.lang.tcl">comp.lang.tcl</a> est un groupe de
discussion non modéré, créé pour les échanges sur le langage de
programmation Tcl et les outils qui utilisent Tcl sous une forme
quelconque, tels que la boîte à outils Tk pour le système X Window,
le Tcl étendu, et expect.</p>
<p>(NdT : le forum équivalent dans la hiérarchie francophone
fr.* est <a href="news:fr.comp.lang.tcl">fr.comp.lang.tcl</a>).</p>
<p>Pour les annonces relatives à Tcl/Tk, regardez toujours <a href=
"news:comp.lang.tcl.announce">comp.lang.tcl.announce</a> :
vous y trouverez les annonces de versions finales, de patchs, de
nouvelles applications, etc.</p>
<p>Je précise à nouveau que la FAQ se trouve à <a href=
"http://www.tclfaq.wservice.com/tcl-faq/">FAQ Tcl</a>.</p>
<h2><a name="license"></a> <a name="s9">9. Termes de la licence de
Tcl/Tk</a></h2>
<p>Les termes suivants s'appliquent à toutes les versions diffusées
de la base de Tcl/Tk, au plug-in Tcl/Tk navigateur version 2.0, et
à TclBlend et Jacl version 1.0. Veuillez noter que les outils
TclPro sont sous une autre licence. La présente licence est incluse
dans les distributions standard de Tcl/Tk en tant que fichier
"licence.terms".</p>
<p>LICENCE DE TCL/TK</p>
<p>Ce logiciel est sous copyright des Régents de l'Université de
Californie, Sun Microsystems, Inc., Scriptics Corporation, et
autres parties. Les termes suivants s'appliquent à tous les
fichiers associés au logiciel à moins que ce ne soit explicitement
mentionné dans les fichiers individuellement.</p>
<p>Les auteurs accordent ici la permission d'utiliser, copier,
modifier, distribuer, et placer sous licence ce logiciel et sa
documentation dans n'importe quel but, pour autant que les notes de
copyright existantes soient conservées dans toutes les copies et
que la présente note soit incluse telle quelle dans toute
diffusion. Aucun accord écrit, licence ou droit d'auteur n'est
requis pour un usage autorisé. Les modifications de ce logiciel
devraient être placées sous copyright par leurs auteurs et ne
nécessitent pas de suivre les termes de la licence décrits ici,
pour autant que les nouveaux termes soient clairement indiqués sur
la première page de chaque fichier sur lequel ils s'appliquent.</p>
<p><b>EN AUCUN CAS LES AUTEURS OU DISTRIBUTEURS NE POURRONT ETRE
TENUS POUR RESPONSABLES DE DOMMAGES DIRECTS, INDIRECTS,
PARTICULIERS, ACCIDENTELS OU COLLATERAUX PROVOQUES PAR
L'UTILISATION DE CE LOGICIEL, DE SA DOCUMENTATION, OU QUELCONQUES
CONSEQUENCES DE CECI, MEME SI LES AUTEURS ONT ETE AVERTIS DE LA
POSSIBILITE DE CES DOMMAGES.</b></p>
<p><b>LES AUTEURS ET DISTRIBUTEURS SE DEGAGENT PRECISEMENT DE
TOUTES GARANTIES, INCLUANT, MAIS PAS EXCLUSIVEMENT, LA GARANTIE
IMPLICITE DE COMMERCIALISABILITE, L'ADEQUATION A UN BUT
PARTICULIER, ET LA NON-CONTREFACON. CE LOGICIEL EST FOURNI
« TEL QUEL », LES AUTEURS ET DISTRIBUTEURS N'ONT AUCUNE
OBLIGATION DE MAINTENANCE, SUPPORT, MISE A JOUR, EXTENSIONS, OU
MODIFICATIONS.</b></p>
<p>UTILISATION GOUVERNEMENTALE : Si vous acquérez ce logiciel
pour le compte du gouvernement américain, le gouvernement n'aura
que des droits restreints sur le logiciel et la documentation
associée, tel qu'il est défini dans les lois fédérales sur
l'acquisition (Federal Acquisition Regulations - FARs) à la clause
52.227.19 (c) (2). Si vous acquérez ce logiciel pour le compte du
ministère de la défense (Department of Defense, DoD), le logiciel
sera classé comme logiciel commercial (Commercial Computer
Software) et le gouvernement n'aura que des droits restreints, tel
que défini dans la clause 252.227-7013 (c) (1) des DFARs.
Nonobstant ce qui précède, les auteurs accordent au gouvernement
américain et aux personnes agissant en son nom la permission
d'utiliser et de distribuer le logiciel selon les termes spécifiés
dans la présente licence.</p>
</body>
</html>
|