old-www/HOWTO/TclTk-HOWTO-1.html

191 lines
8.2 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>The Linux Tcl and Tk HOWTO: Introduction</TITLE>
<LINK HREF="TclTk-HOWTO-2.html" REL=next>
<LINK HREF="TclTk-HOWTO.html#toc1" REL=contents>
</HEAD>
<BODY>
<A HREF="TclTk-HOWTO-2.html">Next</A>
Previous
<A HREF="TclTk-HOWTO.html#toc1">Contents</A>
<HR>
<H2><A NAME="introduction"></A> <A NAME="s1">1. Introduction</A></H2>
<P>
<P>This is the Linux Tcl and Tk HOWTO. It is intended as a Linux reference
covering everything you should know concerning installation, configuration
and an introduction to development under Tcl and Tk. History and some pros
and cons about Tcl and Tk under Linux are analized, and references are given
to many other sources of information on a variety of topics related to this
simple but powerful scripting language.
<P>If you ever rebuilt your Linux kernel inside X using the command
<HR>
<PRE>
make xconfig
</PRE>
<HR>
<P>you surely managed to face the strenght of this simple but powerful scripting
language.
<P>After executing the first step of kernel rebuilding, a script called kconfig.tk
is executed via wish (the Tcl intepreter). The Linux Kernel Configuration wind
ow
appears. Instead of answering a series of questions, this X-based configuratio
n
utility allows you to use checkboxes to select which kernel options you want
to enable.
<P>The system stores your last configuration options so that every time you
run it, you need only to add or remove some checks and you don't need to reent
er
the whole set of option. Moreover you can fill the whole (or part of the) list
of kernel option the order you want. After this simplified step you can rebuil
d
your kernel in the traditional way.
<P>There's actually another famous case. Have you ever used "printtool"
? (Printer Config Tool (C) Copyright 1994 by
<A HREF="http://www.redhat.com">Red Hat Software</A> - author: Michael
Callahan).
If you installed a Red Hat distribution you happily managed to
use it to set up printing services . Well, printtool front-end is mainly a
Tcl/Tk script.
<P>For those who don't know Red Hat let me tell you how you can easily configure
your printers just filling some textboxes and filling in some checkboxes.
<P>The program itself takes care of setting up printing services through the
creation of spooling directory, writes /etc/printcap file and the printer's
filter, reloads lpd and tests your filter with ascii or postscript pages. It
allows you manipulate ghostscript options (i.e. choose up to 8 pages per outpu
t
page and setting margins), has an help-on-line and many more features.
<P>What is the difference compared to other service-printing implementation?
<P>Everything is achieved by using Tcl/Tk as a "glue" between consolidated
application and operating with normal Linux configuration files in a visual
and interactive window under X-Window. No new application-specific commands
were written at all.
<H2><A NAME="ss1.1">1.1 Purpose of this document</A>
</H2>
<P>
<P>Currently the purpose of the document is limited to giving initial references
to Linux users; in future versions I will try to incorporate a small "Programm
ing
Tutorial".
Let me state that again: this is not (and doesn't want to substitute)
an omnicomprehensive "user manual" or "reference" for Tcl and Tk development
and programming - it's just a starting point for Linux users.
<P>The author's concept of reference manual coincides with the definition
of man pages and many people learn Tcl/Tk from these basic source of informati
on.
These files are a part of the source code distribution and are installed on
your Linux box. You will be able to access the Tcl/Tk manual pages through
the man command.
<P>Many structured and complete programming tutorials have been written in
order to let the new user begin hacking with Tcl/Tk; tons of other material
are available in the Internet. Interpreting Tcl/Tk philosophy I won't try to
reinvent the wheel, I will manage to glue the huge amount of material already
available.
<P>I suggest you to have a look at the other documents listed in the
<A HREF="TclTk-HOWTO-8.html#references">References section</A> in order to find where to retri
eve
specific information about Tcl and Tk.
<H2><A NAME="ss1.2">1.2 What you should know before reading</A>
</H2>
<P>
<P>In order to understand the abc of Tcl/Tk you shouldn't be a programming-guru,
command sintax is very simple. Basically you have to be familiar with:
<UL>
<LI>simple programming concepts;</LI>
<LI>using very common unix commands and/or utilities;</LI>
<LI>having access to the Internet;</LI>
<LI>using ftp.</LI>
</UL>
<H2><A NAME="ss1.3">1.3 New versions of this document</A>
</H2>
<P>
<P>Newer versions of this document will be uploaded to ftp site:
<A HREF="ftp://sunsite.unc.edu/Linux/docs/HOWTO/">ftp://sunsite.unc.edu/ pub/Linux/HOWTO/</A>
and will be available on all other mirrors.
<P>Hypertext and other versions of this and other Linux HOWTOs are available
mainly at
<A HREF="http://sunsite.unc.edu/LDP/lpd.html">sunsite.unc.edu/LDP/lpd.ht ml</A>
and
<A HREF="http://www.linux-howto.com">www.linux-howto.com</A> and on
many other Mirror World-Wide-Web sites.
<P>I will try to incorporate in
<A HREF="http://space.tin.it/computer/tlqhr/">my Web-Page</A> the most
recent html and sgml version of the document. Most Linux CD-ROM distributions
include the HOWTOs, often in a subdir of /usr/doc/ directory, and you can also
buy printed copies from several vendors.
<P>Sometimes the HOWTOs available from CD-ROM vendors, ftp sites, and in hardcopy
format are out of date. If the date on this HOWTO is more than six months in
the past, then a newer copy is probably available on the Internet.
<P>If you make a translation of this document into another language, drop
me a line and I'll include a reference to it here.
<H2><A NAME="ss1.4">1.4 Revision History</A>
</H2>
<P>
<UL>
<LI><B>Version 0.1</B>: 28 October 1998 - first version;</LI>
<LI><B>Version 0.2</B>: 07 November 1998 - deep restyling and lifting.</LI>
</UL>
<H2><A NAME="ss1.5">1.5 Feedback and other stuff</A>
</H2>
<P>
<P>I rely on you, the reader, to make this HOWTO useful. If you have any suggestio
ns,
corrections, or comments, please send them to me, (
<A HREF="mailto:lukaros@tin.it">Luca Rossetti</A> ), and I will try to
put them in the next revision.
<P>If any of the links mentioned in this document becomes unavailable or changes,
please notify me immediately so that I can update and/or remove the link.
<P>I am willing to answer general questions about Tcl/Tk and Linux as best
as I can. Before doing so, please read all of the information in this HOWTO,
and send me detailed information about the problem.
<P>If you publish this document on a CD-ROM or in hardcopy form, a complimentary
copy would be really appreciated. E-mail me and I will send you back my postal
address.
<P>In many section I mention publishing companies or commercial URL sites:
I really don't work for these guys.
<H2><A NAME="ss1.6">1.6 Credits</A>
</H2>
<P>
<P>Most of the information in this HOWTO comes from Dr. Ousterhout's
<A HREF="http://www.scriptics.com">Scriptics</A> and Larry W. Virden
<A HREF="http://www.tclfaq.wservice.com/tcl-faq/">comp.lang.tcl FAQs</A>
.
<P>I would like to thank the
<A HREF="http://www.pluto.linux.it/">PLUTO</A> Italian Linux User Group
and the whole volunteers of
<A HREF="http://www.pluto.linux.it/ildp/">ILDP</A> (Italian Linux Document
ation
Project) especially Eugenia Franzoni and Giovanni Bortolozzo for their feedbac
k.
<H2><A NAME="ss1.7">1.7 Distribution Policy</A>
</H2>
<P>
<P>This document is Copyright 1998 by
<A HREF="mailto:lukaros@tin.it">Luca Rossetti</A>.
<P>This document is distributed in the hope that it will be useful to the
reader: of course it is considered to be without any warranty; without even
the implied warranty of merchantability or fitness for a particular purpose.
This HOWTO is free documentation; you can redistribute it and/or modify it
under the terms of the
<A HREF="http://sunsite.unc.edu/LDP/LDP-COPYRIGHT.html">LDP COPYRIGHT</A>
.
<P>Please read the
<A HREF="http://sunsite.unc.edu/LDP/LDP-Manifesto.html">LDP Manifesto</A>
for more details.
<HR>
<A HREF="TclTk-HOWTO-2.html">Next</A>
Previous
<A HREF="TclTk-HOWTO.html#toc1">Contents</A>
</BODY>
</HTML>