CodeEditApp / CodeEditApp/CodeEditSourceEditor

✨ Placeholder Support

Đang mở
#287 4 bình luận 0 reaction 0 người được giao Xem trên GitHub
enhancement
Ngôn ngữ chính
Swift
Star
719
Fork
160
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

### Description

Implement support for placeholders in CodeEdit, similar to Xcode’s `<#placeholder#>` feature. This would allow developers to insert and cycle through editable placeholders in their code, improving productivity and code clarity during development.

### Use Case

This feature would be particularly useful for defining temporary or template-like code constructs, such as:
```swift
let <#name#> = <#value#>
```

Placeholders would:
1. Be highlighted visually.
2. Be navigable (e.g., via Tab key).
3. Allow inline editing to replace the placeholder text.

### Expected Behavior

- When a placeholder is inserted (e.g., `<#placeholder#>`), it should:
- Appear visually distinct (e.g., highlighted with a subtle background color or outline).
- Be editable directly in the code editor.
- Allow navigation between placeholders using keyboard shortcuts like Tab and Shift+Tab.
- Placeholders should support nested constructs (e.g., `let <#name#> = <#type#>(<#arguments#>)`).

### Technical Notes

- Integrate placeholder handling with the current text editing features.
- Consider compatibility with existing syntax highlighting and LSP integration.

### Steps to Implement

1. Define a syntax for placeholders (e.g., `<#placeholder#>`).
2. Update the text editor to recognize and render placeholders.
3. Add keyboard navigation support for placeholders.
4. Ensure placeholder edits are reflected in the editor state.

### Additional Context

This feature would align CodeEdit with Xcode’s behavior, making it a more familiar and seamless experience for developers who work on macOS. It also complements other code editing enhancements, such as autocompletion and LSP support.

### Screenshots

image

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.