                      }
                  }
              }
+@@ -56,7 +52,7 @@ class LuaDocumentationProvider : AbstractDocumentationProvider(), DocumentationP
+         return super.getQuickNavigateInfo(element, originalElement)
+     }
+ 
+-    override fun getDocumentationElementForLookupItem(psiManager: PsiManager, obj: Any, element: PsiElement?): PsiElement? {
++    override fun getDocumentationElementForLookupItem(psiManager: PsiManager, obj: Any, element: PsiElement): PsiElement? {
+         if (obj is LuaDocumentationLookupElement) {
+             return obj.getDocumentationElement(SearchContext(psiManager.project))
+         }
 @@ -69,29 +65,27 @@ class LuaDocumentationProvider : AbstractDocumentationProvider(), DocumentationP
  
      override fun generateDoc(element: PsiElement, originalElement: PsiElement?): String? {

     }
-    sb.append("</pre>")
-    renderCommentString(" - ", null, sb, def.commentString)
+    renderCommentString("  ", null, sb, def.commentString)
+    sb.append("<br>")
 }
 
-private fun renderFieldDef(sb: StringBuilder, def: LuaDocFieldDef, tyRenderer: ITyRenderer) {
-    sb.append("${def.name}: ")
-    renderTypeUnion(null, null, sb, def.ty, tyRenderer)

                 else -> {
                     val elementType = child.node.elementType
                     if (elementType === LuaDocTypes.STRING) {
@@ -71,146 +118,71 @@ fun renderComment(sb: StringBuilder, comment: LuaComment?, tyRenderer: ITyRender
             }
             child = child.nextSibling
         }
