diff options
Diffstat (limited to 'man')
-rw-r--r-- | man/org.eclipse.linuxtools.man.core/src/org/eclipse/linuxtools/man/parser/ManPage.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/man/org.eclipse.linuxtools.man.core/src/org/eclipse/linuxtools/man/parser/ManPage.java b/man/org.eclipse.linuxtools.man.core/src/org/eclipse/linuxtools/man/parser/ManPage.java index 734948e9a7..7fc74bcee7 100644 --- a/man/org.eclipse.linuxtools.man.core/src/org/eclipse/linuxtools/man/parser/ManPage.java +++ b/man/org.eclipse.linuxtools.man.core/src/org/eclipse/linuxtools/man/parser/ManPage.java @@ -19,6 +19,7 @@ import org.eclipse.linuxtools.internal.man.parser.ManParser; public class ManPage { private StringBuilder rawContent; + private StringBuilder strippedTextPage; /** * Creates the man page which includes retrieving the raw content and @@ -110,4 +111,29 @@ public class ManPage { return sb; } + /** + * Removes all HTML markings are returns a text only version. + * + * @return a text only version of the manpage + */ + public StringBuilder getStrippedTextPage() { + if (this.strippedTextPage == null) { + this.strippedTextPage = getStrippedPage(); + int index = strippedTextPage.indexOf("<b>"); //$NON-NLS-1$ + while (index != -1) { + strippedTextPage.replace(index, index + 3, ""); //$NON-NLS-1$ + strippedTextPage.replace(index + 1, index + 5, ""); //$NON-NLS-1$ + index = strippedTextPage.indexOf("<b>"); //$NON-NLS-1$ + } + + index = strippedTextPage.indexOf("<u>"); //$NON-NLS-1$ + while (index != -1) { + strippedTextPage.replace(index, index + 3, ""); //$NON-NLS-1$ + strippedTextPage.replace(index + 1, index + 5, ""); //$NON-NLS-1$ + index = strippedTextPage.indexOf("<u>"); //$NON-NLS-1$ + } + } + + return strippedTextPage; + } } |