factor/misc/fuel
Jose A. Ortega Ruiz 5c18951bf5 FUEL: Fix for word extraction in top level forms. 2009-01-10 01:05:51 +01:00
..
README FUEL: New command: fuel-show-file-words. 2009-01-08 18:47:17 +01:00
factor-mode.el FUEL: Nicer autodoc error messages. 2009-01-09 03:45:04 +01:00
fu.el FUEL: Fix bug whereby true display-stacks? could hang the listener. 2008-12-19 00:20:56 +01:00
fuel-autodoc.el FUEL: Nicer autodoc error messages. 2009-01-09 03:45:04 +01:00
fuel-base.el FUEL: Small fixes. 2008-12-23 00:34:43 +01:00
fuel-completion.el FUEL: Stack inference support. 2008-12-20 16:51:05 +01:00
fuel-connection.el FUEL: Nicer autodoc error messages. 2009-01-09 03:45:04 +01:00
fuel-debug-uses.el FUEL: Offer a command to add missing vocabs after run-file. 2008-12-31 04:05:34 +01:00
fuel-debug.el FUEL: Offer a command to add missing vocabs after run-file. 2008-12-31 04:05:34 +01:00
fuel-edit.el FUEL: $describe-vocab and child vocab lists implemented. 2009-01-06 07:05:42 +01:00
fuel-eval.el FUEL: New command fuel-help-kill-page (bound to 'k' in help browser). 2009-01-05 06:22:36 +01:00
fuel-font-lock.el FUEL: Better syntax highlighting. 2009-01-10 00:55:39 +01:00
fuel-help.el FUEL: Tidbits. 2009-01-07 04:08:36 +01:00
fuel-listener.el FUEL: Improved connection behaviour in presence of fuel loading errors. 2009-01-09 01:50:51 +01:00
fuel-log.el FUEL: Initial word completion (M-TAB) plus lotsa fixes. 2008-12-15 23:44:13 +01:00
fuel-markup.el FUEL: Fix for symbol words display in vocab help pages. 2009-01-07 03:03:20 +01:00
fuel-mode.el FUEL: New command: fuel-show-file-words. 2009-01-08 18:47:17 +01:00
fuel-popup.el FUEL: New fuel-update-usings (C-cC-eu) command. 2008-12-23 22:37:25 +01:00
fuel-refactor.el FUEL: Fix for word extraction in top level forms. 2009-01-10 01:05:51 +01:00
fuel-stack.el FUEL: Customization docstrings homogenized. 2008-12-22 01:51:41 +01:00
fuel-syntax.el FUEL: Better syntax highlighting. 2009-01-10 00:55:39 +01:00
fuel-table.el FUEL: Shorten very long words in tables to keep delims aligned. 2009-01-07 02:47:44 +01:00
fuel-xref.el FUEL: New command: fuel-show-file-words. 2009-01-08 18:47:17 +01:00

README

FUEL, Factor's Ultimate Emacs Library                              -*- org -*-
-------------------------------------

FUEL provides a complete environment for your Factor coding pleasure
inside Emacs, including source code edition and interaction with a
Factor listener instance running within Emacs.

FUEL was started by Jose A Ortega as an extension to Eduardo Cavazos'
original factor.el code. Eduardo is also responsible of naming the
beast.

* Installation

  FUEL comes bundled with Factor's distribution. The folder misc/fuel
  contains Elisp code, and there's a fuel vocabulary in extras/fuel.

  To install FUEL, either add this line to your Emacs initialisation:

  (load-file "<path/to/factor/installation>/misc/fuel/fu.el")

  or

  (add-to-list load-path "<path/to/factor/installation>/fuel")
  (require 'fuel)

  If all you want is a major mode for editing Factor code with pretty
  font colors and indentation, without running the factor listener
  inside Emacs, you can use instead:

  (add-to-list load-path "<path/to/factor/installation>/fuel")
  (setq factor-mode-use-fuel nil)
  (require 'factor-mode)

* Basic usage

  If you're using the default factor binary and images locations inside
  the Factor's source tree, that should be enough to start using FUEL.
  Editing any file with the extension .factor will put you in
  factor-mode; try C-hm for a summary of available commands.

  To start the listener, try M-x run-factor.

  Many aspects of the environment can be customized:
  M-x customize-group fuel will show you how many.

* Quick key reference

  (Triple chords ending in a single letter <x> accept also C-<x> (e.g.
  C-cC-eC-r is the same as C-cC-er)).

*** In factor source files:

    - C-cz : switch to listener
    - C-co : cycle between code, tests and docs factor files

    - M-. : edit word at point in Emacs
    - M-TAB : complete word at point
    - C-cC-eu : update USING: line
    - C-cC-ev : edit vocabulary (M-x fuel-edit-vocabulary)
    - C-cC-ew : edit word (M-x fuel-edit-word-at-point)
    - C-cC-ed : edit word's doc (M-x fuel-edit-word-at-point)

    - C-cr, C-cC-er : eval region
    - C-M-r, C-cC-ee : eval region, extending it to definition boundaries
    - C-M-x, C-cC-ex : eval definition around point
    - C-ck, C-cC-ek : run file

    - C-cC-da : toggle autodoc mode
    - C-cC-dd : help for word at point
    - C-cC-ds : short help word at point
    - C-cC-de : show stack effect of current sexp (with prefix, region)
    - C-cC-dp : find words containing given substring (M-x fuel-apropos)
    - C-cC-dv : show words in current file (with prefix, ask for vocab)

    - C-cM-<, C-cC-d< : show callers of word at point
    - C-cM->, C-cC-d> : show callees of word at point

    - C-cC-xs : extract innermost sexp (up to point)  as a separate word
    - C-cC-xr : extract region as a separate word

*** In the listener:

    - TAB : complete word at point
    - M-. : edit word at point in Emacs
    - C-ca : toggle autodoc mode
    - C-cp : find words containing given substring (M-x fuel-apropos)
    - C-cs : toggle stack mode
    - C-cv : edit vocabulary
    - C-ch : help for word at point
    - C-ck : run file

*** In the debugger (it pops up upon eval/compilation errors):

    - g : go to error
    - <digit> : invoke nth restart
    - w/e/l : invoke :warnings, :errors, :linkage
    - q : bury buffer

*** In the help browser:

    - h : help for word at point
    - v : help for a vocabulary
    - a : find words containing given substring (M-x fuel-apropos)
    - e : edit current article
    - ba : bookmark current page
    - bb : display bookmarks
    - bd : delete bookmark at point
    - n/p : next/previous page
    - l : previous page
    - SPC/S-SPC : scroll up/down
    - TAB/S-TAB : next/previous link
    - k : kill current page and go to previous or next
    - r : refresh page
    - c : clean browsing history
    - M-. : edit word at point in Emacs
    - C-cz : switch to listener
    - q : bury buffer

*** In crossref buffers

    - TAB/BACKTAB : navigate links
    - RET/mouse click : follow link
    - h : show help for word at point
    - q : bury buffer