Teamstudio Script Browser - LotusScript Code Navigator
Teamstudio Script Browser is a tool to help you use and navigate the LotusScript code stored within an IBM Lotus Notes database in a way that has never before been possible.
Navigating the various places where LotusScript can be defined is tedious and even confusing to even the most-seasoned Domino programmer. There is currently no way to easily navigate all the different ways that script can be linked together.
It’s common to have LotusScript code be defined in different places within a Notes database. Seeing all the code and moving around in Designer to edit that code is not a simple task. You can’t see what LotusScript functions are calling other LotusScript functions without performing a database-wide search. Teamstudio Script Browser solves all these problems.
Functional Features
Teamstudio Script Browser shows:
- All classes, functions and variables/members from the main tree, with 2 tabs to sort the code by script library, by class. Selecting something in the tree displays the properties of that function/class.
- For each class the member variables are identified along with the type
- For each function the local variables are identified along with the type
- The name of the script library in which the function is found.
- The line number on which the function is defined within the script library.
- How the function was declared, especially useful for when you simply want to know what parameters to pass to a function.
After installing Script Browser the following three toolbar icons will be available:
Using Teamstudio Script Browser
To use Script Browser, simply open a database in Domino Designer and click on the toolbar icon (
). Classes, functions, types, variables and constants are represented in the tree using the following icons:
Icon Key |
| Class |
| Script Library |
| Function / Sub |
| Property Get |
| Property Set |
| Private Function / Sub |
| Function override |
| Type |
| Public Variable / Member |
| Private Member |
| Function / Sub Parameter |
| External ‘C’ Declared functions |
| Constant |
The By Class and By Library show you a hierarchical list of all the shared LotusScript in your database.
Class Inheritance
Class inheritance is represented in Script Browser in two ways. The first way is by including the base class in the tree as a child of sub class. The second way inheritance is represented is by changing the color of the icons for each function that have been overridden from blue to red.
The class “DerivedClass” inherits from the class “BaseClass”. “DerivedClass” also overrides the subroutine “sub1” and the property “prop1”.
Window shade Mode
Double-clicking on the caption bar will cause the window to become compacted so you can continue working without Script Browser getting in your way. When the mouse moves into the compacted Script Browsers window, the window will automatically expand back to its original size.
Getting around
Copy To Clipboard – The Copy to clip board button will copy the text from the definition window to the clipboard so you can past it into the editor.
Refresh – The Refresh button will reload the Script Browser window by re-reading the database design. This will pick up any changes you have made to the code since the last time you launched Script Browser.
Right Click Menu
Right-clicking on something in the tree brings up a menu with two options:
Goto Definition: Opens the script library in Designer and then scrolls to the function. It will also highlight the code in Designer so you can find it easily. This function is only supported in Notes 6.
References: Scans the database for all the places the function or variable or member is called or referenced and displays them in a list. You can then double-click an item in the list and Script Browser will open the note in Designer and, if it is in a script library or agent, will navigate to the code.
Double-clicking on any function in LS Browser will bring you right to the function definition.

Goto Definition SmartIcon
The Goto Definition smart icon
works by looking at the text under the cursor in the LotusScript editor and then finding the definition of that symbol inside the code Script Browser has loaded in its window. For example, lets say there is a function being called in the script you are editing. In this example the ‘getString’ call is being used, but you are not sure what that does or where it is defined.
To use the Goto Definition function first, click on the text ‘getString’. Then click the ‘Goto Definition’ smarticon and Script Browser will open and jump to that item in the tree:Right away, you can see the function definition and that it is defined in the ‘Strings’ script library. From there you can then either double click on it and the function will open in Designer, or you can right click and find out all the other places that function is referenced. You can do the same thing for any of the custom defined symbols in the database. Script Browser will find the symbol no matter where it is defined.
Open Script Library SmartIcon
The ‘Open Script Library’ smart icon
works in a similar way to the ‘Goto Definition’ button.
First place the cursor on the name of a script library in the LotusScript Editor:
Then click the smart icon and Script browser will jump to the library you have selected.
System Requirements
Processor and memory specification per typical Notes installation
Microsoft Windows 95/98/NT (Release 4.0 or later) /2000/XP (as supported by Notes) on Intel (x86) platforms
Lotus Notes R5.x, R6.x, R7.x, R8.0 (Navigation feature requires Notes R6.x or higher)
New features in 3.00
- Performance has been significantly improved.
- A smarticon was added that allows you to jump directly to the definition of the symbol under the cursor in a LotusScript editor window.
- A smaricon was added that lets you open the script library that is currently under the cursor in a LotusScript editor window.
- Script Browser will load the library you are currently editing first then loads the rest of the window.
- Refresh button was added to the main dialog so you don't have to relaunch the window.
Fixes:
- The limitation with classes that were larger than 64k is fixed. Script Browser should now show all classes regardless of size.
- For performance reasons base classes are no longer inserted in the tree for derived classes. Adding
LSBLoadBaseClasses_ByLibrary=1 and
LSBLoadBaseClasses_ByClass=1 to the
[Teamstudio] section of the teamstudio.ini will restore this feature.
- For performance reasons the "Calls" tab has been removed.
Details on previous releases
Changes in 2.05.13
- Constants are now included in the tree.
- C Declares are now included in the tree.
- Class varibles are now listed in a sub folder.
- Now makes use of local cache database when loading the tree.
Changes in 2.01.25
+ Fixed a crash that was happening when closing or running Script Browser ver 2.01.10
.
Changes in 2.01.10
+ Script Browser now handles non-ascii characters correctly.
+ Variables that are dim'ed and new'ed in the same statement are now parsed correctly.
Ex:
Dim session as
New NotesSession
+ Variables that are dim'ed using a type suffix will display the correct type instead of 'Variant'
Ex:
Dim somestring$
now displays like:

+ Functions/Gets/Sets Now display a variable that has the same name as the function. So now you can find references to the return value of a function.

New features in 2.00
- Class member variables are now included in the tree.
- Types are now included in the tree.
- Local function variables are now included in the tree.
- References to variables are now supported.
- Multiple script browsers can be opened for different databases.
- Database path is now displayed in the title bar.
New features in 1.06
-Module level property get/set functions are now supported.
New features in 1.05
-Class inheritance information is now displayed in the tree. Refer to the ScriptBrowser PDF for more information.
New features in 1.02
- Window is now re-sizeable
- Window shade mode (double click in caption bar) now reacts to mouseover events. The Script Browser window expands when mouse is over the window, and contracts when the mouse leaves.
Fixes in 1.02
- The Toolbar icon installs more efficiently.
- Goto Definition now selects the correct function on R6.0.x
- References feature corrected to find all occurances of a function.
Click here to download the Script Browser user guide
Click Here to download the latest version of Teamstudio Script Browser