[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] master 4991912 13/17: Fix docstring quoting. New el-get method.
From: |
Rocky Bernstein |
Subject: |
[elpa] master 4991912 13/17: Fix docstring quoting. New el-get method. |
Date: |
Thu, 25 May 2017 02:05:04 -0400 (EDT) |
branch: master
commit 49919120c93a05beede58ce7cc261e1f47721fdd
Author: rocky <address@hidden>
Commit: rocky <address@hidden>
Fix docstring quoting. New el-get method.
Thanks to Paul Eggart
---
el-get-install.el | 104 +++++++++++++++++++++++++++++++++++++++++++++++++++
load-relative.el | 4 +-
test/Makefile.am | 2 +-
test/install-pkgs.el | 26 -------------
4 files changed, 107 insertions(+), 29 deletions(-)
diff --git a/el-get-install.el b/el-get-install.el
new file mode 100644
index 0000000..86c55ec
--- /dev/null
+++ b/el-get-install.el
@@ -0,0 +1,104 @@
+(eval-when-compile
+ (defvar el-get-sources)
+)
+
+(declare-function el-get-post-install 'el-get)
+
+(add-to-list 'load-path "~/.emacs.d/el-get/el-get")
+
+;;; el-get-install.el --- installer for the lazy
+;;
+;; Copyright (C) 2010 Dimitri Fontaine
+;;
+;; Author: Dimitri Fontaine <address@hidden>
+;; URL: http://www.emacswiki.org/emacs/el-get.el
+;; Created: 2010-06-17
+;; Keywords: emacs package elisp install elpa git git-svn bzr cvs apt-get fink
http http-tar
+;; Licence: WTFPL, grab your copy here: http://sam.zoy.org/wtfpl/
+;;
+;; This file is NOT part of GNU Emacs.
+;;
+;; bootstrap your el-get installation, the goal is then to use el-get to
+;; update el-get.
+;;
+;; So the idea is that you copy/paste this code into your *scratch* buffer,
+;; hit C-j, and you have a working el-get.
+
+(let ((el-get-root
+ (file-name-as-directory
+ (or (bound-and-true-p el-get-dir)
+ (concat (file-name-as-directory user-emacs-directory) "el-get")))))
+
+ (when (file-directory-p el-get-root)
+ (add-to-list 'load-path el-get-root))
+
+ ;; try to require el-get, failure means we have to install it
+ (unless (require 'el-get nil t)
+ (unless (file-directory-p el-get-root)
+ (make-directory el-get-root t))
+
+ (let* ((package "el-get")
+ (buf (switch-to-buffer "*el-get bootstrap*"))
+ (pdir (file-name-as-directory (concat el-get-root package)))
+ (git (or (executable-find "git")
+ (error "Unable to find `git'")))
+ (url (or (bound-and-true-p el-get-git-install-url)
+ "http://github.com/dimitri/el-get.git"))
+ (default-directory el-get-root)
+ (process-connection-type nil) ; pipe, no pty (--no-progress)
+
+ ;; First clone el-get
+ (status
+ (call-process
+ git nil `(,buf t) t "--no-pager" "clone" "-v" url package)))
+
+ (unless (zerop status)
+ (error "Couldn't clone el-get from the Git repository: %s" url))
+
+ ;; switch branch if we have to
+ (let* ((branch (cond
+ ;; Check if a specific branch is requested
+ ((bound-and-true-p el-get-install-branch))
+ ;; Check if master branch is requested
+ ((boundp 'el-get-master-branch) "master")
+ ;; Read the default branch from the el-get recipe
+ ((plist-get (with-temp-buffer
+ (insert-file-contents-literally
+ (expand-file-name "recipes/el-get.rcp"
pdir))
+ (read (current-buffer)))
+ :branch))
+ ;; As a last resort, use the master branch
+ ("master")))
+ (remote-branch (format "origin/%s" branch))
+ (default-directory pdir)
+ (bstatus
+ (if (string-equal branch "master")
+ 0
+ (call-process git nil (list buf t) t "checkout" "-t"
remote-branch))))
+ (unless (zerop bstatus)
+ (error "Couldn't `git checkout -t %s`" branch)))
+
+ (add-to-list 'load-path pdir)
+ (load package)
+ (let ((el-get-default-process-sync t) ; force sync operations for
installer
+ (el-get-verbose t)) ; let's see it all
+ (el-get-post-install "el-get"))
+ (with-current-buffer buf
+ (goto-char (point-max))
+ (insert "\nCongrats, el-get is installed and ready to serve!")))))
+
+
+(declare-function el-get 'el-get)
+
+;; now either el-get is `require'd already, or have been `load'ed by the
+;; el-get installer.
+(setq
+ el-get-sources
+ '(el-get ; el-get is self-hosting
+ loc-changes ; loc marks in buffers
+ load-relative ; load emacs lisp relative to emacs source
+ test-simple ; simple test framework
+ ))
+
+;; install new packages and init already installed packages
+(el-get 'sync '(loc-changes list-utils load-relative test-simple))
diff --git a/load-relative.el b/load-relative.el
index d1ba155..fe01cb3 100644
--- a/load-relative.el
+++ b/load-relative.el
@@ -287,11 +287,11 @@ strings, each string being the relative name of file you
want to run."
"Call `provide' with the feature's symbol name made from
source-code's file basename sans extension. For example if you
write (provide-me) inside file ~/lisp/foo.el, this is the same as
-writing: (provide 'foo).
+writing: (provide \\='foo).
With a prefix, that prefix is prepended to the `provide' So in
the previous example, if you write (provide-me \"bar-\") this is the
-same as writing (provide 'bar-foo)
+same as writing (provide \\='bar-foo)
"
`(provide (intern (concat ,prefix (file-name-sans-extension
(file-name-nondirectory (__FILE__)))))))
diff --git a/test/Makefile.am b/test/Makefile.am
index 711f08e..867723c 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -60,7 +60,7 @@ test-%.run:
#: Run tests getting external Lisp dependencies
test-%.elrun:
- (cd $(top_srcdir)/test && $(EMACS) --batch --no-site-file --no-splash
--load ./install-pkgs.el --load $(@:.elrun=.el))
+ (cd $(top_srcdir)/test && $(EMACS) --batch --no-site-file --no-splash
--load ../el-get-install.el --load $(@:.elrun=.el))
# Whatever it is you want to do, it should be forwarded to the
# to top-level directories
diff --git a/test/install-pkgs.el b/test/install-pkgs.el
deleted file mode 100644
index 8049d62..0000000
--- a/test/install-pkgs.el
+++ /dev/null
@@ -1,26 +0,0 @@
-;; Copyright (C) 2015-2016 Free Software Foundation, Inc
-
-;; Author: Rocky Bernstein <address@hidden>
-
-;; This program is free software; you can redistribute it and/or modify
-;; it under the terms of the GNU General Public License as published by
-;; the Free Software Foundation, either version 3 of the License, or
-;; (at your option) any later version.
-
-;; This program is distributed in the hope that it will be useful,
-;; but WITHOUT ANY WARRANTY; without even the implied warranty of
-;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-;; GNU General Public License for more details.
-
-;; You should have received a copy of the GNU General Public License
-;; along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-(require 'package)
-(package-refresh-contents)
-(setq package-archives '(("melpa" . "https://melpa.org/packages/")
- ("org" . "http://orgmode.org/elpa/")
- ("gnu" . "https://elpa.gnu.org/packages/")))
-(condition-case nil
- (package-install 'test-simple)
- ((debug error) nil))
-(load-library "test-simple")
- [elpa] master updated (1e533d2 -> 9afba2e), Rocky Bernstein, 2017/05/25
- [elpa] master 7d5bb44 01/17: Sync autotools version, and clean up, Rocky Bernstein, 2017/05/25
- [elpa] master e469f39 08/17: Another travis try, Rocky Bernstein, 2017/05/25
- [elpa] master a3bdef8 10/17: Another travis try, Rocky Bernstein, 2017/05/25
- [elpa] master b11fb74 14/17: Correct location of short filter, Rocky Bernstein, 2017/05/25
- [elpa] master c719e8d 07/17: Another travis try, Rocky Bernstein, 2017/05/25
- [elpa] master 918a452 05/17: load-history list might not have string car, Rocky Bernstein, 2017/05/25
- [elpa] master 84f4a5e 03/17: * load-relative/test/test-file.el: Fix up copyright, Rocky Bernstein, 2017/05/25
- [elpa] master 839f651 02/17: Organization cleanup, Rocky Bernstein, 2017/05/25
- [elpa] master 4991912 13/17: Fix docstring quoting. New el-get method.,
Rocky Bernstein <=
- [elpa] master ec20ba0 15/17: Update README.md: fix small typos, Rocky Bernstein, 2017/05/25
- [elpa] master 8280df5 16/17: Merge pull request #7 from ohspite/patch-1, Rocky Bernstein, 2017/05/25
- [elpa] master 9514dcd 04/17: Merge branch 'master' of github.com:rocky/emacs-load-relative, Rocky Bernstein, 2017/05/25
- [elpa] master 9a4289a 06/17: Can't figure out how to MELPA load test-simple, Rocky Bernstein, 2017/05/25
- [elpa] master 0a40d7d 09/17: Another travis try, Rocky Bernstein, 2017/05/25
- [elpa] master a820b19 11/17: Fixes #6 - this time for sure!?, Rocky Bernstein, 2017/05/25
- [elpa] master 9afba2e 17/17: Merge commit '8280df5ce6db836559a5c2442b97a2f02b6f7a05', Rocky Bernstein, 2017/05/25
- [elpa] master 2aa165f 12/17: Reinstate old load-relative ..., Rocky Bernstein, 2017/05/25