ifc-language-server/client
Ryan Schultz 8838480f6e Add Ctrl+Click documentation links for IFC entities
Implements DocumentLinkProvider to make IFC entity type names clickable,
opening the official buildingSMART documentation in the browser.

Features:
- Automatic schema version detection (IFC2X3, IFC4, IFC4X3)
- Complete entity-to-package mapping for IFC2X3 (653 entities)
- Complete entity name mapping for IFC4X3 (876 entities with PascalCase)
- Proper URL generation for all three schema versions:
  * IFC2X3: https://standards.buildingsmart.org/.../[package]/lexical/[entity].htm
  * IFC4: https://standards.buildingsmart.org/.../link/[entity].htm
  * IFC4X3: https://ifc43-docs.standards.buildingsmart.org/.../lexical/[Entity].htm

Usage:
- Ctrl+Click (or Cmd+Click on Mac) on any IFC entity name in an .ifc file
- Tooltip shows "Open [ENTITY] documentation ([SCHEMA])"
- Browser opens to the correct buildingSMART documentation page

Files added:
- client/src/ifcDocumentationLinkProvider.ts - Main provider implementation
- client/src/ifc2x3-mappings.txt - IFC2X3 entity to package mappings
- client/src/ifc4x3-mappings.txt - IFC4X3 entity to PascalCase mappings
- client/src/generate-ifc-provider-FINAL.py - Script to regenerate provider

The provider is registered in extension.ts for the 'ifc' language.
2025-12-07 18:31:35 -06:00
..
node_modules Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
out Add Ctrl+Click documentation links for IFC entities 2025-12-07 18:31:35 -06:00
src Add Ctrl+Click documentation links for IFC entities 2025-12-07 18:31:35 -06:00
testFixture Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
package-lock.json Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
package.json Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
tsconfig.json Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
tsconfig.tsbuildinfo Add Ctrl+Click documentation links for IFC entities 2025-12-07 18:31:35 -06:00