Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>NexoRhino — Rhino Python IntelliSenseNew to Visual Studio Code? Get it now.
NexoRhino — Rhino Python IntelliSense

NexoRhino — Rhino Python IntelliSense

NexoNest

|
8 installs
| (0) | Free
Educational Rhino 8 / RhinoCommon Python stubs for Pylance: completions, signatures, and geometry documentation.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

NexoRhino — Rhino Python IntelliSense

Educational Python type stubs for Rhino 8 / RhinoCommon, with a focus on Rhino.Geometry. Get completions, signatures, hover documentation, and geometry learning notes in VS Code. The stubs are bundled: no pip command is required.

Quick start

  1. Install this extension, along with its Python and Pylance dependencies.

  2. Open your Python project folder in a trusted VS Code window. NexoRhino configures Pylance automatically, including each folder in a multi-root workspace.

  3. Open a .py file and try:

    import Rhino.Geometry as rg
    
    point = rg.Point3d(1.0, 2.0, 3.0)
    point.  # Request completion here; remove the trailing dot before execution.
    

Hover over Point3d for documentation. If completion does not refresh, run Python: Restart Language Server or Developer: Reload Window.

How it works

On startup and when folders are added, NexoRhino sets python.analysis.stubPath using VS Code's Configuration API. It never edits the settings file directly. In a single-folder window this is a workspace setting; in a .code-workspace window it is a separate folder setting, leaving the workspace-wide value alone.

If you already have a custom stub path, automatic setup preserves it and displays a notice. Run NexoRhino: Repair IntelliSense Configuration from the Command Palette to replace it after confirmation. This command also restores configuration after Disable. VS Code supports one stubPath, so replacing a custom path may make other custom stubs unavailable. The old nexorhino.enable command ID remains an alias.

NexoRhino: Disable Rhino IntelliSense restores the previous folder setting. It also opts that folder out of automatic configuration, including after reloads. Run this command before uninstalling the extension. Manually changed settings are preserved. On extension upgrades, managed paths are refreshed automatically.

The configured path is machine-specific and appears in .vscode/settings.json; avoid sharing that absolute path with other machines. No manual JSON edit or pip installation is needed. For SSH/WSL/containers, install the extension in the remote workspace. Virtual workspaces are not supported.

Import diagnostics

reportMissingImports means the import could not be resolved: check that Python and Pylance are enabled, open a folder, and use Repair if a custom stub path prevented automatic setup.

reportMissingModuleSource ("could not be resolved from source") means the stub was found but the corresponding runtime source was not. This is expected when editing Rhino scripts outside their runtime. Starting with 0.1.3, NexoRhino sets python.analysis.diagnosticSeverityOverrides.reportMissingModuleSource to none in each folder it configures, so this warning does not require a per-file comment.

Pylance applies this rule to the whole folder, not just Rhino imports: missing runtime-source warnings for other packages in that folder are also silenced. reportMissingImports and all unrelated diagnostic rules are left unchanged. Disable restores the original local value, preserving other rules and later user edits. If you change this severity yourself, automatic refresh respects it; Repair explicitly reapplies NexoRhino's configuration.

A separate Python interpreter is not required to install the extension or read its bundled stubs. Select one when you need execution or analysis of other packages.

Scope

This is version 0.1.4 (stable), bundling the NexoRhino-py-stubs 0.1.0a1 baseline. Coverage of RhinoCommon is partial. Generated signatures and .NET interop details may need validation inside Rhino. This extension provides editor assistance; execute your scripts in a compatible Rhino environment. It does not install Rhino or provide a Python runtime implementation of RhinoCommon.

Links

  • Project page
  • Python package on PyPI

This is an independent community project. See the NexoRhino proprietary license.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft