ifc-language-server/node_modules/decamelize
Ryan Schultz 8afacf268a Implemented a working Language Server Protocol (LSP) for IFC files with:
- Hover provider showing entity information and type
- Go-to-definition (F12) for entity references
- Basic IFC file validation (ISO-10303-21 header check)
- Entity parsing with regex-based detection
- Proper CommonJS module system (avoiding ES module issues)

This replaces the broken baseline from ifc-developer-tools which had:
- Non-functional ES module configuration
- Circular dependency issues
- Parser crashes
- Non-working PositionVisitor

Built on Microsoft's LSP example template for a clean, maintainable foundation.

Next: Add hierarchical entity dependency tree in hover tooltip."
2025-12-07 10:20:07 -06:00
..
index.d.ts Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
index.js Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00
license 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
readme.md Implemented a working Language Server Protocol (LSP) for IFC files with: 2025-12-07 10:20:07 -06:00

decamelize Build Status

Convert a camelized string into a lowercased one with a custom separator
Example: unicornRainbowunicorn_rainbow

Install

$ npm install decamelize

Usage

const decamelize = require('decamelize');

decamelize('unicornRainbow');
//=> 'unicorn_rainbow'

decamelize('unicornRainbow', '-');
//=> 'unicorn-rainbow'

API

decamelize(input, separator?)

input

Type: string

separator

Type: string
Default: '_'

See camelcase for the inverse.


Get professional support for this package with a Tidelift subscription
Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies.