PageRenderTime 28ms CodeModel.GetById 1ms RepoModel.GetById 0ms app.codeStats 0ms

/jEdit/tags/jedit-4-2-pre4/README.SRC.txt

#
Plain Text | 93 lines | 62 code | 31 blank | 0 comment | 0 complexity | b419d84d92f61969f524e99a355520f5 MD5 | raw file
Possible License(s): BSD-3-Clause, AGPL-1.0, Apache-2.0, LGPL-2.0, LGPL-3.0, GPL-2.0, CC-BY-SA-3.0, LGPL-2.1, GPL-3.0, MPL-2.0-no-copyleft-exception, IPL-1.0
  1. SOURCE CODE NOTES
  2. This file only contains information about compiling from source.
  3. General jEdit documentation can be found in the 'doc' directory.
  4. * Compiling jEdit
  5. You will need:
  6. - A Java compiler, such as Sun's javac or IBM's jikes.
  7. - Jakarta Ant. I use version 1.5; older versions might or might not
  8. work. Get it from <http://ant.apache.org>.
  9. Once you have all the necessary tools installed, run Ant with the 'dist'
  10. target in the build.xml file to compile jEdit:
  11. $ cd ~/jEdit
  12. $ ant dist
  13. * Building the online help in HTML format
  14. You will need:
  15. - DocBook-XML 4.1.2 DTD and DocBook-XSL 1.60.1 (or later) stylesheets
  16. (<http://docbook.sourceforge.net>).
  17. - An XSLT processor, such as Xalan (<http://xml.apache.org>) or
  18. xsltproc (<http://xmlsoft.org/XSLT/>).
  19. To build the HTML format docs, first edit the 'build.properties' file to
  20. specify the path to where the DocBook XSL stylesheets are installed,
  21. then run the 'docs-html-xalan' or 'docs-html-xsltproc' target.
  22. * Building the online help in PDF format
  23. You will need:
  24. - DocBook-XML 4.1.2 DTD and DocBook-DSSSL 1.76 (or later) stylesheets
  25. (<http://docbook.sourceforge.net>).
  26. - OpenJade 1.3 and OpenSP 1.3.4 (or later)
  27. (<http://openjade.sourceforge.net>).
  28. - A TeX implementation that includes PDF output capability.
  29. To build the PDF format docs, you will most likely have to edit the
  30. build.xml to set up various paths. Then run the 'docs-pdf-openjade-a4'
  31. or 'docs-pdf-openjade-letter' target, depending on the desired paper
  32. size.
  33. * Building the API documentation
  34. To build the API documentation, you will need Sun's javadoc, which is
  35. bundled with the JDK. You will also need to edit 'build.properties' to
  36. point to the location of your 'tools.jar', which is needed to compile a
  37. custom doclet. After everything is set up, run the 'javadoc' target,
  38. which will create API documentation and a 'toc.xml' file for jEdit's
  39. help viewer.
  40. Note that you will need to run the 'doclet/Clean_Up_Javadoc.bsh' script
  41. in jEdit to make the API documentation display better in jEdit's help
  42. viewer.
  43. * A note about JDK versions
  44. The Jikes compiler from IBM seems to have a problem where code compiled
  45. against JDK 1.4 does not work under JDK 1.3. Sun's javac does not have
  46. this problem.
  47. If plan on running jEdit under both 1.3 and 1.4, I recommend you compile
  48. it using javac.
  49. * Interesting algorithms and tricks
  50. - org.gjt.sp.jedit.browser.VFSDirectoryEntryTable: a tree table control.
  51. - org.gjt.sp.jedit.buffer.LineManager: the "gap" optimization allows
  52. update operations to be performed in O(1) time in certain
  53. circumstances.
  54. - org.gjt.sp.jedit.buffer.PositionManager: a red/black tree with some
  55. additional tricks.
  56. - org.gjt.sp.jedit.search.BoyerMooreSearchMatcher: fast text search.
  57. - org.gjt.sp.jedit.syntax.TokenMarker: generic tokenizer driven by rules
  58. defined in an XML file.
  59. - org.gjt.sp.jedit.textarea.DisplayManager: the fold visibility map
  60. looks like an RLE-compressed bit set but does lookups in O(log n).
  61. - org.gjt.sp.util.WorkThreadPool: a pool of threads executing requests
  62. from a queue, enforcing various concurrency requirements.