Commits

Stephen Weeks committed 9ba98a2

updated docs

  • Participants
  • Parent commits 7016440

Comments (0)

Files changed (3)

doc/jane-emacs.info

 This is jane-emacs.info, produced by makeinfo version 4.13 from
-/home/seanmcl/jane-local/doc/jane-emacs.texi.
+jane-emacs.texi.
 
 INFO-DIR-SECTION Jane Street
 START-INFO-DIR-ENTRY
 **************
 
 Emacs has a dizzying array of modes, variables, and keybindings
-available to customize the editing experience.  It can be difficult
-for new users to distinguish between options that many of us use
-frequently (`dired', `dabbrev-expand'), from those used infrequently.
-Moreover, groups of variables often work together to make editing
-consistent (`truncate-lines', `truncate-partial-width-windows').  To
-facilitate experimenting with Emacs features, Jane Street created
-groups of options for tasks we find useful.  We call such a group a
-"micro-feature".  The choice of which variable goes into which group
-is somewhat arbitrary, but we've found that the current collections
-work well for most users.
+available to customize the editing experience.  It can be difficult for
+new users to distinguish between options that many of us use frequently
+(`dired', `dabbrev-expand'), from those used infrequently.  Moreover,
+groups of variables often work together to make editing consistent
+(`truncate-lines', `truncate-partial-width-windows').  To facilitate
+experimenting with Emacs features, Jane Street created groups of
+options for tasks we find useful.  We call such a group a
+"micro-feature".  The choice of which variable goes into which group is
+somewhat arbitrary, but we've found that the current collections work
+well for most users.
 
-   For example, if you want to use `rgrep' to search files, enabling
-the grep microfeature will create shortcuts to search all ocaml
-files, or all OMakefiles below a given directory.  The perl
-microfeature sets mode variables that most people find improves
-editing in perl-mode.
+   For example, if you want to use `rgrep' to search files, enabling the
+grep microfeature will create shortcuts to search all ocaml files, or
+all OMakefiles below a given directory.  The perl microfeature sets
+mode variables that most people find improves editing in perl-mode.
 
-   Microfeatures are enabled by calling a function in your .emacs
-file.  The two examples above are enabled using
+   Microfeatures are enabled by calling a function in your .emacs file.
+The two examples above are enabled using
 
 (Jane.grep)
 (Jane.perl)
 
    * `Jane.backups'   Automatic backups.
 
-   * `Jane.bell'   How to alert in case of an error (and not annoy
-     your neighbors.)
+   * `Jane.bell'   How to alert in case of an error (and not annoy your
+     neighbors.)
 
    * `Jane.buffer-menu'   Improve the buffer-menu (the buffer that
      shows all the current buffers).
 
    * `Jane.grep'   Use grep from Emacs
 
-   * `Jane.hg-blame-summary'   Quickly show the last user who edited
-     a line.
+   * `Jane.hg-blame-summary'   Quickly show the last user who edited a
+     line.
 
    * `Jane.ido'   Settings for ido (nice buffer switching)
 
 
    * `Jane.new-cr-todo'   Using the CR tool.
 
-   * `Jane.no-clutter'   Don't show scroll or tool bars or make
-     backup files.
-
-   * `Jane.omake-jane'   Make sure omake-mode uses 'jomake' to start
-     omake.   *Note omake-mode: (omake-mode)Top.
+   * `Jane.no-clutter'   Don't show scroll or tool bars or make backup
+     files.
 
    * `Jane.pages'   Use visible page delimiters.
 
 
    * `Jane.scrolling'   Scroll one line at a time.
 
-   * `Jane.selective-display'   Activate selective display based on
-     the column at point.
+   * `Jane.selective-display'   Activate selective display based on the
+     column at point.
 
    * `Jane.server'   Use the emacs server (with emacsclient)
 
 
    * `Jane.time'   Show time and date on the mode line.
 
-   * `Jane.uniquify'   Better unique names for files with the same
-     name.
+   * `Jane.uniquify'   Better unique names for files with the same name.
 
    * `Jane.vc'   Version control.
 
 
 
 Tag Table:
-Node: Top209
-Node: Micro-features488
-Node: Ocamlspotter4670
+Node: Top180
+Node: Micro-features459
+Node: Ocamlspotter4517
 
 End Tag Table

doc/omake-mode.info

Binary file modified.

doc/omake-mode.texi

 @xref{Windows and Frames}.
 @end defun
 
-@defun Omake.clear-dedicated-windows-and-framesUnset all dedicated windows and frames.
+@defun Omake.clear-dedicated-windows-and-frames
+Unset all dedicated windows and frames.
 @xref{Windows and Frames}.
 @end defun
 
 @node Environment Variables
 @section Environment Variables
 
+The behavior of the Jane Street OMakeroot is affected by a number of environment
+variables.
+
+@itemize
+@item @kbd{FOUR_POINT_ZERO}
+@item @kbd{LIMIT_SUBDIRS_FOR_SPEED}
+@item @kbd{LINK_EXECUTABLES}
+@item @kbd{VERSION_UTIL_SUPPORT}
+@item @kbd{X_LIBRARY_INLINING}
+@end itemize
+
+You can see the current settings for the variables in a project that is building by
+toggling verbose mode with @kbd{C-c C-v}.  You also set these variables from within OMake
+mode.  The easiest way to do this is with @kbd{C-c C-o}, which prompts for a variable (and
+supports tab completion) and then toggles the value.
+
+OMake server maintains distinct settings of these variables for each project, where a
+project is identified by the path to the root of the project.  There is one directory in
+@kbd{~/.omake-server} for each project OMake server has encountered.  You can see your per
+project settings for project P (P is the full path to the project) in:
+
+  @kbd{~/.omake-server/$P/env.sexp}
+
+If you move a project from one directory to another, OMake server will not know this, and
+will treat the project as a new project, which will reset your settings to their default
+values.
+
+When OMake server encounters a new project, it uses the environment variable setting of a
+variable, if any, for its initial value.  So, for example, you can put in your
+@kbd{~/.bashrc}:
+
+  @kbd{export X_LIBRARY_INLINING=false}
+
+Then, OMake server will initialiaze @kbd{X_LIBRARY_INLINING} to @kbd{false} in any new
+projects it encounters.  This will not affect existing projects.  If you change your
+@kbd{~/.bashrc}, in order to affect omake server, you must start it in an environment
+where the changed @kbd{~/.bashrc} is in effect.  If you start OMake server via emacs, as
+is typical, you can restart emacs from a new terminal that has the changed
+@kbd{~/.bashrc}, and then restart OMake server.
+
 @defun Omake.setenv
 Set an OMake environment variable.
 @end defun