generated from JetBrains/intellij-platform-plugin-template
-
Notifications
You must be signed in to change notification settings - Fork 31
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Shire Skecth: A Multi-file viewer, render and edit #153
Comments
phodal
added a commit
that referenced
this issue
Dec 2, 2024
Add the ability to navigate to a specific line and column in a file using the `/goto` command. This feature includes the implementation of the GotoShireCommand class, updates to the ShireSyntaxAnalyzer to handle the new command, and documentation enhancements to reflect the addition of the `/goto` command to the Shire command set.
phodal
added a commit
that referenced
this issue
Dec 2, 2024
The changes enhance the GotoShireCommand by providing clearer navigation feedback in the form of a formatted string that includes the file name and line number. Additionally, the code has been cleaned up by removing unnecessary comments and simplifying the document offset calculation.
Multiple file editing combined with Chat Panel might be a good idea. |
phodal
added a commit
that referenced
this issue
Dec 5, 2024
…r enhanced code representation #153 Update CodeFence parsing to use "text" as the default language for plain text blocks. Additionally, optimize ShirePanelView by rearranging components and enhancing code block view to support specific languages. This results in a cleaner UI and more accurate code rendering. ```diff - CodeFence(findLanguage("markdown"), textBuilder.trim().toString(), true, "txt", true) + CodeFence(findLanguage("text"), textBuilder.trim().toString(), true, "txt", true) // Other UI and code representation improvements... ```
phodal
added a commit
that referenced
this issue
Dec 8, 2024
- Introduce new action `ShireDiffCodeAction` for code diffing in the toolbar. - Add corresponding XML configuration and Kotlin class.
phodal
added a commit
that referenced
this issue
Dec 8, 2024
- Renamed CodeBlockView to CodeBlockViewer and moved to new package. - Added SketchViewer interface for viewer components. - Updated references and method names to align with new class structure.
phodal
added a commit
that referenced
this issue
Dec 8, 2024
- Implement `DiffPatchViewer` for displaying diffs. - Add `ShireViewDiffAction` and `ShireRejectDiffAction` to diff toolbar. - Rename `ShireDiffCodeAction` to `ShireAcceptDiffAction`. - Update XML configuration for new toolbar actions. - Modify `CodeBlockViewer` to include `getComponent` method. - Refactor `fullWidth` and `fullHeight` methods to `SketchViewer` interface.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
Removed XML-defined actions for diff view toolbar and replaced them with inline JButton components in DiffPatchViewer.kt. This change simplifies the UI code and enhances maintainability.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
#153 - Add project and patch content parameters to DiffPatchViewer. - Implement patch parsing and error handling. - Integrate diff viewing using IntelliJ's DiffManager. - Localize button labels and tooltips.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
#153 - Add project and patch content parameters to DiffPatchViewer. - Implement patch parsing and error handling. - Integrate diff viewing using IntelliJ's DiffManager. - Localize button labels and tooltips.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
- Add support for applying patches using ApplyPatchDefaultExecutor. - Introduce file icon display and improve mouse event handling. - Remove deprecated code and unused methods.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
…mponents #153 Renamed and updated the following: - `CodeBlockViewer` to `CodeBlockLang` - `DiffPatchViewer` to `DiffLangSketch` - `SketchViewer` interface to `LangSketch` - Modified related components and references accordingly. This refactor aims to harmonize naming conventions within the core module and maintain consistency with language-specific viewer components.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
- Rename `CodeBlockLang` to `CodeHighlightSketch` and update its implementation. - Modify `DiffLangSketch` to handle diff display and actions. - Update `LangSketch` interface with new methods. - Change `ShirePanelView` to use `LangSketch` and handle diff code blocks.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
#153 Update the SingleFileDiffLangSketch to include additional functionalities such as accepting and rejecting patches, and viewing diffs through a new dialog. The commit introduces new imports, refines existing methods, and adds a rollback action with a tooltip for reversing changes. It also modifies the resource bundle to include new messages for the added actions.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
This commit cleans up the codebase by removing the unused `MyApplyPatchFromClipboardDialog` class and its companion object, along with the `ShireDiffContext` class and its related methods. These removals reduce the code size and improve maintainability by eliminating unnecessary
phodal
added a commit
that referenced
this issue
Dec 9, 2024
…e SingleFileDiffLangSketch #153 Add a new dialog class `MyApplyPatchFromClipboardDialog` to handle the application of patches from the clipboard. This includes a custom checkbox for on-the-fly analysis option. Update `SingleFileDiffLangSketch` by: - Refactoring code for better readability. - Implementing progress indicator for rollback action. - Enhancing the rollback functionality to handle exceptions. - Changing the mouse event behavior for a better UI experience.
phodal
added a commit
that referenced
this issue
Dec 9, 2024
The commit updates the `SingleFileDiffLangSketch` by replacing the complex rollback logic with a simplerUndoManager API. It also enhances the UI by improving the filepath display and enabling the rollback button based on the availability of the undo action.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
phodal
added a commit
that referenced
this issue
Dec 10, 2024
phodal
added a commit
that referenced
this issue
Dec 10, 2024
Improve the UI by implementing the LangSketch interface and integrating PlantUML support. This includes: - Enhancing the SingleFileDiffView class to implement LangSketch. - Introducing LanguageSketchProvider for dynamic language sketch provision. - Adding a PlantUmlSketchProvider and PlantUmlSketch class for PlantUML file rendering within the IDE.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
#153 Update build script and plugin configuration to include new toolsets for PlantUML and Mermaid diagrams, enhancing the visual representation capabilities within the IDE.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
- Replace mainPanel initialization with JPanel. - Integrate TextEditor and PlantUmlSplitEditor for better preview handling. - Simplify isSupported method to always return true. - Remove unnecessary UI components and streamline the initialization process.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
…#153 - Updated MermaidSketchProvider and PlantUmlSketchProvider to use ExtensionLangSketch. - Modified ShirePanelView to handle ExtensionLangSketch. - Added ExtensionLangSketch interface to LanguageSketchProvider.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
…153 - Refactor `setupActionBar` to accept `project` and `editor` parameters. - Add Mermaid diagram support in `ShireMarketplaceTableView`. - Update `MermaidSketchProvider` to handle Mermaid and MMD languages. - Add Mermaid plugin dependency in `gradle-241.properties`. - Extend `PlantUmlSketchProvider` to support specific UML file extensions.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
- Add layout rows for Mermaid and PlantUML editors. - Enhance language detection in ShireLanguageLabelAction.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
- Refactor `DiffLangSketch` to extend `ExtensionLangSketch`. - Implement `getExtensionName` method in `DiffLangSketch`. - Add new `DiffLangSketchProvider` to handle diff language sketches. - Register `DiffLangSketchProvider` in `com.phodal.shirecore.xml`. - Simplify `ShirePanelView` logic for handling different language sketches.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
- Simplified method return statements using expression body. - Renamed 'filepath' to 'virtualFile' for clarity and consistency. - Added mouse event handling for file label. - Imported 'readText' extension method for VirtualFile.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
- Removed LanguageSketchProvider usage from ShireMarketplaceTableView. - Enhanced SingleFileDiffView with mouseEntered event to change opacity. - Improved ShirePanelView layout by adding margin and reorganizing components.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
…153 - Modify various LangSketch implementations to include origin language in updateLanguage method. - Update CodeHighlightSketch to handle textLanguage. - Extend DiffLangSketch to support patch files and improve diff handling. - Adjust LangSketch interface and related providers for consistent language updates.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
- Add support for a preview dialog in the diff viewer. - Import necessary classes and modify the initialization logic. - Integrate `FileEditorProvider` and `DialogWrapper` to display diff content.
phodal
added a commit
that referenced
this issue
Dec 10, 2024
Renames and reorganizes files and packages from `com.phodal.shirecore.ui` to `com.phodal.shirecore.sketch` to better reflect their purpose and improve code organization. This includes renaming several Kotlin files and updating corresponding package declarations and imports.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
Updated UI component styling and layout to enhance consistency and readability. Modifications include adjusting borders, backgrounds, and alignment for various panels and labels within the code highlighting and diff views.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
…leView #153 Adds the functionality to display patch content and associated action buttons within the ShireMarketplaceTableView. This includes a view for the patch content and the implementation of action buttons for file diff operations, such as rollback, enhancing the user interface for managing code patches.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
Remove redundant color updates for actions in SingleFileDiffView. This change enhances the visual clarity by simplifying the color change logic when the mouse enters or exits the diff view. Only the foreground and file panel background colors are updated, improving performance and readability.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
… methods #153 Deleted unnecessary diff action files and streamlined the `createSketch` methods within various sketch providers by removing redundant code and simplifying the function signatures. This change enhances code readability and maintainability.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
This commit introduces a new StreamDiff class and its corresponding test suite. StreamDiff is capable of comparing two streams of text lines and emitting diff lines (New, Old, or Same) to represent the differences. The test suite ensures that the functionality handles various scenarios, including no match found, perfect matches, and matches with slight variations, including indentation differences.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
…g prefix #153 This commit introduces an additional test case in `CodeFenceTest.kt` to verify that the `CodeFence.parse` method correctly handles the parsing of an incomplete code block when a language prefix (e.g., `java`) is provided. The test ensures that the parser identifies the code block as incomplete and does not mistake it for a complete block.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
#153 Avoid including unnecessary new line characters when constructing CodeFence objects with empty code content. This ensures that the content remains clean and as expected.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
phodal
added a commit
that referenced
this issue
Dec 11, 2024
- Replaced AssertJ with JUnit Assert for consistency. - Simplified test cases for clarity. - Implemented LCS-based diff algorithm for improved accuracy. - Removed redundant matchLine function and MatchResult class. - Updated tests to cover new edge cases.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
#153 - Refactor `StreamDiffTest.kt` and `DiffStreamHandler.kt` for better flow handling. - Add `toDiffLineType()` method to `DiffLine` class in `StreamDiff.kt` for type conversion. - Ensure `lastLineNo` update is correctly placed in `DiffStreamHandler.kt`. - Enhance progress highlighter update logic.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
Update the logic for selecting new and old lines in DiffStreamHandler to ensure correct sublists are created based on line numbers.
phodal
added a commit
that referenced
this issue
Dec 11, 2024
Added Apache License 2.0 headers to core diff module files to ensure compliance with licensing requirements.
phodal
added a commit
that referenced
this issue
Dec 12, 2024
Remove the DiffLineType enum and directly use DiffLine sealed class in related functions to streamline diff handling logic.
phodal
added a commit
that referenced
this issue
Dec 12, 2024
…abels #153 - Simplified button creation by directly specifying labels and colors. - Removed OS-specific key label functions and enum. - Updated button foreground color to use Gray utility class.
phodal
added a commit
that referenced
this issue
Dec 12, 2024
- Added a new project service `DiffStreamService` to the IntelliJ plugin extensions in `com.phodal.shirecore.xml`.
phodal
added a commit
that referenced
this issue
Dec 12, 2024
Refactors the diff handling logic in `DiffStreamHandler.kt` by extracting the `when` block into a new function `updateByDiffType` for better readability and simplifies conditional checks using single-line returns.
phodal
added a commit
that referenced
this issue
Dec 12, 2024
- Introduce new StreamDiff interaction type for real-time diff streaming. - Update button labels using ShireCoreBundle for localization. - Refactor task creation and handling in EditorInteractionProvider. - Add new documentation for Shire Sketch and update language spec order. - Enhance DiffStreamHandler to support response handling.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Sketch
Diff Sketch
AllIcons.Actions.Rollback
), Cancel (AllIcons.Vcs.Abort
)IDEA Apis:
UI:
TwosideContentPanel
with:SimpleDiffViewer
Mermaid Sketch
https://plugins.jetbrains.com/plugin/20146-mermaid
PlantUML Sketch
https://plugins.jetbrains.com/plugin/7017-plantuml-integration
Error Handling (TBC)
/goto
Compile output:
The text was updated successfully, but these errors were encountered: