# Debugging options for the org.eclipse.jface.text plug-in

# Prints debug information related to AnnotationPainter
org.eclipse.jface.text/debug/AnnotationPainter= true

# Prints debug information related to AbstractContentAssistSubjectAdapter and its subclasses
org.eclipse.jface.text/debug/ContentAssistSubjectAdapters= true