{"id":29358252,"url":"https://github.com/kenfdev/clipcoderef","last_synced_at":"2025-07-09T06:09:31.624Z","repository":{"id":303726966,"uuid":"1016098160","full_name":"kenfdev/ClipCodeRef","owner":"kenfdev","description":null,"archived":false,"fork":false,"pushed_at":"2025-07-09T05:23:59.000Z","size":329,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-09T05:36:25.048Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kenfdev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-08T13:39:09.000Z","updated_at":"2025-07-09T05:24:03.000Z","dependencies_parsed_at":"2025-07-09T05:36:27.141Z","dependency_job_id":"9cb7e152-3bcc-42ac-9ef2-5ee0b7392d5f","html_url":"https://github.com/kenfdev/ClipCodeRef","commit_stats":null,"previous_names":["kenfdev/clipcoderef"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kenfdev/ClipCodeRef","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2FClipCodeRef","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2FClipCodeRef/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2FClipCodeRef/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2FClipCodeRef/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kenfdev","download_url":"https://codeload.github.com/kenfdev/ClipCodeRef/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2FClipCodeRef/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264403827,"owners_count":23602623,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-07-09T06:09:30.302Z","updated_at":"2025-07-09T06:09:31.619Z","avatar_url":"https://github.com/kenfdev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ClipCodeRef - Code Reference Clipper for AI\n\nCopy code references in a format optimized for AI coding assistants like Claude Code. Quickly reference specific code locations with file paths and line numbers.\n\n## Features\n\n### 🎯 Single Line Reference\nPlace your cursor on any line and copy a reference in the format: `src/utils/helper.js L15`\n\n### 📋 Range Selection\nSelect multiple lines to copy range references: `src/utils/helper.js L15-L20`\n\n### ⚙️ Multiple Output Formats\n- **Simple**: `src/utils/helper.js L15` (default)\n- **Preview**: `src/utils/helper.js L15: const result = calculate(x, y);`\n\n### 🚀 Three Ways to Activate\n1. **Keyboard Shortcut**: `Ctrl+Shift+C` (Windows/Linux) or `Cmd+Shift+C` (Mac)\n2. **Command Palette**: \"ClipCodeRef: Copy Code Reference\"\n3. **Right-click Menu**: \"Copy Code Reference\"\n\n### 🗂️ Smart Path Handling\n- **Single Workspace**: Paths relative to workspace root\n- **Multi-root Workspace**: Intelligent workspace name prefixing when needed\n- **External Files**: Absolute paths with home directory shortened to `~`\n- **Unsaved Files**: Uses `Untitled-1 L\u003cline\u003e` format\n\n## Installation\n\nInstall from the VS Code Marketplace by searching for \"ClipCodeRef\" or visit the [extension page](https://marketplace.visualstudio.com/items?itemName=kenfdev.clipcoderef).\n\n## Usage Examples\n\n### Basic Usage\n1. Place cursor on line 42 in `src/app.js`\n2. Press `Cmd+Shift+C` (Mac) or `Ctrl+Shift+C` (Windows/Linux)\n3. Result copied to clipboard: `src/app.js L42`\n\n### Range Selection\n1. Select lines 15-20 in `src/utils/helper.js`\n2. Use any activation method\n3. Result: `src/utils/helper.js L15-L20`\n\n### With Code Preview\nWhen `clipCodeRef.format` is set to `\"preview\"`:\n```\nsrc/utils/helper.js L15: const result = calculate(x, y);\n```\n\n### Multi-root Workspace\nWhen file paths might be ambiguous:\n```\n[frontend]/src/components/App.js L10\n[backend]/src/utils/helper.js L25\n```\n\n## Configuration\n\nThis extension contributes the following settings:\n\n### `clipCodeRef.format`\n- **Type**: `string`\n- **Default**: `\"simple\"`\n- **Options**: `\"simple\"` | `\"preview\"`\n- **Description**: Choose output format for code references\n\n### `clipCodeRef.trimWhitespace`\n- **Type**: `boolean`\n- **Default**: `true`\n- **Description**: Remove leading/trailing whitespace from code preview\n\n### `clipCodeRef.maxLineLength`\n- **Type**: `number`\n- **Default**: `80`\n- **Description**: Maximum line length for code preview (longer lines are truncated)\n\n### `clipCodeRef.multiRootBehavior`\n- **Type**: `string`\n- **Default**: `\"auto\"`\n- **Options**: `\"auto\"` | `\"always\"` | `\"never\"`\n- **Description**: How to handle multi-root workspaces\n  - `\"auto\"`: Include workspace name only when paths would be ambiguous\n  - `\"always\"`: Always include workspace name\n  - `\"never\"`: Never include workspace name\n\n### `clipCodeRef.maxRangeLines`\n- **Type**: `number`\n- **Default**: `50`\n- **Description**: Maximum number of lines allowed for range selections\n\n## Configuration Example\n\nAdd to your VS Code `settings.json`:\n\n```json\n{\n  \"clipCodeRef.format\": \"preview\",\n  \"clipCodeRef.trimWhitespace\": true,\n  \"clipCodeRef.maxLineLength\": 100,\n  \"clipCodeRef.multiRootBehavior\": \"auto\",\n  \"clipCodeRef.maxRangeLines\": 25\n}\n```\n\n## Requirements\n\n- VS Code 1.70.0 or higher\n- No external dependencies required\n\n## Known Limitations\n\n- Multiple cursors are not supported (shows error message)\n- Very large range selections (\u003e50 lines by default) require configuration adjustment\n- Web version of VS Code has clipboard API limitations\n\n## Use Cases\n\nPerfect for developers who:\n- Use AI coding assistants like Claude Code, GitHub Copilot Chat\n- Need to reference specific code locations in documentation\n- Want to quickly share code references with team members\n- Work with multiple projects and need efficient path handling\n\n## Performance\n\n- Copy operations complete in \u003c100ms for files up to 10,000 lines\n- No impact on VS Code startup time\n- Minimal memory footprint\n\n## Feedback \u0026 Support\n\n- Report issues on [GitHub](https://github.com/kenfdev/ClipCodeRef/issues)\n- Feature requests welcome\n- Star the project if you find it useful!\n\n## Development\n\n### Version Bumping \u0026 Releases\n\nThis project uses automated version bumping and dual marketplace publishing.\n\n**For maintainers:**\n\n1. **GitHub Actions** (Recommended):\n   - Go to Actions tab → \"Version Bump\" workflow\n   - Click \"Run workflow\" and select version type (patch/minor/major)\n   - Automatically updates package.json, creates tag, and triggers release\n\n2. **Local Development**:\n   ```bash\n   npm run version:patch   # Bug fixes (1.0.0 → 1.0.1)\n   npm run version:minor   # New features (1.0.0 → 1.1.0) \n   npm run version:major   # Breaking changes (1.0.0 → 2.0.0)\n   ```\n\nReleases are automatically published to both VS Code Marketplace and Open VSX Registry.\n\n### Development Commands\n\n```bash\nnpm install          # Install dependencies\nnpm run watch        # Development mode\nnpm run compile      # Build + type check + lint\nnpm test            # Run test suite\nnpm run package-vsix # Create .vsix package\n```\n\n## License\n\n[MIT](LICENSE)\n\n---\n\n**Built for developers using AI coding assistants** 🤖","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkenfdev%2Fclipcoderef","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkenfdev%2Fclipcoderef","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkenfdev%2Fclipcoderef/lists"}