Skip to content

Latest commit

 

History

History
61 lines (47 loc) · 3.13 KB

README.md

File metadata and controls

61 lines (47 loc) · 3.13 KB

Hikage IntelliJ Plugin

Android Studio support for writing, checking, navigating, and converting Hikage layouts.

This project is under active development. Checked items are available in the current development baseline; unchecked items are planned or still in progress.

Project Setup

  • Recognize Hikage Android projects and enable plugin features only where they apply
  • Recommend Hikage for suitable Android apps and add the standard dependencies with one action
  • Provide one settings page for editor, attribute, XML layout conversion, and Android Lint options, with one-click Hikage setup when needed

Kotlin Editing

  • Recognize custom Hikage Views and performers before generated source is available
  • Complete and highlight Hikage component calls and layout values
  • Fill the default LayoutParams argument when requested
  • Check common declaration and DSL mistakes and offer fixes where possible
  • Navigate, find usages, and rename supported Views and performer calls

Attributes and Layouts

  • Complete Hikage attribute names, values, resources, and theme references
  • Preview, document, navigate, pick, and rename supported attribute resources
  • Complete and check layout ID lookups
  • Preview layout lookups and support navigation, Find Usages, and Rename
  • Run common Android layout checks directly on Hikage layout code
  • Detect a missing runtime-attribute dependency and offer to add it

XML Layout Conversion

  • Provide conversion settings and context-aware Hikage menus under Tools, the XML editor, and Project View
  • Show cancellable progress in the IDE while a conversion is running
  • Copy a common static XML layout as a Performer snippet
  • Convert supported IDs, visibility, symbolic attribute options, sizes, margins, and padding, including theme-based padding values, without silently dropping unsupported values
  • Preserve the snippet as plain text while restoring only the required imports when pasted into Android Studio
  • Fall back to generic View or ViewGroup calls when a snippet has no matching custom performer and the result is safe
  • Copy a layout as a Hikagable property
  • Copy a layout as a HikageBuilder
  • Generate a complete HikageBuilder Kotlin file in a selectable package
  • Help complete-file conversion handle custom Views without performers
  • Convert multiple layouts together, including local include and merge relationships
  • Cover the remaining resource values, parent-specific layout rules, and special XML cases

Hikage Preview

  • Add a Hikage Preview tool window
  • Discover previewable layouts from the current Kotlin file
  • Switch between multiple layouts in one file
  • Build and render layouts through Android Studio
  • Refresh safe code changes quickly and clearly request a full refresh when required

Future Ideas

  • Generate type-safe layout ID accessors
  • Add visual editing through Android Studio's Layout Editor
  • Trace Hikage layout code from Layout Inspector
  • Provide a new-project template for Hikage apps
  • Add compiler-level checks for errors that can be proven before runtime