TeX and Other Selected Windows Freeware:
Introduction, Utilities, TeX, Editors, Internet

  Internet: security, SSH, telnet, FTP, email, X Window,
HTML editors, MathML, browsers: [ IE, Mozilla, other]

Internet

Version of 21 Aug 2008. (Some of the software described below can also be found on a CD distributed for free to the Vanderbilt community by Information Technology Services.)


Security

Don't leave your front door wide open on the information superhighway; there are some very clever vandals and thieves lurking about. Here are a few very basic recommendations:


Secure shell

As a computer adviser to my department, I get asked, "why doesn't my telnet or ftp program work?" perhaps more often than any other question. Traditional telnet and ftp programs are being replaced by SSH ("secure shell telnet") and SFTP/SCP ("secure ftp" or "secure copy") at an increasing number of institutions, including Vanderbilt. These newer programs are more secure, because your initial login is encrypted; hackers will have a much harder time learning your password when you use these programs. Even in places where you still can use the old-fashioned programs, I urge you to replace them with the secure versions. Adjusting to them won't take very long -- they are used much like the old-fashioned insecure versions.

You can get one program (the "secure shell package" described below) that handles both secure telnet and secure ftp. Or, if you prefer, you can separate the two operations --- you can get a secure telnet program (such as "Putty", described below) and a secure ftp program (such as "Filezilla" or "Ixplorer", both described below).

This web page is concerned only with software for Windows. Macintosh users might try Fugu.

Secure shell package

To confuse things further, SSH is not only the name of a protocol, but also the name of a company that produces a good program implementing that protocol, and it used to be the name of the program too.

Versions up to and including version 3.2.9 were available for free for noncommercial use. The program combines SSH and SFTP (secure telnet and secure ftp) in one package. The two parts interact in a convenient way: Once you've opened either half, you can open the other half as needed by just clicking on one button.

Here is a greatly abbreviated description of how to use the program. See circled items in illustration. Start with the button labeled "Profiles"; you'll need to create and then edit a profile for each remote location that you'll want to exchange files with. After you've created a profile, you can use it by clicking on "Profiles" and then clicking on the name of the profile. ... The icon of a monitor with a red diagonal line through it is the "disconnect" button. ... The two icons contained in one red circle are for starting up another ssh window or another sftp window. ... To transfer files, you can simply drag files in either direction between the local file liest (under "Local Name") and the remote file list (under "Remote Name"). You can also drag files between the remote file list and any of your local computer's file folders, if you have them displayed on your screen. ... If that's too many buttons, go to "View" "Customize" "Toolbars" and then start dragging buttons you don't want off of their toolbars. (Don't worry about accidentally deleting a button you want -- you can always click "Reset" to return the toolbars to their default settings.

The SSH package is the program I generally give to the less computer savvy members of my department when they need help with secure protocol, since this involves only installing one program and only learning to use one program. However, people who are more experimentative with their computers may prefer some of the programs listed below.


(Secure) telnet programs

A telnet program is a program with text interface, that you can use to log into an account with command- driven user interface on a remote computer. Some of the advanced features you might want in a telnet program are copy and paste, session logging, scripting, macro keys, ftp, and a security protocol. (Actually, you can add the equivalent of macro keys, to a telnet program or any other Windows program, by using Windows Recorder; see description elsewhere on this website. And you can get ftp in a separate program.)

One popular free secure telnet program is PuTTY [444kb, ver 0.60]. It is small, loads quickly, and doesn't take many keystrokes to get where you want to go. Its development is being continued -- it supports the latest versions of SSH. It is fairly simple to set up. For documentation see the next few paragraphs of this page, and/or see PuTTY's documentation.

Putty has two parts -- its terminal screen, which I've pictured at right, and its configuration program, which I have illustrated below. The left column of the configuration display, labeled "Category:", is a menu that stays in sight and unchanged (except for the location of the highlight) while you go through the other screens of the configuration program, choosing them from the menu. The category named "Session" is the main, initial display, which includes things like the "Load" and "Save" buttons. Other categories include "Appearance" (where you can change the font size) and "Connection" (where you can teach PuTTY your username, if you're not sharing this computer with many other people).

You can create and save a configuration for later use: Give it whatever name you like, by typing into the one-line box immediately below the words "Saved Sessions"; after you've saved it, it will also show up in the larger box below that. Go through the other categories ("Appearance", etc.) and change the settings as you wish; then go back to "Session" and click on "Save".

You can load a session that has previously been saved, by clicking on the session's name and then clicking on "Load". From there you can edit it (i.e., alter the configuration settings) and save it again under the same name or under a new name; or you can click on "Open" to start a connection to the remote computer. (However, to update a saved session, you may need to exit from PuTTY and then start it again.) For everyday use (you're usually not going to want to change the settings), just doubleclick on the name of the saved session to open the connection. Or, better yet, create a Windows shortcut that points, not just to "putty.exe", but to "putty.exe @sessname", where "sessname" is the name of your saved session configuration; then clicking on that shortcut will start up PuTTY in that configuration.

When you first connect to a new machine using PuTTY, you'll get a warning message because you're trying to make a secure connection to an unknown machine. Choose "OK" to add the machine to the list of known hosts and to continue connecting.

Copy and paste in PuTTY work a little like Unix xterm and similar programs.


FTP

FTP stands for "File Transfer Protocol"; that's what you use to copy files from one computer to another. Usually (but not always), to "upload" a file means to copy it from the computer you're sitting at to some remote computer; to "download" a file means to copy it from the remote computer to the one you're sitting at.

For most Windows users in our department, I would recommend the Secure Shell package, mentioned earlier on this page -- it includes an integrated ftp and telnet program that work together quite nicely. But some people may prefer:

FileZilla [3.46 mb, ver 3.1.1.1] - An open source project. Here are a few usage tips: To create or to use a profile, you'll have to go through the "Site Manager" window. That's under "File", or shortcut "control-S", or use the first icon at the left end of the toobar. For users in our department, the servertype should be "SFTP using SSH2". Once you've set up your profiles, you can use the triangle (second icon on the toolbar). To transfer files, drag them between the local file list (left pane) and remote file list (right pane). -- This program will remember passwords if you ask it to -- a convenience if your computer is not shared and is stored in a fairly secure location (e.g., your residence). -- To create a shortcut to a particular profile, just use this command line:
"C:\Program Files\FileZilla\FileZilla.exe" profilename
where, of course, "profilename" is replaced by the name of your profile.

A minor tool related to FTP programs: If you upload files from Windows to Unix, you'll want to check their filenames first. Windows doesn't always keep track of upper versus lower case in filenames, but Unix does; sometimes Windows even displays the cases incorrectly (see FAQ). Before uploading, you may want to rename all your files so that their names are all lower case, or something like that. There are some little tools that make it easy to change the case on a big bunch of filenames at one time. Here are a couple: Flash Renamer, Change Case; you can find more if you search under "case rename". For some of these programs, you can add the program as an association to the filetype "Folder", which will enable you to call up the program by right-clicking on the tiny little picture of an open manila folder in the upper left corner of Windows Explorer's windows.


Email clients

Several different client programs are listed below. But first, some general notes on how to set up your email client:

And now, here is a list of a few email clients:

Finally, here are a few more programs and links related to email:


X Window System

"X Window" is the graphic interface used by Unix computers. An "X-terminal" is a terminal which connects to the Unix computer, generally using an X Window program. The terms "X Window" and "X Terminal" are also sometimes applied to programs that you can run on a Micrsoft Windows computer to make it act like an X Terminal. Such programs are also known as "remote control programs", because they enable you to run the Unix computer remotely -- i.e., from another computer. Members of our department who run such a program can use their personal computers as graphics terminals for Atlas, thereby making available to themselves some of our department's advanced software -- e.g., Mathematica.

The copy and paste commands for Unix are not quite the same as those for Microsoft Windows.

VNC (Virtual Network Computing) means using your personal computer as a terminal, including graphics, for a remote server. Several free programs are available for this purpose.

Personally, I have not yet tried UltraVNC, but -- just judging from its web page -- it looks like it has been recently updated and is easy to install and to use. File transfer is one of the included features, so you might be able to dispense with your FTP / SFTP programs. Installation and usage instructions can be found at http://www.uvnc.com/install/ and in a couple of Youtube videos located at http://www.uvnc.com/download/. Version 1.0.2 can also be downloaded from that page. Version 1.0.4 release candidate 17 is also available, and is quite recent; I would guess that version 1.0.4 (final release) will be available fairly soon.

Since I have not yet tested UltraVNC, I will mention two other programs that do roughly the same thing; if one of them doesn't work for you, you might try another. One is RealVNC, which is in some sense the "original" VNC, or at least it is being developed by the original developers; its viewer has more options than TightVNC does but I don't understand all the options. I have not investigated it much either. The one program that I have tried extensively is:

TightVNC   Version 1.3.9. (235 kb). Its usage is not entirely self-explanatory. I will explain this program (including its installation) in somewhat greater detail than most, so that people in my department can install it themselves at home.

Most people will not need all components of the program; all they'll need is the "viewer" (235 kb). This program does not require installation.

Now, after you've installed the program, here's how to use it, (These instructions are just for people in the Vanderbilt Mathematics Department; people logging into other servers will need to use other instructions.)

  1. Start up a secure telnet session -- not using TightVNC, but using some other program (e.g., Putty or SSH Client). Log into your account on apollo or artemis (or atlas, but I'd recommend apollo or artemis if you're going to use mathematica).
  2. When the server gives you a command prompt, type "vncserver". (The idea is that you're going to run the program "vncserver" on apollo or one of the other servers, and then you're going to run a version of "vncviewer" on your Windows computer.)
  3. The first time you use VNC Server on apollo (or artemis or whatever) , it will prompt you for a password. (I'd suggest using the same one you used to log into the server, since that way you don't have to remember another password.) On subsequent uses of the program on that server, you will not be prompted for a password. (That information will be stored, in encrypted form, in a hidden file named ".vnc/passwd".)
  4. Wait a few seconds, and apollo (or whatever other server) will respond with a message. It will display many lines, but you can ignore most of it; all we really need to look at is the last part of the last line.
    Warning: apollo.math.vanderbilt.edu:1 is taken because of ... (etc.)
    Remove this file if there is no X server apollo.math.vanderbilt.edu:1

    Warning: apollo.math.vanderbilt.edu:2 is taken because of ... (etc.)
    Remove this file if there is no X server apollo.math.vanderbilt.edu:2

    New 'X' desktop is apollo.math.vanderbilt.edu:3

    Starting applications specified in /home/schectex/.vnc/xstartup
    Log file is /home/schectex/.vnc/apollo.math.vanderbilt.edu:3.log

    Instead of "schectex" (my username), you'll see your own username. And instead of the number "3", you'll probably see some other number. Keep track of that number; that's the only information we're really looking for.
  5. Now click on the icon you put on your desktop -- i.e., the shortcut to the program TightvncViewer. It will bring up a box like the one shown in the picture at right. In the box labeled "VNC Server:", you should type
    apollo.math.vanderbilt.edu:3
    (or replace 3 with whatever was the number you found in the preceding step, above).
         Actually, in all times after the first time you do this, you won't have to type very much; the box will already be filled in with whatever value you had last time you used the program. So probably all you'll have to do is change the number after the colon.
  6. Then click on the "OK" button.
  7. Wait a few seconds, and you'll be prompted for your password. Type it in.
  8. Wait a few more seconds, and your X-terminal session will start up.
  9. Now you can use the X-terminal. Reminder: The copy and paste commands won't work quite the same as in Microsoft Windows; see my earlier discussion of this.

    How to close the session when you're done with it.

  10. In your X-terminal, find the logout command. It's probably in the popup menu at the left end of the unix toolbar. Click on "Log out".
  11. Close the VNC Viewer program on your Windows computer.
  12. On the telnet session, type
    vncserver -kill :3
    again changing the number after the colon as needed. (Note that there is a space before the colon.)
  13. If you're done with the telnet session, close that too.
Those are all the essential steps to using the TightVNCviewer. But here are some additional steps you might consider if you're going to be using the program frequently:


Html editors

Web pages are just textfiles in a markup language (see introduction to markup languages), so you can edit them using any plain old text editor -- even something simple like Windows Notepad. But they may be easier to edit if you use some special program designed especially for editing web pages. Here are some of the features I look for:

Many, many html editors are available for free. Here are a few that I've selected because they look promising, though I haven't tried most of them extensively.

Name of program syntax color high lighting? convenient layout of buttons? (in my opinion) user- definable tag buttons? other comments
Top Dawg 2.8 [920kb mb] YES YES YES This is my current favorite. The buttons are arranged in a very intuitive way, to make it easy for a beginning or intermediate level web designer to write HTML. Not compatible with Windows 2000, unfortunately, but at least it will do Windows 9x and XP. No longer supported.
Max's HTML Beauty ++2004 [1.73 mb] YES, and custom izable YES NO This is my second choice, though I haven't tried it for very long. Its layout of buttons is very intuitive. This program has built-in syntax highlighting not only for HTML, but for a number of other markup and programming languages, including TEX. It doesn't have buttons for inserting tex code, but I suppose you could supplement this with the "Latex macros" program. So perhaps this program could also be used as an editing shell for latex. Personally, I don't think the advantages of having one editor for both HTML and Latex are significant; I'd rather get two separate editors that are both as good as possible. But your needs may differ from mine. The spellchecker is not internal -- it just links to Microsoft Word; and even if you have Word, the spellchecker doesn't work with tex files.
Nvu [6.57 mb, ver. 1.0] some okay NO, but the button bar is somewhat configurable This one is an open source project. Using it, you can switch between several different displays: the source file (edit the markup HMTL), preview (WYSIWYG), and two compromises between those extremes, "normal" and "HTML tags". Switching between those displays is a bit slow, but this is only a beta; maybe later versions will be faster. This program uses some ingredients taken from the Mozilla project. ... I like this program, but one peculiarity it has is that the WYSIWYG editor adds lots of extra carriage returns to the source file; you'll see them when you switch to HTML mode.
KompoZer [7.6 mb, ver. 0.7.10] some okay NO, but the button bar is somewhat configurable This is an "unofficial" variant of NVU, intended to overcome some of NVU's bugs.
HTML-Kit build 292 [2.8 mb] YES YES NO, but you can copy your favorite buttons from the other bars onto a "favorites" bar I'm not really familiar with this one. One feature is a huge collection of optional plugins -- apparently you can select which features you want to add, so the program remains small and fast but will probably still serve your needs well -- if you know what your needs are. Basic features are free; additional features if you pay for registration.
1st Page 2006 [9.4 mb] YES YES NO Can be started in "Easy", "Normal", "Expert", or "Hardcore" mode; so this might be a good program for someone who is learning html. Includes Perl, ASP, Cascading Style Sheets, Javascript, VBScript, CFML (Allaire Cold Fusion), Java. I haven't tried the new version "2006" yet.
WebDwarf v2.5 [4.1 mb; omitted from the CD] NO ? ? I'm not familiar with this program, but apparently it's an editor for both HTML (web pages) and SVG (scalable vector graphics). It looks very fancy and very professional.
HTML Notes 1.19 [1.17 mb; omitted from the CD] YES, and config urable Fair. Most commonly used buttons are on the toolbar; more commands are in the pull-down "insert" menu. NO. You can customize 5 buttons so that clicking on each of them inserts a textfile of your choosing, but that text will replace, not surround, any text you've highlighted. This program hasn't been updated in several years; you might prefer it if you like old-style programs or if you have an old computer. It starts very fast -- you could use this as a "notepad replacement", particularly if you're keeping an HTML file on the Active Desktop. Also, this program does a fairly good job of converting an RTF file automatically to an HTML file. See discussion of RTF elsewhere on this website.

Also noteworthy:


MathML

The specifications for MathML 2.0 were released by the World Wide Web Consortium (W3C) in February 2001, and they're now working on MathML 3.0 MathML is "a low-level specification for describing mathematics as a basis for machine to machine communication." Ultimately, it is intended not only for high quality display of mathematical content, but also for presentation of mathematical content --- i.e., the presentation of usable coding that can be copied and pasted into mathematical software such as Tex or Mathematica. More information about MathML, including browser-specific information, can be found on the W3C's website about MathML. (That web page also includes links to information about other methods, besides MathML, for displaying math on the web.)

Recent versions of some major browsers have been designed to display some MathML-encoded web pages, though (i) the initial offerings of these browsers concentrate on display rather than content, and (ii) in some cases the user of the browser must install additional software (e.g., fonts) that, though available for free, are not included in the default installation of the browser. To see whether your current browser needs additional fonts or other add-ons, you might try going to this test page or this online book.

My own impression is that MathML is not ready for widespread use, because you cannot yet count on your audience using a MathML-equipped browser. My recommendations for displaying mathematical content on the web are (i) use gif images, which can be viewed in any conventional browser; or (ii) use PDF documents, which at least can be downloaded by any conventional browser. I can recommend MathML for two smaller groups of people: (a) people who wish to experiment with the latest technology, and (b) people who have a more narrowly specified audience -- e.g., a researcher who is communicating with specific colleagues, or a teacher who have instructed his or her class to download, install, and use some particular web browsing software.


Browsers:   Internet Explorer & its relatives

(Other browsers are covered later on this page.)

Microsoft Internet Explorer, or MSIE for short, has become something of a Standard. I don't like to use it, because it has lots of security flaws and it crashes fairly often, and just when I was starting to get used to it Microsoft suddenly made big changes in its appearance. But some websites are designed for it and won't display properly with anything else. (One solution is to use Firefox with the "view as IE" plugin installed; see later on this page.)   I am no longer keeping a copy of Internet Explorer's installation files on the department CD, as it has simply gotten too big, and too dependent on what other programs you also have on the same computer.

If you're going to use IE, make sure you have the latest version, together with its latest updates and security patches -- that won't make you completely safe, but it will make you safer than if you don't have them. ---

If you have a recent version of the Internet Explorer program installed on your computer, then -- even if you don't use that version -- some other programs can use parts of that program. A number of programs have been designed to do this. Generally they run a bit faster than Internet Explorer itself, and they may also offer extra features. Many such programs are available; here are just a few of them: Ace Explorer, Enigma Browser, Avant Browser, Maxthon, SlimBrowser.


Browsers:   Mozilla, Netscape, & their relatives

If you're excited about open source software, you can read
almost daily news about the Mozilla project. The Mozilla community was very excited during the years when it was overtaking Internet Explorer.

For those who want it, the old Classical Netscape "classical" Netscape is still available; the final version was version 4.8 (22.7 megabytes). But there was no version 5, and starting with version 6 Netscape began a "new series", which is an entirely new program, not just a revision of the old Netscape. Here, are the main members of this new family of browsers:


Other browsers