SeqPup, version 0.4 development release, July 1995
Abstract
SeqPup is a biological sequence editor and analysis program usable on
the common computer systems including Macintosh, MS-Windows and X-
Windows. It includes links to network services and external analysis
programs.
Features include
multiple sequence alignment editor
single sequence editor
read and write several sequence file formats
easy hand alignment features including colored bases and sliding
automatic multiple sequence alignment thru ClustalW app
automatic gel fragment alignment to contigs thru CAP app
consensus, reverse, complement, degap operations
restriction maps
translate dna to/from protein using various codon tables
find strings and ORFs
automatic preference saving
internet send mail
internet sequence analysis services by email
user-definable links to external analysis programs
NOTICE: This release is still unfinish, and has bugs. Please careful of
trusting important work to it. Yet it may be useful to some of you as
is.
SeqPup is being written by Don Gilbert using DCLAP, a free, portable C++
class application framework, and founded on the NCBI Toolkit, especially
it's Vibrant user-interface section written primarily by Jonathan Kans.
SeqApp/SeqPup was started in 1990 as sequence editor/analysis platform
on which analysis programs from other authors could be easily
incorporated into a useable interface. It was originally written with
Apple Computer*s MacApp application framework.
You can obtain this release thru anonymous ftp, gopher or http to
iubio.bio.indiana.edu, in folder /molbio/seqpup. Versions are available
for Macintosh, MS Windows, and various Unix/XWindows systems. The
Internet locators to this software are
Source code for this software is at
.
Comments, bug reports and suggestions for new features (see below) are
very welcome and should be sent via e-mail to
.
July 95: Version 0.4 of SeqPup. This release includes most of the
features of its parent, SeqApp, as well as new features and corrections.
Alignment window: shift & slide sequences, copy/cut/paste/undo sequence
entries among windows; Restriction maps and pretty print output; useable
child apps for mac, mswin, and unix.
SeqPup
version 0.4 development release
July 1995
* SeqPup Help
SeqPup is a biological sequence editor and analysis program usable on
the common computer systems including Macintosh, Motif/X-Windows and MS-
Windows. It includes links to network services and external analysis
programs.
This program has already gone thru several changes since its start in
September 1990. I don't expect it to mature for another year or two, as
my prime programming time is holidays and weekends.
Comments, bug reports and suggestions for new features (see below) are
very welcome and should be sent via e-mail to
With any bug reports, I would appreciate as much detail as is reasonable
without putting you off from making the report. If you don*t have time
to send detailed descriptions of problems, please do send comments and
reports, even if all you say is "Good" or "Bad" or "Ugly".
Please include mention of computer hardware, and operating system
software, including version. Describe how the problem may be repeated,
if it is repeatable. If it is sporadic or only seen once, please also
describe actions leading up to it. Include copies of data if relevant.
If you need to use land mail, send to
Don Gilbert
Biocomputing Office, Biology Department
Indiana University, Bloomington, IN 47405
* Fetching
You can obtain this software via Internet, using anonymous ftp, gopher
or http to the IUBio server at iubio.bio.indiana.edu. It is located in
folder /molbio/seqpup. Versions are available for Macintosh, MS
Windows, and various XWindows/Unix systems. Please check the Readme
files at this archive for recent news. Remember to use binary FTP to
fetch the .zip and .gz binary files.
Internet resource locators for this software are
Source code for this software is at
You will need to fetch one of the program archive files for your
computer system, its associated child app archive, and fetch the
essential and optional items from the "all-systems" folder. For
example, this would be
all-systems/ SeqPup.help, SeqPup.prefs, tables/*, seqs/*
plus
mac/ seqpup-mac-68k.hqx and seqpup-mac-apps.hqx
or
mswin-i86/ seqpup16.zip and spapp1.zip
or
unix/sun-sunos4-sparc/ SeqPup-sunos-mostat.gz and seqpup-
apps.tar.gz
The current software distribution comprises the following items.
all-systems/ mac/ mswin-i86/ unix/
all-systems/
SeqPup.help - help file (RTF format) essential
SeqPup-help.text - help file (plain text) optional
SeqPup.prefs - preferences file (plain text) essential
tables/ - data files used by SeqPup, essential
codon.table dro.cod hum.cod renzyme.table
color.table eco.cod rat.cod tob.cod
appsrc/ - source to applications called by SeqPup, optional
ChildApp.c captest.seq fastDNAml.doc
cap.src/ clustalw.doc fastDNAml.infile
cap2.doc clustalw.src/ fastdnaml.src/
seqs/ - test sequence files, optional
23+28SrRNA.gb captest.fasta fastdnaml.phylip
5srna.gb dros.ig testre.map6
blue.seq ecolac.seq testreseq.gcg
mac: - Macintosh, files are in binhex format
Readme
seqpup-mac-68k.hqx - SeqPup for Mac with Motorola 68000 processor
seqpup-mac-ppc.hqx - SeqPup for Mac with PowerPC processor
seqpup-mac-apps.hqx - child apps for mac, both 68k and PPC (fat
binaries)
mswin-i86: - MS Windows, files are in ZIP archive binary format
Readme
seqpup16.zip - Seqpup for MS Windows, 16-bit code
seqpup32.zip - SeqPup for MS Windows, 32-bit code
spapp1.zip - child apps for for mswin
unix: - Unix, files are in TAR, Gnu ZIP format
dec-alpha-osf/ - DEC Alpha computer with OSF/1 Unix
sun-sol2-i86/ - Sun Solaris 2 on Intel 80x86 processor
sun-sunos4-sparc/ - Sun SunOS4 on SPARC processor (or Sol2)
sun-sol2-sparc/ - Sun Solaris 2 on SPARC processor
sgi-irix/ - Silicon Graphics Iris
unix/dec-alpha-osf:
Readme SeqPup.gz seqpup-apps.tar.gz
unix/sgi-irix:
Readme SeqPup.gz seqpup-apps.tar.gz
unix/sun-sol2-i86:
Readme SeqPup.Z seqpup-apps.tar.Z
unix/sun-sol2-sparc:
Readme SeqPup.gz seqpup-apps.tar.gz
unix/sun-sunos4-sparc:
Readme
SeqPup-sunos-mostat.gz - Motif libraries are included (will run on
SunOS 4 or Solaris 2 lacking Motif libraries)
SeqPup-sunos-dyn.gz - Motif libraries are not included
seqpup-apps.tar.gz - child apps for SPARC
* Installing
SeqPup is distributed over the Internet in archive files. The archive
format used is commonly available on the computer system you use (HQX
self-extracting for Macintosh, ZIP for MS Windows, and tar + Gnu ZIP for
Unix). There is one primary program, several document and data files,
examples, and child application programs.
The current organization of files used by the program is:
SeqPup -- execuable, called "seqpup.exe" in MSDOS
SeqPup.help -- this document, in Microsoft RTF format
SeqPup.prefs -- settings for the program, in text format.
tables/ -- data files, required for Restriction maps,
translate and some other functions. These are
standard bioinformatics data files available and
updateable from various sources.
codon.table -- table of codon preferences, in GCG format
renzyme.table -- REBase data file, for restriction maps, in GCG
format
color.table -- table of color values for display of bases
hum.cod, tob.cod, eco.cod, and other codon preference tables that
can substitute for codon.table at your preference
apps/ -- a selection of external analysis applications.
clustalw -- multiple sequence alignment
cap2 -- contig alignment
fastDNAml -- phylogenetic analysis of sequences
Note for Sun systems: This program requires theMotif run-time libraries
that are commonly found on other XWindow systems. Motif is not standard
on SunOS and is not part of Solaris until verson 2.4. If you have
Solaris 2.3 or earlier, or SunOS, and do not know that your system
includes Motif, then you will need the version with statically bound
Motif libraries (SeqPup-sunos-mostat.gz).
If you have Solaris 2.4, or a version where Motif libraries are present,
you may still need to configure the system to let SeqPup know where they
are. In a Solaris 2.4 system, where motif lives in /usr/dt/lib by
default, this may be needed to run successfully:
setenv LD_LIBRARY_PATH "$LD_LIBRARY_PATH":/usr/dt/lib
** Installing preferences
In addition to these two folders and three SeqPup files, the program
will automatically create a personal preferences file in you computer
when you first run it. These preferences come from the SeqPup.prefs
file. The preferences file created on your system will be something
like this
System Folder:Preferences:seqpup.cnf - MacOS
c:\windows\seqpup.ini - MS Windows
~/.seqpuprc - Unix
The program will save various configuration information to this file.
You may edit this with a text editor. You may delete it and a new one
will be generated from the SeqPup.prefs file. You may not edit it while
the program is active (any such changes are lost). When the program is
updated in the future, new preferences are added, using the label
[version=123]
to indicate the version number.
The preference file format is as follows:
- Logical sections are indicated in brackets [section].
- Variables are denoted with a "name=value" format.
- Line starting with ";" indicates a comment and will be ignored.
The current release of the program may require some fiddling to install
correctly. This
is a known problem, and will be corrected in future releases. You will
want to look at and probably edit the file "SeqPup.prefs".
The following sections are important in getting the program to work
right, and may need to be edited.
[paths]
temp=
tables=tables
apps=apps
[data]
codon=tables:codon.table
renzyme=tables:renzyme.table
color=tables:color.table
If you use this on a Unix system or an MS DOS system, the current
configuration should work if you start the program from its folder,
e.g.,
cd /path/to/seqpup/
./SeqPup
But as is common on Unix, if you want to install this for use from any
directory, you will currently need to edit the prefs file and put a
fixed path to the SeqPup folders in it, as
[paths]
temp=/tmp
tables=/long/path/to/seqpup/tables
apps=/long/path/to/seqpup/apps
If you run SeqPup first, then decide to change parts of the prefs file,
you can have all users prefs be updated if you add the new prefs after a
new version number. This is the procedure:
a) add a higher version number at the end of the SeqPup.prefs file
[version=6]
b) add changed preference sections and values after that. You need not
remove or edit the original values (I hope...).
So for instance if the highest verson value in the prefs file is 5, then
add this at the end of the SeqPup prefs to get all users preferences
updated:
[version=6]
[paths]
tables=/new/path/to/seqpup/tables
apps=/new/path/to/seqpup/apps
An important caveat with this: New distributions of SeqPup will use new
version values to trigger preference updates. If the new distribution
has a lower version value than you have used, it won*t trigger an
update.
Child applications are configured for use with the SeqPup.prefs file.
Please see below the section Child Tasks.
* Source code and DCLAP
SeqPup is built on an object-oriented application framework, written in
C++, called DCLAP. This framework is designed to speed the development
of easy to use, complex programs with a rich user-interface. At this
point, DCLAP is still an unfinished framework, lacking in documentation.
However, it is rich enough at this point to build complex programs like
SeqPup.
DCLAP includes the following segments
DClap/ -- basic application framework, including command, control,
dialog, file, icon, list, menu, display panel, table view,
mouse tracker, child application, window and view classes.
Drtf/ -- rich text display handlers, including RTF, HTML document,
PICT and GIF image format readers.
DNet/ -- Internet connection tools, including TCP/IP, SMTP, Gopher
and preliminary HTTP classes.
DBio/ -- Biocomputing methods, included biosequence, restrict
enzyme, sequence editor, seq. manipulator, seq. output
classes.
New applications can be built to employ and reuse these classes fairly
quickly. Variations on the current methods are simple to add in the
class derivation method of C++. For instance, new document formats can
be added on the Drtf display objects, and new sequence manipulations can
be added in the biosequence handlers, by building on current methods.
DCLAP rests upon the NCBI toolkit, including the Vibrant GUI toolkit,
which is designed for cross-platform functioning. The successful genome
data browser Entrez is written with the NCBI toolkit.
All of this source is available without charge for non-profit use (see
copyright below). The NCBI toolkit portion is further available for
profit use, and such arrangements may be made for use of DCLAP.
DCLAP will never compete with commercial programming frameworks, but it
has the virtue of being freely available and redistributable, and
includes support specifically for biocomputing applications. If you are
undertaking a biocomputing project requiring a rich user interface, and
wish it to run on multiple computer platforms, this may be a worthwhile
choice, especially if you wish to redistribute your source code for the
benefit of the scientific community.
The DCLAP developer archive is at
Please contact Don Gilbert for further information on using this
framework in other applications.
* Copyright
This SeqPup program is Copyright (C) 1990-1995 by D.G. Gilbert.
All Rights are reserved.
gilbertd@bio.indiana.edu
Biology Dept., Indiana University, Bloomington, IN 47405
You may use this program for your personal use, to provide a non-profit
service to others.
You may not use this program in a commercial product, nor to provide
commercial service, nor may you sell this code without express written
permission of the author.
You may redistribute this program freely. If you wish to redistribute
it as part of a commercial collection or venture, you need to contact
the author for permission.
The source code to this program is likewise copyrighted, and may be
used, modified and redistributed in a free manner. Commercial uses of
it need prior permission of the author.
Any external applications that may distributed with SeqPup are
copyrighted by their respective authors and subject to distribution
provisions as described by those authors. At present this includes
ClustalW, by Des Higgins, CAP2 by Xiaoqiu Huang, and FastDNAml,
written by Joseph Felsenstein with modifications by Gary Olsen, Hideo
Matsuda and Ross Overbeek, is copyrighted by University of Washington
and Joseph Felsenstein.
Distribution of external analysis applications with this program is done
as a convenience for users, and in no way modifies the original
copyright. If there is a problem with this, instructions to users for
obtaining and installing external applications will be substituted.
No warranty, express or implied, is provided with this software. The
author is trying to produce a good quality program, and will incorporate
corrections to problems reported by users of it.
* Views
There are four main types of views or displays in SeqPup:
A multiple-sequence view which is the primary display when you open a
sequence document; the single sequence editting view; various print
views which result from an analysis, like the Restriction map; and
dialog views where you control some function.
Many of these views have dialog controls -- push buttons, check boxes,
radio controls and edittable text items -- to let you fine-tune a view
to fit your preference. Many of these views also will remember your
last preferences.
When a view has editable text items, including the sequence entry views,
most usual undo/cut/copy/paste features will work.
Two or more views of the same data are possible. Some of these are
truly views of the same data -- changes made in one view are reflected
in another. Other views are static pictures taken of the data at the
time the analysis was performed -- later changes to the data do not
affect that picture.
** Aligned multi-sequence view
The main view into a sequence document is the multiple sequence editor
window, which lists sequence names to the left and sequence bases as one
line that can be scrolled thru. Bases can be colored (now only nucleic
colorings) or black. Sequence can be editted here, especially to align
them, and subranges and subgroupings can be selected for further
operations or analysis. Entire sequence(s) can be cut/copied/pasted by
selecting the left name(s). Mouse-down selects one. Shift-mouse down
selects many in group, Command-mouse down selects many unconnected.
Double click name to open single sequence view. Select name, then grab
and move up or down to relocate.
Select the lock/unlock button at the view top to lock/unlock text
editting in the sequence line. With lock on (no editting) you can use
shift and command mouse to select a subrange of sequences to operate on.
Bases can be slid to left and right, like beads on an abacus, when the
edit lock is On (now default). Select a base or group of bases (over
one or several sequences), using mouse, shift+mouse, option+mouse,
command+mouse. Then grab selected bases with mouse (mouse up, then
mouse down on selection), and slide to left or right. Indels "-" or
spacing on ends "." will be added and squeezed out as needed to slide
the bases. See also the "Degap" menu selection to remove all gaps thus
entered from a sequence.
** Single sequence view
For entering/editting a single sequence, this view displays one sequence
with more info and control. Edit the name here (later other
documentation). Bring out this view by double-clicking sequence name in
align view, or choosing Edit from Sequence menu.
** Print views
Various analyses provide non-editable displays. These are usually save-
able as PICT format for editting in your favorite MacDraw program, or
print-able.
* Data files
SeqPup uses plain TEXT type files for its primary sequence data. These
files can be exchanged without modification with many other sequence
analysis programs. SeqPup automatically determines the sequence format
of a data file when openning it. You have an choice of several formats
to save it as. As of this writing, the GenBank format is prefered (see
bugs).
The program looks in the folder "tables" for text files containing
various data. At present these files include "codon.table",
"renzyme.table" and "color.table".
There is a "SeqPup.prefs" file which stores various user options like
window positions, mail address, child tasks. This is described more in
the Install and Child Apps sections.
Various temporary files are created for child tasks, generally in the
:Apps: folder. Currently you cannot run the Child Tasks portion of
SeqPup from a locked file server because these temporary files need to
be created where the child applications reside. Otherwise, SeqPup
should operate from a locked fileserver properly, and can be launched by
several users at once.
** Restriction Enzyme Table
The file called "renzyme.table" contains restriction enzyme data, as
distributed in REBASE by R.Roberts. The format used is identical to
that used by GCG software.
{ documentation ...}
Commercial sources of restriction enzymes are abbreviated as follows:
A Amersham (12/91)
B BRL (6/91)
...
X New York Biolabs (4/91)
Y P.C. Bio (9/91)
.. {< separates data}
;AatI 3 AGG'CCT 0 ! Eco147I,StuI >OU
AatII 5 G_ACGT'C -4 !
>EJLMNOPRSUVX
AccI 2 GT'mk_AC 2 !
>ABDEIJKLMNOPQRSUVXY
;AccII 2 CG'CG 0 ! Bsp50I,BstUI,MvnI,ThaI
>DEJKQVXY
;AccIII 1 T'CCGG_A 4 ! BseAI,BsiMI,Bsp13I,BspEI,Kpn2I,MroI
>DEJKQRVY
;Acc65I 1 G'GTAC_C 4 ! Asp718I,KpnI >DFNY
** Codon Table
The file called "codon.table" in folder "Tables" is used for translation
of nucleic to protein sequence, and for backtranslation. This file may
be replaced with a table of your choice in the following format (this
format is identical to that used by GCG software codon tables).
{ any documentation... }
AmAcid Codon Number /1000 Fraction .. {< data separator}
Gly GGG 1743.00 9.38 0.13
Gly GGA 1290.00 6.94 0.09
... { continue for 64 codons }
* Features
The following topics describe main features found in the SeqPup menus.
** File
New will create an align view of sequence data. New Text will create a
plain text document, which is the format of the sequence data files
also.
Open will open an exising file. The default choice will open a file of
sequences into a new window. You can choose "Sequence, append", or
hold down the SHIFT key, to open a sequence file and append it to an
existing alignment window.
Other Open options include opening a plain text file, a file of
phylogeny trees in Newick format (see Phylip documentation), or a
Gopher document.
Save, Save as, Save a copy in, all will save the current document to
disk files. Revert will restore the open align view to the last version
saved to disk.
Save selection, Saves only highlighted sequences to a new disk file.
Doesn*t affect save status of current full alignment document.
Print setup, print will print the current view.
Help brings up a view to page thru the help file.
Preferences will set some user preferences.
** Editing
Undo, cut, copy, paste, clear, select all -- these standard mac commands
will operate on text as well as on sequences in (hopefully) intuitive,
usual ways.
Find, Find same, Find "selection" will search for strings in text.
Replace, replace same will replace target strings (not yet enabled).
** Sequence manipulations
New sequence -- append a new, blank sequence to the sequence document.
Edit -- open single sequence editting view for selected items.
Reverse, Complement, Rev-complement -- Reverse, complement or
reverse+complement a sequence. Works on one or more sequences, and the
selected subrange.
Rna-Dna,Dna-Rna -- Convert dna to rna (t->u) and vice versa. Works on
one or more sequences, and the selected subrange.
Degap -- remove alignment gaps "~". Works on one or more sequences,
and the selected subrange. Gaps of "-" are locked and not affected by
Degap. Works on one or more sequences, and the selected subrange.
Lock Indel & Unlock Indel -- Convert from unlocked gaps "~", to locked
gaps "-". Unlocked gaps will disappear and appear as needed as you
slide bases left and right. Locked gaps are not affected by sliding nor
by Degap. Works on one or more sequences, and the selected subrange.
Consensus -- generate a consensus sequence of the selected sequences.
Translate -- translate to/from amino acid. Relies on Codon.Table data.
Pretty print -- a prettier view of a single or aligned sequences. Use
these views to print your sequences. Printing from the editing display
will not be supported fully, and may not print all of your sequence(s).
Restriction map -- Restriction enzyme cut points of selected sequence.
Also protein translation options.
Dotty plot -- provide a dot plot comparison of two sequences.
Nucleic, amino codes -- These provide both reminders of the base codes,
and a way to select colors to assocate with each code (new in v 1.9a).
See below for some discussion of the two "aa-color" documents that now
ship with SeqPup.
* Child Tasks
The "ChildApps" menu lets you link SeqPup with external sequence
analysis programs that you or others may write. SeqPup can be
configured to launch any other application, and to send it sequence data
and command information. When the child program is finished with its
analysis, SeqPup can open and display results files from the child in a
variety of formats, including text, biosequence, PICT, RTF and GIF. On
Macs, the ChildApps menu requires System 7 to operate.
The general design of child applications is taken to be data analysis
programs that have a simple command-line user-interface, and that take
input data from a file or from the system "standard input" file (stdin),
and that write outputs to files and to two system standard files
"standard output" (stdout) and "standard error" (stderr). This is how
many existing analyses programs work, and it is very straightforward to
program this basic kind of user-interface.
The value of SeqPup joined with these kinds of programs is that the
SeqPup can concentrate on providing an easy-to-use interface for
biologists, and the analysis application can concentrate on data
analyses, without having to add a lot of software baggage to provide a
more usable interface.
A desired addition to SeqPup will be a dialog to configure new and
current child tasks. However, at present this needs to be done by using
a text editor to change the SeqPup.prefs file.
** Configuring child applications
You can add new child apps by editing the text file SeqPup.prefs. You
will need to update the section [apps] with a new line for you new app,
then install a new section, [newappname]. You will also need to
increase the [version=#] value, as described above in the Installation
section, for the program to take notice of your changes.
The [apps] section contains a list of child app sections, and the menu
title string. E.g.,
[apps]
clustal=ClustalW Multiple align...
The clustal= line says there is a child app section called clustal, and
its menu title is "ClustalW Multipla align..."
Then the section for [clustal] includes these variables
desc= descriptive string, displayed in the launch dialog
path= path to application, using variables defined in [paths] section
help= path to help document, ditto
cmd= command line passed to application
infile= path/name of input data file, using variables defined in
[paths] section
seqformat= format for sequence input data file
minseq= minimum number of sequences required for application
outfile1= first output file, and file format in pseudo-mime notation
outfile2= second output file, and file format in pseudo-mime notation
... etc... for more output files.
All the lines which specify file paths should use the variables defined
in the [path] section for an easy way to make these descriptions
portable to other systems. The [paths] section specifies variables for
file paths then gives their complete specification on the local file
system, e.g.,
[paths]
temp=/tmp
apps=/long/path/to/seqpup/apps
Then in an application variable use the syntax "$pathvar:" to insert the
local path variable. For example, use
help=$apps:clustalw.doc
This will be translated by the program to
help=/long/path/to/seqpup/apps/clustalw.doc
If no path is specified, the default path will generally be, on
Macintosh, where the program file was when launched, and on Unix and
MSDOS, where the command line was executed from.
The command line variable "cmd" should specify files and other
parameters that the child application needs to read.
The current selection of "seqformat" sequence input formats includes the
following:
genbank, fasta, embl, nbrf, pir/codata, gcg, msf, phylip, paup/nexus,
asn1.
The current selection of pseudo-mime notations known by SeqPup used to
specify the return data formats includes biosequence formats, basic text
and image formats:
biosequence/genbank, biosequence/fasta, etc.. for sequence formats
biotree/newick - newick style phylogenetic tree, not yet
displayable
text/plain, text/rtf, text/html - text file formats
image/pict, image/gif - image file formats
Seqformat for the input file now is not in pseudo-mime format, but may
change to that for consistency with output formats. That would be
"biosequence/fasta" instead of just "fasta".
** Current child app configuration
Current configuration of child apps in SeqPup.prefs file
[apps]
clustal=ClustalW Multiple align...
cap=CAP Contig assembly...
fastdnaml=FastDNAml...
;dnaml=Phylip DNAML...
[clustal]
desc=A multiple sequence alignment application
path=$apps:clustalw
help=$apps:clustalw.doc
;cmd=/infile=$temp:clustal.inseq /outfile=$temp:clustal.outseq /output=gcg /align
cmd=/infile=clustal.inseq /outfile=clustal.outseq /output=gcg /align
infile=$apps:clustal.inseq
seqformat=nbrf
minseq=2
outfile1=$apps:clustal.outseq biosequence/msf
outfile2=$apps:clustal.dnd biotree/newick
[cap]
desc=A gel contig assembly application
path=$apps:cap2
help=$apps:cap2.doc
;cmd=$temp:cap.inseq $temp:cap.outseq 20 85
cmd=cap.inseq cap.outseq 20 85
infile=$apps:cap.inseq
seqformat=fasta
minseq=2
outfile1=$apps:cap.outseq biosequence/fasta
dlog1=input name=minoverlap value="20" title="Min. number bases
overlap"
dlog2=input name=pctmatch value="85" title="Percent match"
[fastdnaml]
desc=A faster DNA max likelihood phylogeny estimator
path=$apps:fastDNAml
help=$apps:fastDNAml.doc
cmd=
infile=$apps:infile
seqformat=phylip
minseq=2
outfile1=$apps:outfile text/plain
outfile2=$apps:checkpoint.0 text/plain
* Internet
The Internet features of SeqPup let you interchange ideas and data with
people and biocomputing services around the world. If your Mac is
connected already to the Internet, you probably are familiar with
electronic mail and some of its uses.
SeqPup includes a selection of network access features in the developing
area of networked biocomputing. You will find access to me, at least to
get comments and bug reports to me, very easy. There is a feature to
send and receive e-mail, as well as mail links to customized e-mail
services. These include searching for sequence similarity via BLAST and
FastA programs on the Genbank/Intelligenetics computers, fetching
sequences, data and software from Genbank and EMBL.
There is now an feature called Gopher, which gives you access to a wide
range of information services now developing on the Internet. Gopher is
something like Telnet or FTP (file transfer), but also different. It
includes some of the keyword searching features of WAIS (Wide Area
Information Services). There are currently several biology gopher
services found around the globe. These include fast and up-to-date
keyword searches of GenBank, EMBL, PIR and other important biology
databanks.
** Internet requirements
All features of this menu depend on a network link to the Internet, and
Mac: MacTCP software from Apple Computer, or equivalent.
MS Windows: WinSock.dll software from various vendors
Unix: TCP should be standard software
If you have problems in general with SeqPup network functions, make sure
that other TCP-based applications work on your computer before reporting
the problem. You may need to work with computer support people at your
site to iron out general network problems.
** Mail Preferences
The mail prefs dialog asks for your return e-mail address, and your
preferred SMTP mail host. These addresses may be similar.
Return e-mail address: This is where another person should send mail so
it will reach you.
Example: Bob.Jones@Bio.Indiana.Edu
or: bjones@sunflower.bio.indiana.edu
SMTP Mail host: This is the internet address of the computer thru which
SeqPup will send out mail to the rest of the world.
Example: Sunflower.Bio.Indiana.Edu
** Send Mail
Send an electronic mail message. You must enter an address to send to,
and have entered your return address in the mail preferences dialog.
* Mail-based Search and Fetch
Various network resources provide biocomputing services thru e-mail.
These include retreiving sequence entries from the various databanks
(GenBank, EMBL, PIR), fetching help documents, and searching for
sequences in the databanks that match your query sequences.
** Sequence Searching
Mail based servers for searching databanks against your query sequence
include FastA and BLAST searches for nucleic or protein sequences at
GenBank/IntelliGenetics, and protein searches at PIR.
** Gene Prediction
There are, as of Feb 1992, two e-mail based services for analyzing
nucleic acid sequences and predicting gene structure. These services
use a variety of analyses and combine them to provide their best "guess"
at gene structure.
Geneid is an Artificial Intelligence system for analyzing vertebrate
genomic DNA and prediction of exons and gene structure (1). A prototype
is implemented as a fast, automatic email-response system.
Grail is an interface to a system which will ultimately provide
automated gene assembly from DNA sequence data. Currently the system
provides analysis of protein coding potential of a DNA sequence. The
coding recognition module (CRM) uses a multiple- sensor neural network
approach to identify coding exons than are at least 100 bases long.
Both of these services ask that you register once before using them.
** Sequence Fetching
Mail based servers for fetching databank entries include services from
GenBank/NCBI, Univ. of Houston, PIR, and EMBL.
* Color Selections
You can create your own color selection for alignment display by
choosing the Nucleic codes or Amino codes dialogs from the Sequence
menu. These dialogs provide color "buttons" for each base. Click a
button to get a color picker dialog where you can change the currently
assigned color. Your selection can be saved to disk file as an amino
color or a nucleic color document. You can reload such a color scheme
by clicking open this document, or by choosing it from the File "Open*"
dialog.
A few early users of this new version provided two of the color amino
selections that ship with SeqPup. Here are their descriptions.
Date: Fri, 28 May 1993 20:07:26 -0500
From: ahouse@hydra.rose.brandeis.edu (Jeremy John Ahouse)
Subject: implemented aa colors for pre-rel seqApp
Don Gilbert (& Phil Carl),
I have implemented Phil Carl's(*) modest proposal.
Some of the suggestions were not possible, so I made changes.
Jeremy Ahouse
Phil's suggestion is interspersed with my additions:
Well, I have (as they say) a modest suggestion. I suppose what people
are really seeking are 20 colors for 20 amino acids. I have a
preliminary
proposal based on classifying the amino acids into chemical groups and
finding what seems to me to be easy pneumonics for each group. Thus
I would propose:
Red for acidic amino acids; Glu, Asp
(since red is a common danger signal and acids are dangerous
(well maybe not amino acids, but it's a start))
hue: 65500
saturation: 65000
brightness: 50000
Blue for basic amino acids; Lys, Arg, His
(blue and basic both start with "b")
hue: 44000
saturation: 65000
brightness: 50000
White for hydroxyl amino acids; Ser, Thr (as in whitewater)
(this was not possible so I chose a cool "whitewater" color)
hue: 33000
saturation: 65000
brightness: 50000
Green for amide amino acids; Asn and Gln
(since glutamine and asparagine rhyme with green)
hue: 22000
saturation: 65000
brightness: 50000
Yellow for sulphur amino acids; Cys, Met
(this one's obvious)
hue: 12000
saturation: 65000
brightness: 60000
Black for hydrophobic amino acids; Ala, Val, Leu, Ile
(Black is the opposite of white and so if white is for hydrophilic
hydroxyl amino acids black is a natural for hydrophobic ones)
hue: 00000
saturation: 00000
brightness: 00000
Orange for aromatic amino acids; Tyr, Phe, Trp
(since "orange" sounds a little like "aromatic" and
oranges are aromatic (if that suits you better))
hue: 7000
saturation: 65000
brightness: 60000
Purple for proline; Pro
(since both have "prl" in them)
hue: 51000
saturation: 65000
brightness: 60000
Grey for glycine; Gly
(since both start with "g" and grey is sort of blah-like glycine)
hue: 00000
saturation: 00000
brightness: 30000
*Phil Carl
Assoc. Director
Program in Molecular Biology and Biotechnology
University of North Carolina, Chapel Hill
======================
Date: Mon, 7 Jun 1993 15:50:09 +0200
From: Heikki.Lehvaslaiho@Helsinki.FI (Heikki Lehvaslaiho)
Subject: aa colors
Hi,
I am including a file with amino acid color codes that are used in
Steven
Smith's GDE. This scheme was not mentioned in the Usernet discussion,
but
I've grown accustomed to it. At least, it is no worse that any other of
the
myriad possible coloring choices.
If you haven't got other schemes in files yet, drop me a note and I'll
see
what I can do.
GDE aa-colors:
2 4 - b i t M a c
COLOR AA R G B R G B
---------------------------------------------------------------------
Magenta AGPST 255 000 255 65535 0 65535
Black BDENQZ 000 000 000
Red C 225 000 000 57600 0 0
Blue FWY 000 000 255 0 65535 65535
Light blue HKR 000 192 192 0 49344 49344
Green ILMV 000 192 000 0 49344 0
Gray JOUX 145 145 145 37265 37265 37265
-Heikki
* Bugs
v0.4 Known bugs and missing features:
General:
- Single sequence editor (Sequence/Edit) is very slow for long
sequences (6,000bases)
- Repeated copy/cut/paste of the alignment window entries might
cause problems. Copy of sequences between windows may lead to
problems. Please let me know if you see this.
- copy/cut/paste/undo and clipboard functions may not be working as
smoothly in as many contexts yet as they should be.
- Sequence menu items not yet ready : Dot plot.
- Sequence/translate when done on a subsequence selection, will now
leave excess nucleic bases in selection?
- Edit menu items not ready yet: Show clipboard
- Find-again may still fail if there was no previous Find (fixed now
in source)
- Internet menu needs testing & reworking - I haven*t tested any of
the e-mail services listed since last year.
- Nucleic codes picture shows PICT processing bug -- misplaced text,
and an error in biology -- complement of W is W, not S, and
complement of S is S, not W.
- Rich Text, PICT and GIF Image format displays all have various
display glitches. Documents in these formats will be displayed for
the most part but some RTF or images may show mistakes. Some of this
is platform-dependent.
- The current release may require some fiddling to install correctly
(see Installing).
- pretty print and map output cannot yet be saved in a picture file
format, only in text file format.
- a dialog function to install new child apps, and to remove and edit
current ones, is desirable. Configurable dialog functions for any
child app are desirable.
- Windows menu should list current windows directly, but base toolkit
doesn*t yet handle menu item additions/deletions after program
start.
- Pretty print display should allow user selections for alignment
boxes and shading.
- Should File/Open> open sequence / open text,rtf,etc / open append
submenu items be promoted to main File menu items for easier use?
- Replace-find function is not ready yet.
- Option dialogs for selecting tables (codon, renzyme, color) should
allow direct editing of table values.
- Selection highlight in align window leaves messy box after
deselection (cosmetic bug).
- Single edit window key checking beep works on name as well as
sequence data.
- Scroll bar is slightly misplaced in rich text window.
- horizontal scroll in pretty print windows doesn*t work right.
- item selection in rich text and pretty print windows doesn*t
display properly.
- documentation (this file) is not complete yet. Need more
description and examples on how to use the methods.
MS Windows specific:
- FIXED 10July95: a child application usually launches and runs properly (but no
multitasking), but SeqPup chokes when the child app terminates.
- Text editing in alignment window doesn*t track properly when window
is scrolled.
- standard system copy/paste/cut/undo command keys are not yet
supported.
- application crashes or lockups may be too frequent to make this
currently usable. Some feedback from users will help decide which
bugs to attack first.
- printing has not yet been tested from MS Windows (no printer on my
mswin box).
- select-all in align view highlights part of sequence lines when it
should not.
- About-app image doesn*t display -- due to draw pict bug with non-
256 color images.
- Some dialog text items (e.g., seqprint prefs reenzyme range) don*t
show and allow edits.
- program chokes on quit or on window close sporadically.
XWindows specific:
- Text editing in the alignment window (unlock text) doesn*t yet work
-- the sequence disappears in edit mode.
- command keys are not yet supported as on Mac and MSWin systems.
- there is frequently an XText error message written to command line
or console just before certain XWindow operations. This doesn*t
seem to cause problems yet, and can hopefully be ignored until I
trace and squash it.
- Child Apps fail in various ways
-- CAP seems most likely to succeed completely.
-- ClustalW and FastDNAml may be launched and run properly, but
SeqPup will fail to automatically open their results files.
Possibly the fork/exec doesn*t terminate properly.
-- Launch dialog window caused some conflict w/ lauch of app such
that when it is deleted, the main app dies. Currently this launch
dialog is disabled in XWindows (menu item launches app directly).
- XWindows versions always crash/core dump when Quit is chosen. This
is an annoyance but doesn*t seem to impair use. I*ll track it down.
- application can get confused at times about which window is active
and front most. This is obvious when a function such as copy/paste
acts in the wrong window. Sometimes repeated selection of items in
front window will un-confuse the app.
- You will probably need to edit the SeqPup.prefs &/or ~/.seqpuprc
file to put in fixed paths to tables/ and to apps/, and to change
the paths to child app data files.
- There is no printing for X Window systems. This is not really my
problem as much as it is the X Window design committee*s problem.
Among over 25 pounds of X Window programming books I have, THERE IS NO
MENTION OF HOW TO DEVELOP SOFTWARE FOR PRINTING FROM X WINDOWS APPLICATIONS. I
doubt the XWin committee views this as important, but most software
users I know like to print documents on occasion. I*ll handle this
oversight sometime, but it won*t be simple. Macintosh and MS
Windows both provide methods for printing.
- SGI version only -- messes up with RTF and probably Text document
display.
- About-app image doesn*t display -- due to draw pict bug with non-
256 color images.
* Future Features
Here is a list of things which may be added to SeqPup in the future,
depending on your interest. Please send in your suggestions! What do
you want to see to make this a good biosequence editor and analysis
program?
Sequence documentation handling. Currently no provisions for
documentation per sequence. This will at least change to a window for
any comments and saving it into files (where file format permits).
Possibly I will put effort into dealing with the features, references,
etc., in a fashion along lines of Genbank/EMBL documentation structure
&/or Authorin documentation. Your comments on the importance of this are
desired.
Feature table parsing -- pull out subsequences from Gen/EMBL feature
info.
Align, single sequence pretty print -- header, page numbering user prefs
should be added.
Restriction map -- Could use some speed-up. Some would like graphic map
(i.e., one line or circle w/ cut points per zyme).
Simple protein analysis routines, better protein handling.
Methods to transparently use networked child tasks (e.g., on fast
compute servers).
* History
SeqApp was started Sept. 1990 as MacApp sequence editor/analysis
platform on which analysis programs from other authors, typically
command line w/ weak user interfaces, could be easily incorporated into
a useable Mac interface.
July 95: Version 0.4 of SeqPup. This includes most of the features of
its ancestor SeqApp. Alignment window: shift & slide sequences,
copy/cut/paste/undo sequence entries among windows; Restriction maps and
pretty print output; useable child apps for mac, mswin, and unix.
v0.4 corrections:
- File/Open for non-sequence data (text, rtf, etc.) has alternate
open menu, to distinguish from sequence data. Added sequence append-
open.
- Cut/copy/paste/undo for align-seq view now available
- Sequence menu items that are now ready: Consensus, Pretty print,
Restriction Map, nucleic & amino codes. Some of these need further work
(pretty, remap options).
- Child apps usage improved, may need more work though.
- The Mac/68K, Mac/PPC, MSWin, Unix now do Child applications.
- Include ClustalW, CAP, FastDNAml, child apps
- Restriction map function is extensively revised and improved.
- FindORF and Find string functions added
- Printing for pretty print, r.e.map now functional on Mac (and
maybe MSWin)
v0.4 Known bugs and missing features (see above Bugs section for fuller
list):
- Character editing (unlocked text) in the alignment (main) window
is not working on Xwindow systems, and may be bugging in MSWindow and
Mac systems.
- Single sequence editor (Sequence/Edit) is very slow for long
sequences (6,000bases)
- Sequence menu items not yet ready : Dot plot.
- Child Apps fail in various ways on MSWindows and Unix systems.
-- CAP seems most likely to succeed completely.
-- ClustalW and FastDNAml may be launched and run properly, but
SeqPup will fail to automatically open their results files.
- MSWindows and XWindows versions are less stable than Mac
versions.
- XWindows versions reliable crash/core dump when Quit is chosen.
This is an annoyance but doesn*t seem to impair use.
- Internet menu needs testing & reworking - I haven*t tested any
of the e-mail services listed since last year.
- Nucleic codes picture shows PICT processing bug -- misplaced
text, and an error in biology -- complement of W is W, not S, and
complement of S is S, not W.
- Repeated copy/cut/paste of the alignment window entries might
cause problems. Please let me know if you see this.
- There is no printing for X Window systems.
21 Mar 95: Second release of SeqPup, version 0.1. This release has more
parts of the SeqApp program put into it. This includes some alignment
view manipulations, limited use of child applications, some undo-able
commands, choosing data tables for colors, codon and r.enzymes. This
release also includes much of the basics of GopherPup, including display
of RTF, HTML, PICT, GIF document formats. However there is still some
work to be done to let you open these w/o interpreting them as sequence
data.
This release has just a Mac PowerPPC (SeqPup/PPC) and Mac 68000
processor (SeqPup/68K) versions. When more of the basic bugs are worked
out, I*ll try Sun and MSWindows versions.
v0.1 Known bugs/missing features:
- Use of character editing (unlocked text) in the alignment (main)
window will lead to a crash after a few windows have been opened/closed
or other manipulations performed.
- File/Open for non-sequence data (text, rtf, etc.) may well
mistakenly identify them as sequence data. File/New is probably not
doing anything useful, or bombing.
- Single sequence editor (Sequence/Edit) is very slow for long
sequences (6,000bases)
- Single seq. editor may be failing in various ways (I*ve not
looked at it carefully yet).
- No cut/copy/paste/undo for align-seq view yet (coming soon I
hope).
- Internet menu needs reworking - I haven*t tested any of the e-
mail services listed there since last year.
- Sequence menu items not yet ready : Consensus, Pretty print,
Restriction Map, Dot plot, nucleic & amino codes.
- Child apps usage needs more development to work smoothly.
- The Mac/68K version fails when using Child applications.
- Only the ClustalW child app is ready for distribution (may have
FastDNAml, CAP, and DNAml soon -- let me know of programs you would like
to see here).
1 Mar 94: First public release of SeqPup, version -1.
It has plenty of bugs and missing features, including:
no Undo (this is a real bite to those used to it)
mostly no cut/copy/paste/clear
limited printing of documents or views
mostly no align-view manipulations (move,cut/copy,edit in
place, shift, ...)
no pretty print views
no restriction maps
no dot plots
no ...
problems w/ window display & keeping track of active window
(x,mswin)
I'll be adding back many of these features from the Macintosh SeqApp as
time permits.
12+ June 93, version 1.9a157+ -- a semi-major update, and time extension
release with various enhancements and corrections. These include
-- lock/unlock indels (alignment gaps). Useful when sliding bases
around
during hand alignment, to keep alignment fixed in some sections.
-- color amino (and nucleic) acids of your choice.
-- added support for more sequence file formats: MSF, PAUP, PIR.
SeqApp now relies on the current Readseq code for sequence reading &
writing.
-- save selection option to save subset of bases to file.
-- addition the useful contig assembly program CAP, written by Xiaoqiu
Huang.
-- major revision of preference saving method (less buggy, I hope)
-- major revision of the underlying application framework, due to
moving from MacApp 2 to MacApp 3.
-- fixed a bug that caused loss of data when alignment with a
selection was saved to disk.
5 Oct 92, version 1.8a152+ -- a semi-major update with various
enhancements and corrections. These include
- corrections to the main alignment display,
- improvements to the help system,
- major changes to the sequence print-out options,
-- including addition of a dotplot display (curtesy of DottyPlot),
-- a phylogeny tree display (curtesy of TreeDraw Deck & J. Felsenstein*s
DrawTree),
-- improved Pretty Print, which now has a single sequence form and a
better aligned sequence form,
-- improved Restriction map display,
- addition and updating of several e-mail service links,
-- including Blast Search and Genbank Fetch via NCBI,
-- BLOCKS, Genmark, and Pythia services,
- updated Internet gopher client (equal to GopherApp),
- editable Child Tasks dialogs
- addition of links to Phylip applications as Child Tasks
- addition of Phylip interleaved format as sequence output option
11 June 92, version 1.6a35 is primarily a bug fix release. Several of
the disasterous bugs have been squashed. This version now works on the
Mac SE model, except for sendmail. No new features have been added.
7Jun92, v. 1.5a?? -- fixed several of the causes of mysterious bombs
(mostly uninitialized handles), link b/n multiseq and 1-seq views is
better now, folded in GopherApp updates, death date moved to Jan 93,
25Mar92, v1.5a32 (or later). First release to general public. Includes
Internet Gopher client. Also released subset as GopherApp for non-
biologists.
4Mar92, v 1.4a38 -- added base sliding in align view. Bases now slide
something like beads on an abucus. Select a section with mouse, then
grab section and shift left or right. Gaps are inserted/removed as
needed. For use as contig aligner, still needs equivalent of GCG
GelOverlap to automatically find contig/fragment overlaps.
Also added "Degap" menu item, to remove "." and "-". Fixed several
small bugs including Align pretty print which again should display.
2Mar92, v 1.4a19 -- fixed several annoying bugs, see SeqApp.Help,
section on bugs for their resolution. These include
Complement/Reverse/Dna2Rna/ Translation which should work now in align
view; Consensus menu item; entering sequence in align window now doesn't
freeze after 30+ bases; pearson/fasta format reading; ...
10Feb92, v 1.4a6 -- fix for Mac System 6; add Internet service dialogs
for Univ. Houston gene-server, Geneid @ BU, Grail @ ORNL; correct About
Clustalv attribution.
5Feb92, v 1.4a4 -- limited release to network resource managers,
clustalv authors, testers.
Vers 1.4, Dec91 - Feb92. Dropped multi-sequence picker window, made
multi-align window the primary view (no need for both; extra confusion
for users). added pretty print, restriction map, sequence conversions.
Generalized "call clustal" to Hypercard-like, System 7 aware menu for
calling external tasks. Fleshed out internet e-mail objects, added help
objects, window menu, nucleic/amino help windows. Many major/minor
revisions to all aspects to clean out bugs. Preliminary release to a
limited set of testers (1.4a?)
Vers. 1.3, Sept - Dec91. Modified clustalv for use as external app
(commandline file, background task, ...). Added basic Internet e-mail
routines call clustal routine (preliminary child task) Many major/minor
revisions to all aspects to clean out bugs.
Jun91-Aug91: overwork at other tasks kept SeqApp on back burner.
Mar91-Jun91: not much work on SeqApp, fleshed out TCP methods (UTCP,
USMTP, UPOP).
Feb 1991, vers 1.2? made available to Indiana University biologists and
NCBI biocomputists.
Vers. 1.1, Oct 1990, multiple sequence picker and multiple sequence
alignement window, including colored bases, added to deal with alignment
and common multi-sequence file formats.
Version 1, Sep 1990. Single sequence edit window + TextEdit window,
from MacApp skeleton/example source + readseq.