Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>STAR*NET Language SupportNew to Visual Studio Code? Get it now.
STAR*NET Language Support

STAR*NET Language Support

Rook-Survey-Tools

|
2 installs
| (0) | Free
Syntax highlighting and hover support for STAR*NET survey data files
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

STAR*NET Language Support for VSCode

Visual Studio Code extension providing syntax highlighting and intelligent hover tooltips for STAR*NET survey adjustment data files (.dat).

Features

🎨 Syntax Highlighting

Full syntax highlighting support for STAR*NET data files including:

  • Data Line Types: C, E, P, A, D, V, B, M, BM, DV, TB, T, TE, DB, DN, DM, DE, SS, L
  • Inline Options: .UNITS, .DELTA, .3D, .SCALE, .REFRACTION, and more
  • Comments: Lines starting with #
  • Angles: DMS format (123-45-30.5)
  • Bearings: N45-30-15E format
  • Fixity Symbols: !, *, &
  • Descriptors: Text following single quotes
  • Measurements: Coordinates, distances, elevations

💡 Hover Tooltips

Intelligent hover support showing:

  • Data Line Formats: Hover over line type codes (C, M, TB, etc.) to see expected format and examples
  • Inline Options: Descriptions of what each option does
  • Fixity Symbols:
    • ! = Fixed (observation will not be adjusted)
    • * = Free (observation has no weight/influence)
    • & = Default (use project default standard error)
  • Special Formats: HI/HT (Height of Instrument/Target), angles, bearings

⚡ Code Completion

Auto-completion suggestions for:

  • All data line type codes
  • Inline options with descriptions
  • Quick insertion with proper spacing

📁 Code Folding

Automatic code folding for:

  • Traverse blocks (TB...TE)
  • Direction sets (DB...DE)

Installation

From VSIX Package

  1. Download the latest .vsix file from releases
  2. Open VSCode
  3. Go to Extensions (Ctrl+Shift+X)
  4. Click the ... menu at the top
  5. Select "Install from VSIX..."
  6. Choose the downloaded .vsix file

From Command Line

code --install-extension starnet-language-support-0.1.0.vsix

Usage

  1. Open any .dat file in VSCode
  2. The extension will automatically activate
  3. Hover over any code element to see documentation
  4. Use Ctrl+Space for auto-completion suggestions

Example Data File

# Sample STAR*NET Project
.UNITS FeetUS
.3D

# Fixed coordinates
C 1 1000.00 2000.00 100.00 ! ! ! 'Control Point A

# Traverse
TB N45-30-40W 'Starting bearing
T 1 123-40-28 537.52 90-00-00 5.1/5.2
T 2 217-11-37 719.56 89-30-15 5.2/5.1
TE 5

# Measurements
M 2-1-3 134-45-12 2244.35 91-22-54 5.1/5.2 'Iron Pipe
A 3-2-4 102-34-12.5 2.5
D Roger-Frank 1034.23 0.05
B tower-flagpole N34-23-45.7E !

# Leveling
L 101-105 -7.476 12634 'BM to BM

Supported Data Types

Code Description
C/CH Coordinates (with optional ellipsoid height)
E/EH Elevation (with optional ellipsoid height)
P/PH Geodetic Position
A Horizontal Angle
D Distance
V Vertical Observation (Zenith/Elevation Diff)
B Bearing or Azimuth
M Measure (all observations to a point)
BM Bearing and Measurements
DV Distance and Vertical
TB/T/TE Traverse Begin/Point/End
DB/DN/DM/DE Direction Set Begin/Direction/Direction+Measure/End
SS Sideshot
L Differential Leveling
G0-G3 GPS Vector data

Inline Options Supported

  • .UNITS - Change units (FeetUS, Meters, etc.)
  • .DELTA - Toggle slope/zenith or horiz/elev diff mode
  • .ORDER - Change coordinate (NE/EN) or angle (AtFromTo/FromAtTo) order
  • .3D / .2D / .3REDUCE - Change data format mode
  • .SCALE - Apply scale factor
  • .REFRACTION - Set refraction coefficient
  • .PELEVATION - Set project elevation
  • .INSTRUMENT - Change weighting scheme
  • .ELLIPSE - Specify error ellipse output
  • .RELATIVE - Specify relative error ellipse connections
  • .PTOLERANCE - Specify positional tolerance checking
  • .MAPMODE - Use bearings/azimuths in traverses
  • .COPYINPUT - Control input data copying to listing
  • .LWEIGHT - Change leveling observation weighting
  • .DATA - Enable/disable data reading (debugging)
  • .CURVE - Enable/disable earth curvature corrections
  • .ADDCENTERING - Apply centering errors to explicit standard errors
  • .EDM - Set EDM error calculation method
  • .LOSTSTATIONS - Mark stations as lost (not shown on plot)
  • .ALIAS - Define point name aliases
  • .PRISM - Apply prism offset corrections
  • .NORMALIZE - Control normalization of reverse face observations
  • .INCLUDE - Include another data file
  • .SEPARATOR - Change station name separator
  • .LONGITUDE - Set longitude sign convention
  • .ELEVATION - Specify elevation type (orthometric/ellipsoidal)
  • .MULTIPLIER - Apply unit conversion multiplier
  • .VLEVEL - Convert STAR*LEV format data
  • .MEASURED / .GRID - Define observation types in grid projects

Requirements

  • Visual Studio Code version 1.75.0 or higher

Extension Settings

This extension works out of the box with no configuration required. It automatically activates when you open a .dat file.

Language Features

Syntax Highlighting Colors

The extension uses standard TextMate scopes that work with all VSCode themes:

  • Keywords (data codes): Theme's keyword color
  • Comments: Theme's comment color
  • Strings (descriptors): Theme's string color
  • Numbers: Theme's number color
  • Constants (angles, bearings): Theme's constant color
  • Operators (fixity symbols): Theme's operator color

Code Intelligence

  • Hover Information: Detailed format specifications and examples
  • IntelliSense: Context-aware code completion
  • Code Folding: Collapse traverse and direction set blocks

Known Issues

None currently reported. Please file an issue on the repository if you encounter any problems.

Release Notes

0.1.0

Initial release featuring:

  • Complete syntax highlighting for STAR*NET data files
  • Hover tooltips for data types, inline options, and special symbols
  • Auto-completion for data line codes and inline options
  • Code folding for traverses and direction sets
  • Support for all STAR*NET data formats (2D, 3D, GPS, leveling)

Contributing

Contributions are welcome! Please feel free to submit issues or pull requests.

Building from Source

# Clone the repository
git clone https://github.com/your-username/starnet-vscode.git
cd starnet-vscode

# Install dependencies
npm install

# Compile TypeScript
npm run compile

# Package extension
npm run package

# Install locally
code --install-extension starnet-language-support-0.1.0.vsix

Credits

Based on the STAR*NET adjustment software by MicroSurvey Software Inc.

Documentation reference: STAR*NET User Manual Chapter 5 - Preparing Input Data

Resources

  • STAR*NET Software
  • VSCode Extension API
  • TextMate Grammar Guide

Support

For issues, feature requests, or questions:

  • File an issue on GitHub
  • Check existing issues for solutions
  • Review the STAR*NET documentation for data format questions

License

MIT License - See LICENSE file for details


Enjoy using STAR*NET Language Support!

If you find this extension helpful, please consider:

  • ⭐ Starring the repository
  • 📢 Sharing with other surveyors and geodesists
  • 🐛 Reporting bugs or suggesting features
  • 🤝 Contributing improvements

This extension is not officially affiliated with MicroSurvey Software Inc.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2025 Microsoft