<p><pre><code>    (defui my-component [x]
      &lt;h2 class=(when (selected? x) [&quot;selected&quot;])&gt;Hello&lt;&#x2F;h2&gt;)
</code></pre>
It&#x27;s possible to macro the above to the code below, without any language extensions.  IntelliJ has powerful nested DSL introspection, it would be neat if Cursive allowed to hook into this through defui&#x27;s metadata for highlighting.  I was a hater of JSX until I used it.  Now I hate eDSLs.  :D<p><pre><code>    (defn my-component [x]
      [:h2 {:class (when (selected? x) [&quot;selected&quot;])} &quot;Hello&quot;])</code></pre>