An extension to add Emacs's editing features to Firefox
JavaScript Haskell Shell CSS
Latest commit 9ac9366 Jun 26, 2014 @kazu-yamamoto C-h resets the mark.
Failed to load latest commit information.
chrome C-h resets the mark. Jun 26, 2014
components Removing trailing white spaces. Feb 19, 2010
.gitignore Adding .gitignore. Feb 19, 2010
README updating README. Jun 25, 2014
chrome.manifest catch up to FF4 way. Jun 9, 2011
install.rdf updating install.rdf. Jun 26, 2014 catch up to FF4 way. Jun 9, 2011


The author of Firemacs is Kazu YAMAMOTO <>

* To make the .xpi package

  On the top directory of firemacs:

	% sh

  "work/firemacs-x.y.xpi" will be created.

  Please "open" this file to install this Firemacs.

* To use this sources directly, instead of .xpi

  1) Find the profile directory of Firefox.

     On Mac, it is "~/Library/Application Support/Firefox/"

  2) Find the firemacs directory under the profile directory

     Suppose your profile name is "profile.default", it would be

  3) Change directory to the firemacs directory.

  4) Remove all files on the firemacs directory using:

	% rm -rf *

  5) Create three files: "components", "chrome", "install.rdf",

  5.1) Make symbolic link to the "components" directory of Git:

	% ln -s $GITDIR/components

  5.2) Make symbolic link to the "chrome" directory of Git:

	% ln -s $GITDIR/chrome

  5.3) Copy the "install.rdf" file from Git:

	% cp $GITDIR/install.rdf .

  5.4) Create the "chrome.manifest" file whose contents are:

overlay	chrome://browser/content/browser.xul	chrome://firemacs/content/firemacs.xul application={ec8030f7-c20a-464f-9b0e-13a3a9e97384} appversion>=4.0
overlay	chrome://browser/content/browser.xul	chrome://firemacs/content/statusbar.xul
content	firemacs	chrome/content/
skin	firemacs	classic/1.0	chrome/skin/

  6) Your modification to the source files will be in effect when you
     restart Firefox.

* Generating files in the "chrome/content" directory

  "config-name.js","keybinding.js", and "config.xul" under the
  "chrome/content" directory are automatically generated.

  Automatic make tool is in the "chrome/content/db" directory.

  - "firemacs.yml" contains keybiding information in the YML style.
  - "make.hs" will create these three files above from "firemacs.yml"
    and "config.xul".

  "make.hs" is written by Haskell. You need to install Haskell

  To compile and run "make.hs", type in the "chrome/content/db"

	% runghc make.hs
	Generating "../config-name.js"... done
	Generating "../keybinding.js"... done
	Generating "../config.xul"... done