Strap − Graphical user interface to compare and align proteins by sequence and 3D-structure.


java -jar strap.jar [protein_files] [alignment_files]

java -jar strap.jar -script=[URL or File]

java -jar strap.jar -align="PDB:id1 PDB:id2 UNIPROT:id3 PFAM:PF0... ...

java -jar strap.jar [options] [protein_files] [alignment_files] [ @ file_with_list_of_protein_files]


The free computer program Strap aligns proteins by sequence and 3D-structure. Strap supports the simultaneous analysis of hundreds of proteins and integrates amino acid sequence, secondary structure, 3D-structure and genomic- and mRNA-sequence. Using standard methods, alignments are computed automatically based on sequence and structure. Import and export of single proteins is very easy by Drag-and-Drop.



Protein/alignment files
Strap can be started with protein files or alignment files as parameters. The following formats are supported: PDB, Swissprot, Embl, Genbank, GenPept, Fasta, multiple-Fast, Pir, ClustalW, MSF, Nexus, Prodom, Pfam, Stockholm and HSSP.

If at least one protein file is specified, Strap will choose the current working directory as the project directory. Otherwise the project directory is requested at the beginning of the session.

Files preceded by a @ sign are interpreted as lists of files.

Curly parenthesis are used for placing sequences into the same alignment row. At the UNIX command prompt, the parentheses need to be quoted. For example ’{’ protein1.seq protein2.seq ’}’ ’{’ protein3.seq protein4.seq protein5.seq ’}’ would put two proteins into the first and three proteins into the second alignment row. If there are more than one sequences in a row, only the top most sequence is displayed.

Loading of protein entries from remote databases:
The command line options -load=" space separated list of database entries " loads proteins or alignments given as URL or database-colon-id. The option -load=" ... " also aligns the downloaded proteins.

File Compression
Supported: .gz, .bz2 and .Z

Parts of proteins
To display only a subset of a protein, a suffix is appended to the protein file name. Residue subsets are specified by an exclamation mark and a subset expression after the protein file. Example: "!20-30,50-66". Residue numbering starts with one. To refer to pdb-residue numbers use the Rasmol/Jmol syntax PdbResNum:ChainLetter. Example: "pdb1ryp.ent!50:A-66:A".


Program options start with a dash. The values true and false can be abbreviated by t and f. The "=true" or "=t" can be ommitted. For example -noSeqres=true can be written as -noSeqres=t or -noSeqres. For most settings there is an equivalent check-box or choice menu in the graphical user interface.

If the Web-start script is started, the options are given as web-variable without the leading dash. For example for -noSeqres include noSeqres=t into the URL.


Prints this manual


Generates a comprehensive manual for the web browser.


Skip SEQRES lines of PDB files.


Do not load a sequence identical to an already loaded one.


Opens a certain dialog at start. The class name of a dialog is the tab-text can be obtained by opening the help text.

Examples: -dialog=DialogAlign or -dialog=DialogBlast or or -dialog=DialogDotPlot


Runs a script at start. See Script files in the current directory should be written with a leading "./" like "./myScript.txt" since Strap recognizes files by the presence of a slash and the absence of white space and colon.

Two or more script files can be given: -script5=http://...../file -script7=http://...../file. The optional number suffix defines the order of consecutively executed scripts.

Script commands can be given directly. Assume there are protein files in PDB format loaded by Strap. The option -script="open_3D viewName, *" would display all proteins with 3D-coordinates three-dimensionally (See -v3d=). Scripts consisting of more than one line should be stored in a file and the file path or URL should be given.


-script2="open_3D viewName, *" -script3="3D_select $ALL" -script7="3D_ribbons on" -script8="superimpose *"

−dasRegistry=Space-separated list of URLs of alternative DAS-registries

Only needed for DAS servers that are


Sets the Java class to superimpose proteins.

A short name can be used such as "tm_align" for "Superimpose_TM_align".

Example: -s3d=tm_align or -s3d=ce or -s3d=gangstaplus


Sets the Java class to compute structure based sequence alignments.

Examples: -a3d=tm_align or -a3d=mapsci or -a3d=matt or -a3d=mustang


Sets the Java class to display 3D-structures.

Example: -v3d=jmol or -v3d=pymol or -v3d=astex


Sets the Java class for aligning two amino acid sequences. Preferably an implementation in Java because native executables take longer to start. Default value is PairAlignerNeoBioPROXY.

Example: -aligner2=MultipleAlignerClustalW


Sets the Java class for aligning sequences and structures. The default value is clustalW.

Example: -alignerP=t_coffee


All 3D-commands which are sent to 3D-protein viewers are printed to stdout.

−useDebian=false −useDebian=true

If set to true, use the Debian packages for external programs rather than the program versions included in Strap. For example Strap would use /usr/bin/pymol instead of downloading and using the Pymol from

−sysProxies=true or -probeWebProxy=true or -probeWebProxy=false

See section Web proxies.


Do not use cached results of previous computations. This setting can be changed in the graphical user interface with a check-box.

This setting influences the result of searches in growing databases. For example consider the similarity search method Blast. With the cache turned on, Strap would present a previously computed Blast result even though new sequences might have been published since last run.


Do not delete temp-files after the session. This is only important for debugging.


This is an option of the java command and not of Strap. It sets the heap size to 500 Megabyte.


Sets the size and location of the application frame to width 666, height 333, horizontal screen position 11 and vertical position 22;


Examples: ( or short -laf=m) ( or short -laf=N) ( or short -laf=G)

-laf=javax.swing.plaf.metal.MetalLookAndFeel ( or short -laf=M)

Also non-standard Look-and-Feels can be used. Consider tinylaf which can be installed as a Debian package. The following two options would apply tinylaf:

-cp=/usr/share/java/tinylaf.jar -laf=de.muntjak.tinylookandfeel.TinyLookAndFeel

See also

−toFasta Protein or alignment files

Generates a sequence file in Fasta format for each loaded protein.

[=t/f] The user is asked each time data is uploaded to remote servers. The user might not want unpublished sequences to be sent to servers.

−askExec[=t/f] The user is asked when an external program is executed. Executing native programs might be regarded as security risk. There is a positive and a negative list which can be edited in the menu "Security" of the Preferences-menu.

−allowFileModification According to the default policy, files are only modified, created or deleted if they reside in the project directory or if the file path contains "StrapAlign". This is to prevent files to be lost. With this option file modification control is deactivated.


With the options −toMultipleFasta or −toClustal or −toMSF or −toHTML or −toWord, Strap can be used as a command line tool to generate multiple sequence alignment files. The protein or alignment files given in the command line are loaded and the output file is generated. Finally the program terminates. Prior file export, the proteins may be aligned:

java -jar strap.jar [alignment_files] -script="align *" -toMSF

Alignment format
Comma separated display options can be appended directly (!no space) after the output file name.

w=residues per line Setting output width

r=column range Example: 20-30

r=residue position range Example: aProtein/10-20

The following are valid only for html and word processor output:

h=%conservation Residues with higher conservation are highlighted.

s=schading shading= black|charge|hydropathy|chemical|nucleotide.

Example: -toHTML=output.html,w=70,h=55,s=hydropathy

Residue annotations in HTML alignment output.
Residue positions to be highlighted in the html output need to be defined with script commands. See option −script=Sript-file. The script command new_aminoacid_selection is used to create a new selection object and the commands add_annotation or set_annotation are used to attach information. The script may also be used to define the [gapped] amino acid sequences.


The project directory holds information for gaps, 3D-transformations, annotations and exported files. Usually, the protein files are also located in the project directory. The project directory path must not contain white space, such as "My data" or "Eigene Dateien". Therefore the project directory can usually not be located in the home directory on Windows-XP.


With the option -probeWebProxy=t, strap attempts to access the Web in three different ways: (1) Directly, without Web-proxy (2) With the settings found in the environment variable http_proxy and (3) using the default mechanism of Java to apply the system wide settings. With the setting -probeWebProxy=f, however, Strap will directly connect to the Internet. with the option -sysProxies=t Strap will use the Java-built-in mechanism to find the system wide settings, (which might not work properly, depending on the Java system).


Supported formats are Multiple-Fasta, ClustalW, MSF, HSSP. A colorized alignment with highlighted residue selections and secondary structure can be exported in HTML and PDF. The colorized HTML output can be modified in MS-Word or other text processors. The rendering styles of the PDF output can be stored in annotations of residue selections.


The following 3D-protein viewers are tightly linked with the alignment view: Pymol, Jmol, OpenAstex. The rendering styles can be stored within residue selections. There is a generic Rasmol like scripting language which can be applied to all embedded visualization software. If the desired effect can not be achieved with this generic commands, also specific commands can be associated with residue selections.


Christoph Gille © 1999-2012

License GPL


A comprehensive manual is created with the option -manual

jalview(1) clustalx(1) seaview(1) boxshade(1) pymol(1) openastex(1) strap-text-viewer(1)