/plugins/ProjectViewer/branches/projectviewer_2_0/docs/users-guide.xml

# · XML · 405 lines · 347 code · 56 blank · 2 comment · 0 complexity · 15ecab6527522f81495494ca456efad5 MD5 · raw file

  1. <?xml version="1.0"?>
  2. <!-- ProjectViewer plugin user's guide -->
  3. <!-- (C) 2001,2002 Stefan Kost, Calvin Yu -->
  4. <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
  5. "docbookx.dtd">
  6. <book>
  7. <bookinfo>
  8. <title>ProjectViewer plugin</title>
  9. <authorgroup>
  10. <author><firstname>Marcelo</firstname><surname>Vanzin</surname></author>
  11. <author><firstname>Matthew</firstname><surname>Payne</surname></author>
  12. <author><firstname>Stefan</firstname><surname>Kost</surname></author>
  13. <author><firstname>Calvin</firstname><surname>Yu</surname></author>
  14. <author><firstname>Kevin</firstname><surname>Burton</surname></author>
  15. </authorgroup>
  16. <legalnotice>
  17. <title>Legal Notice</title>
  18. <para>
  19. Permission is granted to copy, distribute and/or modify this
  20. document under the terms of the GNU Free Documentation License,
  21. Version 1.1 or any later version published by the
  22. Free Software Foundation; with no
  23. <quote>Invariant Sections</quote>,
  24. <quote>Front-Cover Texts</quote> or
  25. <quote>Back-Cover Texts</quote>,
  26. each as defined in the license.
  27. A copy of the license can be found in the file
  28. <filename>COPYING.DOC.txt</filename> included with jEdit.
  29. </para>
  30. </legalnotice>
  31. </bookinfo>
  32. <chapter id="presentation">
  33. <title>Presentation</title>
  34. <para>
  35. The ProjectViewer plugin allows to define group of files as projects.
  36. </para>
  37. </chapter>
  38. <chapter id="usage">
  39. <title>Using the ProjectViewer plugin</title>
  40. <para>
  41. The plugin interface consists of a tool bar, containing some command buttons,
  42. a combo box containing the currently available projects, and the project's
  43. views.
  44. </para>
  45. <bridgehead renderas='sect3'>What is a project?</bridgehead>
  46. <para>
  47. A project is a group of files. It has a name and a root directory. Any
  48. files can be added to the project. Even files that do not exist may be
  49. added - they'll behave as "virtual" directories. The project is not tied
  50. to the filesystem layout when organizing your files.
  51. </para>
  52. <para>
  53. The project root, however, has some added functionality not available to
  54. other directories or files not related to the root. For example, when
  55. saving a file in jEdit, the plugins checks if the file is physically below
  56. the current project's root directory, and in this case asks if the user
  57. wants to add the new file to the project. The project root is also used
  58. when importing files automatically, when creating new projects.
  59. </para>
  60. <para>
  61. To create a project, click the "Create Project" button in the toolbar, or
  62. choose the correspondent entry in the project combo box. This
  63. will show a dialog where you can enter the properties of the project you
  64. want to create. After you have chosen these properties, you'll be asked if you
  65. would like to import all files from the root directory. You may choose to
  66. import using three different filtering methods: import all files, import
  67. using the plugin's import settings (defined in the jEdit Plugin Options) or
  68. use the CVS/Entries file for each directory below and including the root
  69. to choose the files to be imported.
  70. </para>
  71. <bridgehead renderas='sect3'>The User Interface</bridgehead>
  72. <para>
  73. There are three possible views of the files on a project: the "Folders" view,
  74. which shows the files as if in a file manager, organised in directories. The
  75. "Files" view, which shows all the project's files in a flat list. And the
  76. "Working Files", which shows the files currently opened in jEdit.
  77. The files in the different views are colored according to the patterns and
  78. colors you have choosen for the filesystem-browser. Furthermore currently
  79. open files are highlighted by underlining their names.
  80. </para>
  81. <para>
  82. Optionally, by choosing "All Projects" from the project selection box, a
  83. alternative view is shown, which displays data from all projects. Some
  84. plugin functionality is not available when in this mode.
  85. </para>
  86. <para>
  87. You can interact with the project in several ways. Double clicking on a file
  88. in the tree will cause it to be opened in a jEdit buffer, or, if the file
  89. is already opened, will cause it to be focused (if not the current buffer)
  90. or closed (if it is the current buffer). Using the right mouse button
  91. will show options related to the current selection on the tree, allowing
  92. you to remove files or directories from a project, deleting them from the
  93. disk, or rename them, among many other options.
  94. </para>
  95. <para>
  96. Right-clicking on a project will let you change the project's properties (the
  97. name and the root, for instance) and re-import files from the project's root
  98. directory. Changing the project root will cause the plugin to ask to import
  99. files from the new root, just like creating a new project does.
  100. </para>
  101. <bridgehead renderas='sect3'>Importing Files</bridgehead>
  102. <para>
  103. Differently from previous releases, the plugin does not follow the filesystem
  104. layout to organize files anymore, except for certain cases; notably, when
  105. doing the initial import from the project root or when adding a file that
  106. has been saved to the project.
  107. </para>
  108. <para>
  109. In the import dialog (available by choosing "Import files" from the right-click
  110. menu), you can choose any files to be imported to the selected node (the one
  111. where you clicked to get the context menu). The same filters available when
  112. doing the initial import for the project are available in the file chooser.
  113. </para>
  114. <para>
  115. You may choose any files and directories to import, even files and directories
  116. that are not "children" of the selected node in the file system layout. This
  117. allows you to organize your files in any way you want. You may even enter the
  118. name of a non-existant file in the file chooser: it will be treated as a
  119. directory, and even though the directory does not exist on disk, you'll have
  120. the same functionality for it as you have for other directories in your project.
  121. </para>
  122. <para>
  123. When importing existing directories, you'll be asked if you want to import
  124. them recursively. Again, the three options for file filtering are presented,
  125. so you can have more control over which files are imported. The dialog will
  126. appear once for each import, and not for each directory in that particular
  127. import process.
  128. </para>
  129. <bridgehead renderas='sect3'>Commands available in the toolbar</bridgehead>
  130. <para>
  131. The tool bar provides a fast way to access some of the functionality of the
  132. Project Viewer plugin. The available commands are:
  133. </para>
  134. <itemizedlist>
  135. <listitem>
  136. <para>
  137. Create project: shows the project properties dialog, where you can
  138. enter information about a new project. After creating a new
  139. project, you'll be asked if you want to import its files, and it
  140. will become the active project.
  141. </para>
  142. </listitem>
  143. <listitem>
  144. <para>
  145. Expand the file list: opens all nodes in the currently selected tree.
  146. </para>
  147. </listitem>
  148. <listitem>
  149. <para>
  150. Contract the file list: closes all nodes in the current tree.
  151. </para>
  152. </listitem>
  153. <listitem>
  154. <para>
  155. Open all files in this project: opens all files that are part of
  156. this project in jEdit buffers.
  157. </para>
  158. </listitem>
  159. <listitem>
  160. <para>
  161. Add file to project: shows a dialog where you can choose single files
  162. to add to the current project.
  163. </para>
  164. </listitem>
  165. <listitem>
  166. <para>
  167. Import files into this project: shows a dialog where you can choose
  168. a directory from which the plugin will look for files that comply
  169. with the Import Properties (see <emphasis>Customization</emphasis>
  170. below), and add these files to the current project.
  171. </para>
  172. </listitem>
  173. <listitem>
  174. <para>
  175. Remove: remove the currently selected node(s) from the project, be
  176. them files or directories. If a project is selected in the tree,
  177. the project will be removed. A confirmation dialog is show when
  178. removing directories, multiple nodes or projects (but not when
  179. removing single files).
  180. </para>
  181. </listitem>
  182. </itemizedlist>
  183. </chapter>
  184. <chapter id="customization">
  185. <title>Customization</title>
  186. <para>
  187. Several options are configurable from the jEdit options dialog. There are
  188. options to control the GUI of the plugin, and internal behaviour when
  189. executing several actions. The options are:
  190. </para>
  191. <bridgehead renderas='sect3'>General Behaviour Options</bridgehead>
  192. <itemizedlist>
  193. <listitem>
  194. <para>
  195. Close files on project change: if selected, files from the current
  196. project that are opened in jEdit will be closed when you switch to
  197. another project.
  198. </para>
  199. </listitem>
  200. <listitem>
  201. <para>
  202. Remember open files: if selected, files opened in the current project
  203. will be re-opened when you select the same project in a later moment,
  204. even between different jEdit sessions.
  205. </para>
  206. </listitem>
  207. <listitem>
  208. <para>
  209. Delete non-existant files from list: if selected, each file in the
  210. project is verified to exist when the project loads. If the file does
  211. not exist, it is removed from the project.
  212. </para>
  213. </listitem>
  214. <listitem>
  215. <para>
  216. Save project data on change: if selected, any change to a project
  217. (including or removing a project, for example) will cause the data
  218. to be saved on disk.
  219. </para>
  220. </listitem>
  221. </itemizedlist>
  222. <bridgehead renderas='sect3'>GUI Options</bridgehead>
  223. <itemizedlist>
  224. <listitem>
  225. <para>
  226. Show toolbar: whether to show the plugin's toolbar or not. The
  227. toolbar is automatically hidden when no tree is selected for
  228. showing, regardless of this option.
  229. </para>
  230. </listitem>
  231. <listitem>
  232. <para>
  233. Show folders tree: if the "Folders" tree view should be shown.
  234. </para>
  235. </listitem>
  236. <listitem>
  237. <para>
  238. Show files tree: if the "Files" tree view should be shown. Disabling
  239. this view can greatly improve performance when your projects have
  240. many files.
  241. </para>
  242. </listitem>
  243. <listitem>
  244. <para>
  245. Show working files tree: if the "Working Filer" tree view should be
  246. shown.
  247. </para>
  248. </listitem>
  249. </itemizedlist>
  250. <bridgehead renderas='sect3'>Import Options</bridgehead>
  251. <itemizedlist>
  252. <listitem>
  253. <para>
  254. Extensions to include: a list of file extensions to be included in
  255. a project when automatically importing directories, separated by
  256. spaces.
  257. </para>
  258. </listitem>
  259. <listitem>
  260. <para>
  261. Directories to ignore: space-separated list of directory names to
  262. ignore when doing automatic import of files.
  263. No files withing directories whose names are listed here will be
  264. imported.
  265. </para>
  266. </listitem>
  267. <listitem>
  268. <para>
  269. Files to include: list of file names to include (useful when there
  270. are files without extensions in your projects).
  271. </para>
  272. </listitem>
  273. </itemizedlist>
  274. </chapter>
  275. <chapter id="troubleshooting">
  276. <title>Troubleshooting</title>
  277. <bridgehead renderas='sect3'>ProjectViewer, jEdit and XML Parsers</bridgehead>
  278. <para>
  279. The configuration for the ProjectViewer plugin is now stored in XML format;
  280. this makes it mandatory to have an XML parser available in the system. For
  281. those using Java 1.3, you can dowload Crimson or Xerces from
  282. <ulink url="http://xml.apache.org">http://xml.apache.org</ulink>, or install
  283. jEdit's XML plugin.
  284. </para>
  285. <para>
  286. For those using JDK 1.4, Crimson is already available in the default
  287. installations. However, there may be a conflict between the JAXP runtime
  288. available in the JRE 1.4 and the Xerces parser that comes with the XML
  289. plugin for jEdit, due to some class loader issues. If you have such a
  290. configuration, please install Xerces in the JDK/JRE extensions directory
  291. (usually [path_to_jdk]/jre/lib/ext).
  292. </para>
  293. </chapter>
  294. <chapter id="license">
  295. <title>License</title>
  296. <para>
  297. The source code is distributed under the GPL.
  298. Please see
  299. <ulink url="http://www.fsf.org/copyleft/gpl.html">
  300. http://www.fsf.org/copyleft/gpl.html
  301. </ulink>
  302. </para>
  303. </chapter>
  304. <chapter id="feedback">
  305. <title>Feedback</title>
  306. <para>
  307. The preferred way to send bug reports is to use the
  308. Sourceforge Bug Tracker at
  309. <ulink url="http://sourceforge.net/bugs/?group_id=588">
  310. http://sourceforge.net/bugs/?group_id=588
  311. </ulink>
  312. </para>
  313. <para>You can also write to:</para>
  314. <itemizedlist>
  315. <listitem>
  316. <para>
  317. Stefan Kost <email>ensonic@sonicpulse.de</email>;
  318. </para>
  319. </listitem>
  320. <listitem>
  321. <para>
  322. or jEdit-users mailing-list
  323. <email>jedit-users@lists.sourceforge.net</email>;
  324. </para>
  325. </listitem>
  326. <listitem>
  327. <para>
  328. or jEdit-devel mailing-list
  329. <email>jedit-devel@lists.sourceforge.net</email>.
  330. </para>
  331. </listitem>
  332. </itemizedlist>
  333. </chapter>
  334. <chapter id="credits">
  335. <title>Credits</title>
  336. <itemizedlist>
  337. <listitem>
  338. <para>
  339. ProjectViewer was previously (up to 1.0.2) maintained by Calvin Yu
  340. </para>
  341. </listitem>
  342. <listitem>
  343. <para>
  344. ProjectViewer was originally developed Kevin A. Burton
  345. </para>
  346. </listitem>
  347. </itemizedlist>
  348. </chapter>
  349. </book>