JC Lib
JC Lib is a Visual Studio Code extension for browsing, editing, importing, and generating library packs for LabWindows/CVI, C, and C++.
It is designed as a modern visual helper inspired by the classic LabWindows/CVI library browser, while adding a pack-based workflow that is easier to maintain, share, and publish.
Why JC Lib
JC Lib helps you centralize programming assistance for native code libraries inside VS Code:
- browse libraries, categories, and symbols from the side bar
- create and edit packs visually instead of hand-editing JSON only
- import content from existing
.h, .hpp, .c, and .cpp files
- generate header content from packs
- insert calls and snippets directly into the active editor
- manage reusable packs for workspace or global usage
Main features
Visual library browser in the activity bar
Visual Pack Editor with pack, library, category, and symbol editing
Workspace packs and global packs
Import of:
- functions
- structs
- typedefs
- enums
enum class
- classes and methods
Starter content for C, C++, CVI, snippets, and DLL helper patterns
Header export and scoped content export
Symbol search by name, signature, library, category, header, or parameters
Direct insertion of symbol calls into the active editor
Supported content
JC Lib can represent and manipulate content for:
- C
- C++
- LabWindows/CVI
- snippets
- helper templates
- mixed library documentation packs
Quick start
1. Open the view
Open JC Lib from the VS Code activity bar.
2. Create a pack
Run JC Lib: Create Library Pack to create a new editable pack.
3. Edit the pack visually
Run JC Lib: Open Visual Library Pack Editor to add and edit:
- libraries
- categories
- functions
- structs
- enums
- classes
- methods
- snippets
4. Import existing code
Use JC Lib: Add Content To Library Pack or the buttons in the visual editor to import symbols from your headers and source files.
5. Export generated content
Use JC Lib: Export Content From Library Pack or JC Lib: Generate Header From Library Pack to generate reusable .h content.
Pack locations
JC Lib loads packs from two places.
Workspace packs
.vscode/jc-lib/packs/
Use this location for project-specific packs that should travel with the repository.
Global packs
Global packs are stored in the VS Code extension storage location for the current user.
Use this location for reusable personal packs shared across multiple workspaces.
Minimal pack example
{
"id": "my-pack",
"name": "My Pack",
"language": "cpp",
"version": "1.0.0",
"readOnly": false,
"libraries": \\\[]
}
Main commands
- JC Lib: Refresh Libraries
- JC Lib: Find Symbol
- JC Lib: Clear Filter
- JC Lib: Manage Library Packs
- JC Lib: Create Library Pack
- JC Lib: Open Visual Library Pack Editor
- JC Lib: Import Library Pack
- JC Lib: Import Source/Header Into Library Pack
- JC Lib: Add Content To Library Pack
- JC Lib: Export Content From Library Pack
- JC Lib: Generate Header From Library Pack
- JC Lib: Show Symbol Details
- JC Lib: Insert Symbol Call