noctule-ide/noctule-swift-plugin

Space of the Swift language support plugin for JetBrains IDEs

75

11 commits

updated Jan 14, 2026

See the code

README

Cross-Platform Swift Development with your JetBrains IDE

Noctule brings cross-platform Swift language support to your JetBrains IDE and Android Studio.

[!IMPORTANT] This plugin is a freemium plugin. For now, all features are still free to use. Support the development by purchasing a license for USD 1 per month. At this time, all features are free to use until the plugin is more stable. Noctule will be offered as a freemium or paid plugin in the future.>Please note that the final price will be higher when the product is stable.

Join the Noctule newsletter to receive updates about the plugin and its development.

Please join the discussions to shape the future of this plugin.

Available features:

  • Support for the language specification of Swift 6.2
  • Native code formatter and support for "format on save"
  • Code completion
  • Find usages, go to declaration, rename refactoring
  • Code error highlighting with quick fixes
  • Inlay hints for types and parameters
  • Structure view
  • Type hierarchy (supertypes, subtypes, or both in a single hierarchy)
  • Call hierarchy (callees (outgoing calls), callers (incoming calls))
  • Support for "Go to class" and "Go to symbol"
  • Quick documentation with colored rendering of embedded code blocks
  • Code folding with custom settings for default code folding
  • Language injection support for string and multiline string literals
  • File templates for common Swift declarations
  • Syntax highlighting, including semantic token highlighting
  • Color schema settings
  • ToDo item highlighting
  • Navigation bar support
  • Brace matching for (), {}, []
  • Comment support

Most of the features rely on Apple's sourcekit-lsp and need an installed Swift toolchain. The implementation was tested with the current stable version of Swift.



Known limitations of the already available features:

  • Renaming a function declared in a protocol does not yet rename all implementations of this function.

Contributors

jansorg

11 commits

noctule-ide/noctule-swift-plugin

Space of the Swift language support plugin for JetBrains IDEs

75

11 commits

updated Jan 14, 2026

See the code

README

Cross-Platform Swift Development with your JetBrains IDE

Noctule brings cross-platform Swift language support to your JetBrains IDE and Android Studio.

[!IMPORTANT] This plugin is a freemium plugin. For now, all features are still free to use. Support the development by purchasing a license for USD 1 per month. At this time, all features are free to use until the plugin is more stable. Noctule will be offered as a freemium or paid plugin in the future.>Please note that the final price will be higher when the product is stable.

Join the Noctule newsletter to receive updates about the plugin and its development.

Please join the discussions to shape the future of this plugin.

Available features:

  • Support for the language specification of Swift 6.2
  • Native code formatter and support for "format on save"
  • Code completion
  • Find usages, go to declaration, rename refactoring
  • Code error highlighting with quick fixes
  • Inlay hints for types and parameters
  • Structure view
  • Type hierarchy (supertypes, subtypes, or both in a single hierarchy)
  • Call hierarchy (callees (outgoing calls), callers (incoming calls))
  • Support for "Go to class" and "Go to symbol"
  • Quick documentation with colored rendering of embedded code blocks
  • Code folding with custom settings for default code folding
  • Language injection support for string and multiline string literals
  • File templates for common Swift declarations
  • Syntax highlighting, including semantic token highlighting
  • Color schema settings
  • ToDo item highlighting
  • Navigation bar support
  • Brace matching for (), {}, []
  • Comment support

Most of the features rely on Apple's sourcekit-lsp and need an installed Swift toolchain. The implementation was tested with the current stable version of Swift.



Known limitations of the already available features:

  • Renaming a function declared in a protocol does not yet rename all implementations of this function.

Contributors

jansorg

11 commits