{"id":15134419,"url":"https://github.com/tolc/intellij_jahia_plugin","last_synced_at":"2025-10-23T11:30:25.788Z","repository":{"id":39525359,"uuid":"45263129","full_name":"Tolc/IntelliJ_Jahia_plugin","owner":"Tolc","description":"Jahia's definitions.cnd files syntax highlighting, code completion, and other amazing stuff","archived":false,"fork":false,"pushed_at":"2024-11-23T14:34:03.000Z","size":1410,"stargazers_count":22,"open_issues_count":2,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-30T17:38:43.440Z","etag":null,"topics":["cms","cnd","framework","grammar","integration","intellij","intellij-idea","intellij-plugin","jahia","java","jsp","language","plugin"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Tolc.png","metadata":{"files":{"readme":"README.md","changelog":null,"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}},"created_at":"2015-10-30T16:31:23.000Z","updated_at":"2025-01-29T14:53:24.000Z","dependencies_parsed_at":"2024-09-08T23:19:23.823Z","dependency_job_id":"ad5089c3-0629-49a0-95f0-f685a81f8577","html_url":"https://github.com/Tolc/IntelliJ_Jahia_plugin","commit_stats":null,"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tolc%2FIntelliJ_Jahia_plugin","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tolc%2FIntelliJ_Jahia_plugin/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tolc%2FIntelliJ_Jahia_plugin/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Tolc%2FIntelliJ_Jahia_plugin/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Tolc","download_url":"https://codeload.github.com/Tolc/IntelliJ_Jahia_plugin/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237811516,"owners_count":19370144,"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":["cms","cnd","framework","grammar","integration","intellij","intellij-idea","intellij-plugin","jahia","java","jsp","language","plugin"],"created_at":"2024-09-26T05:20:35.202Z","updated_at":"2025-10-23T11:30:25.372Z","avatar_url":"https://github.com/Tolc.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CND Language / [Jahia][1] Framework support for [IntelliJ IDEA][2]\n\n[![release](https://img.shields.io/github/release/Tolc/IntelliJ_Jahia_Plugin.svg?style=flat-square)](https://github.com/Tolc/IntelliJ_Jahia_plugin/releases)\n\ndefinitions.cnd files syntax highlighting, code completion, and other amazing stuff.\n\n[![marketplace](marketplace.png)][3]\n\nYou can also rate it on the [JetBrains Plugins Repository][3].\n\n## Requirements\n\nTested under IntelliJ IDEA from 14.1.4 to **2022.3.2**\n\nIntelliJ plugins dependencies (optional): **JavaEE**, **JSP**, **Properties**. Requires Java **17** or higher (Java 8 before v2.2.0).\n\nJahia project versions: **6.6.x**, **7.x**, and **8.x**.\n\n\n\n## Features\n\n\n### CND Language\n\n* Syntax highlighting\n* Syntax checking and error highlighting\n* Code completion\n* Code formatting\n* Find usages (ctrl-click/cmd-click) - for namespaces, nodetypes and nodetypes properties declarations (**not getting namespaces and nodetypes usages in .properties files for the moment though**)\n* Go to declaration (ctrl-click/cmd-click) - for namespaces and nodetypes usages throughout the file\n* Refactoring\n    * Rename (shift+f6) - for namespaces, nodetypes and nodetypes properties declarations (**not renaming namespaces and nodetypes usages in .properties files for the moment though**)\n* File icon ![CND file icon](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/cnd.png)\n* Line markers for namespaces ![namespace](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/namespace.png) and nodetypes ![nodetype](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/nodeType.png) / mixins ![mixin](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/mixin.png)\n* Code folding - for namespaces and nodetypes\n* Brace matching - closing brackets and parenthesis are automatically inserted where authorized by the syntax\n* Commenter (ctrl+/) - to comment lines of code\n\n\n\n### Jahia Framework\n[![Jahia](resources/jahia/jahia.png)][1]\n\n#### Compatible with Jahia **6.6.x**, **7.x**, and **8.x**.\n\n* CND files features:\n    * Helpers/Quickfixes (alt+enter on nodetype name)\n        * Create nodetype and nodetype properties translations - only appears if no translation is found\n        * Create new view - opens a popup that lets you choose the new view parameters, creates view and cache properties files, and also creates the folders if they don't already exist. **If the view is a JSP, the new view also contains code to access all the node properties and sub nodes.**\n    * Nodetype folders icon in Project View (![view folder](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/nodeTypeFolder.png) or ![hidden view folder](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/mixinFolder.png) if mixin)\n    * View files grouping (creates a virtual folder ![view folder](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/viewBig.png) - or ![hidden view folder](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/viewBigHidden.png) if hidden view - in the Project View)\n    * Completion and other features on Jahia nodetypes (embedded Jahia base and main modules .cnd files) - a local library called 'jahia-plugin-base-cnd-files' is automatically added to the module dependencies if the module contains at least one cnd file (in case you have deleted this dependency, no panic, it comes back after re-opening the project)\n\n* Other files/languages features:\n    * JSP\n        * Nodetypes usages highlighting \u0026 line markers ![nodetype](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/nodeType.png)/![mixin](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/mixin.png)\n        * Nodetypes completion\n        * Go to nodetype declaration (ctrl-click/cmd-click)\n        * Unknown nodetype error highlighting\n        * Create nodetype quickfix (alt+enter on nodetype name) - if known namespace but unknown nodetype\n        * `\u003ctemplate:module/\u003e` line marker, 'view' attribute completion and reference ![template module](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/templateModule.png) (both are affected by 'templateType' attribute if provided)\n        * `\u003ctemplate:include/\u003e` line marker, 'view' attribute completion and reference ![template include](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/templateInclude.png) (both are affected by 'templateType' attribute if provided)\n        * Properties and property type completion in `${currentNode.properties.propertyName}`, `${currentNode.properties['propertyName']}` and `\u003cjcr:nodeProperty/\u003e`\n        * `\u003ctemplate:addResources/\u003e` line marker, completion and reference\n    * Java\n        * Nodetypes usages highlighting \u0026 line markers ![nodetype](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/nodeType.png)/![mixin](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/mixin.png)\n        * Nodetypes completion\n        * Go to nodetype declaration (ctrl-click/cmd-click)\n        * Unknown nodetype error highlighting\n        * Create nodetype quickfix (alt+enter on nodetype name) - if known namespace but unknown nodetype\n    * XML\n        * Nodetypes usages highlighting \u0026 line markers ![nodetype](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/nodeType.png)/![mixin](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/mixin.png)\n        * Nodetypes completion\n        * Go to nodetype declaration (ctrl-click/cmd-click)\n        * Unknown nodetype error highlighting\n        * Create nodetype quickfix (alt+enter on nodetype name) - if known namespace but unknown nodetype\n    * Properties (resource bundles)\n        * Translations keys syntax highlighting \u0026 line markers for namespaces ![namespace](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/namespace.png), nodetypes ![nodetype](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/nodeType.png)/![mixin](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/mixin.png) and properties ![property](src/fr/tolc/jahia/intellij/plugin/cnd/icons/img/property.png)\n        * Translations keys nodetypes and properties completion\n        * Go to namespace, nodetype or property declaration from translations keys (ctrl-click/cmd-click)\n        * Error message if adding translations for a choicelist on a non-choicelist property\n* IntelliJ\n    * Jahia Tool Window\n\n\n\n## Roadmap (?)\n\n##### This is just the beginning.\n\n* Improved cache .properties support:\n    * Resource bundles .properties extension, to be able to find namespaces and nodetypes usages in it\n    * View cache .properties custom language\n* Plugin settings\n* Make helpers/quickfixes accessible through Actions in menus\n* Groovy support\n\n#### Don't hesitate to request features / suggest enhancements by opening an Issue.\n\n--\n\n##### This plugin is neither official nor endorsed by [Jahia][1] in any way. I am just a guy who loves this CMS and wanted to make working with it easier for everyone (or at least everyone using IntelliJ, duh).\n\n[1]: https://www.jahia.com/\n[2]: https://www.jetbrains.com/idea/\n[3]: https://plugins.jetbrains.com/plugin/9221-cnd-language--jahia-framework/","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftolc%2Fintellij_jahia_plugin","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftolc%2Fintellij_jahia_plugin","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftolc%2Fintellij_jahia_plugin/lists"}