Builds web TOC for help files
authoramwaterhouse <Andrew Waterhouse>
Tue, 13 Dec 2005 10:36:47 +0000 (10:36 +0000)
committeramwaterhouse <Andrew Waterhouse>
Tue, 13 Dec 2005 10:36:47 +0000 (10:36 +0000)
utils/help2Website.java [new file with mode: 0755]

diff --git a/utils/help2Website.java b/utils/help2Website.java
new file mode 100755 (executable)
index 0000000..7156c1a
--- /dev/null
@@ -0,0 +1,90 @@
+import java.io.*;\r
+import java.util.*;\r
+\r
+public class help2Website\r
+{\r
+\r
+       public static void main(String [] args)\r
+       {\r
+               try{\r
+                       Hashtable targets = new Hashtable();\r
+\r
+                       File toc = new File("helpTOC.xml");\r
+                       File jhm = new File("help.jhm");\r
+\r
+                       BufferedReader in = new BufferedReader(new FileReader(jhm));\r
+\r
+                       PrintWriter out = new PrintWriter(new FileWriter("helpTOC.html"));\r
+                       out.println("<html><head></head><title>Jalview - Help </title></head>\n"\r
+                       +"<body bgcolor=#F1F1F1>\n"\r
+                       +"<p><center><strong>Contents</strong></center></p>\n"\r
+                       +"<table border=0 width=100%><tr><td width=100% nowrap><font face=Arial size=2>\n");\r
+\r
+                       String line;\r
+\r
+                       StringTokenizer st;\r
+                       StringBuffer indent = new StringBuffer();\r
+                       String target, url, text;\r
+                       while( (line = in.readLine()) != null)\r
+                       {\r
+                               if(line.indexOf("target")==-1)\r
+                                       continue;\r
+\r
+                               st = new StringTokenizer(line, "\"");\r
+                               st.nextToken(); //<mapID target="\r
+\r
+                               target = st.nextToken();\r
+                               st.nextToken(); //" url="\r
+\r
+                               url = st.nextToken();\r
+                               targets.put(target, url);\r
+                       }\r
+\r
+                       in = new BufferedReader(new FileReader(toc));\r
+                       while( (line = in.readLine()) != null)\r
+                       {\r
+                               if(line.indexOf("</tocitem>")!=-1)\r
+                                       indent.setLength(indent.length()-18);\r
+\r
+                               if(line.indexOf("<tocitem")==-1)\r
+                                       continue;\r
+\r
+                               st = new StringTokenizer(line, "\"");\r
+                               st.nextToken();\r
+\r
+                               text = st.nextToken();\r
+                               st.nextToken();\r
+\r
+                               target = st.nextToken();\r
+\r
+                               if(targets.get(target)!=null)\r
+                                       out.println("<br>"+indent+"<a href=\""\r
+                                                       + targets.get(target)\r
+                                                       +"\" target=bodyframe>"\r
+                                                       +text\r
+                                                       +"</a>");\r
+                               else\r
+                                       out.println("<br>"+indent+text);\r
+\r
+\r
+                               if(line.indexOf("/>")==-1)\r
+                                       indent.append("&nbsp;&nbsp;&nbsp;");\r
+\r
+                       }\r
+\r
+\r
+                       out.close();\r
+\r
+               }\r
+\r
+               catch(Exception ex)\r
+               {\r
+                       ex.printStackTrace();\r
+\r
+                       System.out.println("Usage: move to Help directory. help2Website will read"\r
+                       +"\nhelpTOC.xml and help.jhm producing output helpTOC.html");\r
+               }\r
+       }\r
+\r
+\r
+}
\ No newline at end of file