diff --git a/misc/fuel/README b/misc/fuel/README index 69e5a98299..cf96e29f52 100644 --- a/misc/fuel/README +++ b/misc/fuel/README @@ -1,4 +1,4 @@ -FUEL, Factor's Ultimate Emacs Library -*- org -*- +FUEL, Factor's Ultimate Emacs Library ------------------------------------- FUEL provides a complete environment for your Factor coding pleasure @@ -29,47 +29,46 @@ beast. * Basic usage *** Running the listener - 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. + 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. + To start the listener, try M-x run-factor. - By default, FUEL will try to use the binary and image files in the - factor installation directory. You can customize them with: + By default, FUEL will try to use the binary and image files in the + factor installation directory. You can customize them with: (setq fuel-listener-factor-binary ) (setq fuel-listener-factor-image ) - Many aspects of the environment can be customized: - M-x customize-group fuel will show you how many. + Many aspects of the environment can be customized: + M-x customize-group fuel will show you how many. *** Faster listener startup - On startup, run-factor loads the fuel vocabulary, which can take a - while. If you want to speedup the load process, type 'save' in the - listener prompt just after invoking run-factor. This will save a - factor image (overwriting the current one) with all the needed - vocabs. + On startup, run-factor loads the fuel vocabulary, which can take a + while. If you want to speedup the load process, type 'save' in the + listener prompt just after invoking run-factor. This will save a + factor image (overwriting the current one) with all the needed + vocabs. *** Connecting to a running Factor - 'run-factor' starts a new factor listener process managed by Emacs. - If you prefer to start Factor externally, you can also connect - remotely from Emacs. Here's how to proceed: + 'run-factor' starts a new factor listener process managed by Emacs. + If you prefer to start Factor externally, you can also connect + remotely from Emacs. Here's how to proceed: - - In the factor listener, run FUEL: - "fuel" run - This will start a server listener in port 9000. - - Switch to Emacs and issue the command 'M-x connect-to-factor'. + - In the factor listener, run FUEL: "fuel" run + This will start a server listener in port 9000. + - Switch to Emacs and issue the command 'M-x connect-to-factor'. That's it; you should be up and running. See the help for 'connect-to-factor' for how to use a different port. *** Vocabulary creation - FUEL offers a basic interface with Factor's scaffolding utilities. + FUEL offers a basic interface to Factor's scaffolding utilities. To create a new vocabulary directory and associated files: M-x fuel-scaffold-vocab @@ -81,91 +80,107 @@ beast. * Quick key reference - (Triple chords ending in a single letter accept also C- (e.g. - C-cC-eC-r is the same as C-cC-er)). + Triple chords ending in a single letter accept also C- (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 - - C-cs : switch to other factor buffer (M-x fuel-switch-to-buffer) - - C-cr : switch to listener and refresh all loaded vocabs - - C-x4s : switch to other factor buffer in other window - - C-x5s : switch to other factor buffer in other frame + Commands in parenthesis can be invoked interactively with + M-x , not necessarily in a factor buffer. - - M-. : edit word at point in Emacs (see fuel-edit-word-method custom var) - - M-, : go back to where M-. was last invoked - - 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-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 or vocabulary at point - (M-x fuel-show-callers, M-x fuel-vocab-usage) - - C-cM->, C-cC-d> : show callees of word or vocabulary at point - (M-x fuel-show-callees, M-x fuel-vocab-uses) - - - C-cC-xs : extract innermost sexp (up to point) as a separate word - - C-cC-xr : extract region as a separate word - - C-cC-xi : replace word at point by its definition - - C-cC-xv : extract region as a separate vocabulary - - C-cC-xw : rename all uses of a word + |-----------------+------------------------------------------------------------| + | C-cz | switch to listener (run-factor) | + | C-co | cycle between code, tests and docs files | + | C-cr | switch to listener and refresh all loaded vocabs | + | C-cs | switch to other factor buffer (fuel-switch-to-buffer) | + | C-x4s | switch to other factor buffer in other window | + | C-x5s | switch to other factor buffer in other frame | + |-----------------+------------------------------------------------------------| + | M-. | edit word at point in Emacs (fuel-edit-word) | + | M-, | go back to where M-. was last invoked | + | M-TAB | complete word at point | + | C-cC-eu | update USING: line (fuel-update-usings) | + | C-cC-ev | edit vocabulary (fuel-edit-vocabulary) | + | C-cC-ew | edit word (fuel-edit-word-at-point) | + | C-cC-ed | edit word's doc (C-u M-x fuel-edit-word-doc-at-point) | + |-----------------+------------------------------------------------------------| + | 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 (fuel-run-file) | + |-----------------+------------------------------------------------------------| + | C-cC-da | toggle autodoc mode (fuel-autodoc-mode) | + | C-cC-dd | help for word at point (fuel-help) | + | C-cC-ds | short help word at point (fuel-help-short) | + | C-cC-de | show stack effect of current sexp (with prefix, region) | + | C-cC-dp | find words containing given substring (fuel-apropos) | + | C-cC-dv | show words in current file (with prefix, ask for vocab) | + |-----------------+------------------------------------------------------------| + | C-cM-<, C-cC-d< | show callers of word or vocabulary at point | + | | (fuel-show-callers, fuel-vocab-usage) | + | C-cM->, C-cC-d> | show callees of word or vocabulary at point | + | | (fuel-show-callees, fuel-vocab-uses) | + |-----------------+------------------------------------------------------------| + | C-cC-xs | extract innermost sexp (up to point) as a separate word | + | | (fuel-refactor-extract-sexp) | + | C-cC-xr | extract region as a separate word | + | | (fuel-refactor-extract-region) | + | C-cC-xv | extract region as a separate vocabulary | + | | (fuel-refactor-extract-vocab) | + | C-cC-xi | replace word by its definition (fuel-refactor-inline-word) | + | C-cC-xw | rename all uses of a word (fuel-refactor-rename-word) | + |-----------------+------------------------------------------------------------| *** In the listener: - - TAB : complete word at point - - M-. : edit word at point in Emacs - - C-cr : refresh all loaded vocabs - - 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 + |------+----------------------------------------------------------| + | TAB | complete word at point | + | M-. | edit word at point in Emacs | + | C-cr | refresh all loaded vocabs | + | 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 - - : invoke nth restart - - w/e/l : invoke :warnings, :errors, :linkage - - q : bury buffer + |---------+-------------------------------------| + | g | go to error | + | | 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 + |-----------+----------------------------------------------------------| + | 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 + |-----------------+-----------------------------| + | TAB/BACKTAB | navigate links | + | RET/mouse click | follow link | + | h | show help for word at point | + | q | bury buffer | + |-----------------+-----------------------------|