Class HtmlLanguageSupport

  • All Implemented Interfaces:
    LanguageSupport

    public class HtmlLanguageSupport
    extends AbstractMarkupLanguageSupport
    Language support for HTML. This currently provides the following:
    • Code completion for HTML5 tags and attributes.
    • Automatic creation of closing tags for non-self-closing tags.
    Version:
    1.0
    • Field Detail

      • provider

        private HtmlCompletionProvider provider
        The completion provider. This is shared amongst all HTML text areas.
      • tagsToClose

        private static java.util.Set<java.lang.String> tagsToClose
        A cached set of tags that require closing tags.
    • Constructor Detail

      • HtmlLanguageSupport

        public HtmlLanguageSupport()
        Constructor.
    • Method Detail

      • createDefaultCompletionCellRenderer

        protected javax.swing.ListCellRenderer<java.lang.Object> createDefaultCompletionCellRenderer()
        Creates the default cell renderer to use when none is specified. Subclasses can override this method if there is a "better" default renderer for a specific language.
        Overrides:
        createDefaultCompletionCellRenderer in class AbstractLanguageSupport
        Returns:
        The default renderer for the completion list.
      • getTagsToClose

        public static java.util.Set<java.lang.String> getTagsToClose()
        Dirty hack to share this with others, such as PHP and JSP supports. Note that we should be passing doctype information here.
        Returns:
        The set of tags to close.
      • getTagsToClose

        private static java.util.Set<java.lang.String> getTagsToClose​(java.lang.String res)
        Returns a set of tags that require a closing tag, based on a resource in this class's package.
        Parameters:
        res - The resource.
        Returns:
        The set of tags that require closing.
      • install

        public void install​(org.fife.ui.rsyntaxtextarea.RSyntaxTextArea textArea)
        Installs this support.
        Parameters:
        textArea - The text area to install onto.
        See Also:
        LanguageSupport.uninstall(RSyntaxTextArea)
      • shouldAutoCloseTag

        protected boolean shouldAutoCloseTag​(java.lang.String tag)
        Subclasses should override this method to return whether a specified tag should have its closing tag auto-inserted.
        Specified by:
        shouldAutoCloseTag in class AbstractMarkupLanguageSupport
        Parameters:
        tag - The name of the tag to check.
        Returns:
        Whether the tag should have its closing tag auto-inserted.
      • uninstall

        public void uninstall​(org.fife.ui.rsyntaxtextarea.RSyntaxTextArea textArea)
        Uninstalls this support.
        Parameters:
        textArea - The text area to uninstall from.
        See Also:
        LanguageSupport.install(RSyntaxTextArea)