From d8271da7ec7b7e4e082b9127938aa9fa4a6ae6e4 Mon Sep 17 00:00:00 2001 From: Jack Nagel Date: Tue, 19 Apr 2011 21:24:27 -0500 Subject: New formula: uemacs This formula installs the version of uemacs that is maintained by Linus Torvalds (and others). There are no explicit versions so it installs from the repository HEAD. Signed-off-by: Adam Vandenberg --- Library/Formula/uemacs.rb | 68 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 Library/Formula/uemacs.rb (limited to 'Library') diff --git a/Library/Formula/uemacs.rb b/Library/Formula/uemacs.rb new file mode 100644 index 000000000..cafe992cf --- /dev/null +++ b/Library/Formula/uemacs.rb @@ -0,0 +1,68 @@ +require 'formula' + +class Uemacs < Formula + head 'git://git.kernel.org/pub/scm/editors/uemacs/uemacs.git' + homepage 'http://git.kernel.org/?p=editors/uemacs/uemacs.git' + + # two patches to ensure config files are loaded correctly + def patches + DATA + end + + def install + cellar_etc = prefix + 'etc' + + inreplace 'Makefile' do |s| + s.change_make_var! 'BINDIR', bin + s.change_make_var! 'LIBDIR', cellar_etc + s.gsub! ".emacsrc", "emacs.rc" + end + + inreplace 'epath.h' do |s| + s.gsub! ".emacsrc", "emacs.rc" + s.gsub! "/usr/local/lib", etc + end + + bin.mkdir + cellar_etc.mkdir + + system "make" + system "make install" + end + + def caveats + <<-EOS.undent + The system-wide configuration file, emacs.rc, has been installed to + #{etc}. uemacs will also load ~/.emrc if it exists. You can + override this behavior by creating the file ~/.emacsrc. + EOS + end +end + +__END__ +diff --git a/emacs.rc b/emacs.rc +index 06c0f12..e8e07b7 100644 +--- a/emacs.rc ++++ b/emacs.rc +@@ -286,4 +286,7 @@ bind-to-key newline ^J + add-global-mode "utf-8" + !endif + ++!force execute-file &cat $HOME "/.emrc" ++!force execute-file &cat ".emrc" ++ + set $discmd "TRUE" + +diff --git a/bind.c b/bind.c +index eb28c1f..88911f6 100644 +--- a/bind.c ++++ b/bind.c +@@ -490,7 +490,7 @@ char *flook(char *fname, int hflag) + /* build home dir file spec */ + strcpy(fspec, home); + strcat(fspec, "/"); +- strcat(fspec, fname); ++ strcat(fspec, ".emacsrc"); + + /* and try it out */ + if (ffropen(fspec) == FIOSUC) { -- cgit v1.2.3