Pin essential packages to melpa-stable
This commit is contained in:
parent
9671ff68de
commit
42ef36f836
|
@ -8,15 +8,14 @@
|
|||
/ebackup/
|
||||
/el-get/
|
||||
/elpa/*
|
||||
!/elpa/diminish-20*
|
||||
!/elpa/bind-key-20*
|
||||
!/elpa/use-package-20*
|
||||
!/elpa/dash-20*
|
||||
!/elpa/hydra-20*
|
||||
!/elpa/page-break-lines-20*
|
||||
!/elpa/multiple-cursors-20*
|
||||
!/elpa/exec-path-from-shell-20*
|
||||
!/elpa/lv-20*
|
||||
!/elpa/diminish-*
|
||||
!/elpa/bind-key-*
|
||||
!/elpa/use-package-*
|
||||
!/elpa/dash-*
|
||||
!/elpa/hydra-*
|
||||
!/elpa/page-break-lines-*
|
||||
!/elpa/exec-path-from-shell-*
|
||||
!/elpa/lv-*
|
||||
/emms/
|
||||
/eshell/history
|
||||
/eshell/lastdir
|
||||
|
|
|
@ -1,10 +1,12 @@
|
|||
;;; bind-key-autoloads.el --- automatically extracted autoloads
|
||||
;;
|
||||
;;; Code:
|
||||
(add-to-list 'load-path (directory-file-name (or (file-name-directory #$) (car load-path))))
|
||||
|
||||
(add-to-list 'load-path (directory-file-name
|
||||
(or (file-name-directory #$) (car load-path))))
|
||||
|
||||
|
||||
;;;### (autoloads nil "bind-key" "bind-key.el" (23441 26626 910934
|
||||
;;;;;; 47000))
|
||||
;;;### (autoloads nil "bind-key" "bind-key.el" (0 0 0 0))
|
||||
;;; Generated autoloads from bind-key.el
|
||||
|
||||
(autoload 'bind-key "bind-key" "\
|
||||
|
@ -69,11 +71,14 @@ Display all the personal keybindings defined by `bind-key'.
|
|||
|
||||
\(fn)" t nil)
|
||||
|
||||
(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "bind-key" '("compare-keybindings" "get-binding-description" "bind-key" "personal-keybindings" "override-global-m")))
|
||||
|
||||
;;;***
|
||||
|
||||
;; Local Variables:
|
||||
;; version-control: never
|
||||
;; no-byte-compile: t
|
||||
;; no-update-autoloads: t
|
||||
;; coding: utf-8
|
||||
;; End:
|
||||
;;; bind-key-autoloads.el ends here
|
|
@ -0,0 +1,2 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "bind-key" "2.4" "A simple way to manage personal keybindings" 'nil :commit "39a8b8812c2c9f6f0b299e6a04e504ef393694ce" :keywords '("keys" "keybinding" "config" "dotemacs") :authors '(("John Wiegley" . "johnw@newartisans.com")) :maintainer '("John Wiegley" . "johnw@newartisans.com") :url "https://github.com/jwiegley/use-package")
|
|
@ -7,7 +7,7 @@
|
|||
;; Created: 16 Jun 2012
|
||||
;; Modified: 29 Nov 2017
|
||||
;; Version: 2.4
|
||||
;; Package-Version: 20180513.430
|
||||
;; Package-Version: 2.4
|
||||
;; Keywords: keys keybinding config dotemacs
|
||||
;; URL: https://github.com/jwiegley/use-package
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "bind-key" "20180513.430" "A simple way to manage personal keybindings" 'nil :commit "3fb8f39f5901a4c0ef7887283e56e60b541675ea" :keywords '("keys" "keybinding" "config" "dotemacs") :authors '(("John Wiegley" . "johnw@newartisans.com")) :maintainer '("John Wiegley" . "johnw@newartisans.com") :url "https://github.com/jwiegley/use-package")
|
|
@ -0,0 +1,70 @@
|
|||
If you have lots of keybindings set in your .emacs file, it can be hard to
|
||||
know which ones you haven't set yet, and which may now be overriding some
|
||||
new default in a new emacs version. This module aims to solve that
|
||||
problem.
|
||||
|
||||
Bind keys as follows in your .emacs:
|
||||
|
||||
(require 'bind-key)
|
||||
|
||||
(bind-key "C-c x" 'my-ctrl-c-x-command)
|
||||
|
||||
If the keybinding argument is a vector, it is passed straight to
|
||||
`define-key', so remapping a key with `[remap COMMAND]' works as
|
||||
expected:
|
||||
|
||||
(bind-key [remap original-ctrl-c-x-command] 'my-ctrl-c-x-command)
|
||||
|
||||
If you want the keybinding to override all minor modes that may also bind
|
||||
the same key, use the `bind-key*' form:
|
||||
|
||||
(bind-key* "<C-return>" 'other-window)
|
||||
|
||||
If you want to rebind a key only in a particular keymap, use:
|
||||
|
||||
(bind-key "C-c x" 'my-ctrl-c-x-command some-other-mode-map)
|
||||
|
||||
To unbind a key within a keymap (for example, to stop your favorite major
|
||||
mode from changing a binding that you don't want to override everywhere),
|
||||
use `unbind-key':
|
||||
|
||||
(unbind-key "C-c x" some-other-mode-map)
|
||||
|
||||
To bind multiple keys at once, or set up a prefix map, a `bind-keys' macro
|
||||
is provided. It accepts keyword arguments, please see its documentation
|
||||
for a detailed description.
|
||||
|
||||
To add keys into a specific map, use :map argument
|
||||
|
||||
(bind-keys :map dired-mode-map
|
||||
("o" . dired-omit-mode)
|
||||
("a" . some-custom-dired-function))
|
||||
|
||||
To set up a prefix map, use `:prefix-map' and `:prefix' arguments (both are
|
||||
required)
|
||||
|
||||
(bind-keys :prefix-map my-customize-prefix-map
|
||||
:prefix "C-c c"
|
||||
("f" . customize-face)
|
||||
("v" . customize-variable))
|
||||
|
||||
You can combine all the keywords together. Additionally,
|
||||
`:prefix-docstring' can be specified to set documentation of created
|
||||
`:prefix-map' variable.
|
||||
|
||||
To bind multiple keys in a `bind-key*' way (to be sure that your bindings
|
||||
will not be overridden by other modes), you may use `bind-keys*' macro:
|
||||
|
||||
(bind-keys*
|
||||
("C-o" . other-window)
|
||||
("C-M-n" . forward-page)
|
||||
("C-M-p" . backward-page))
|
||||
|
||||
After Emacs loads, you can see a summary of all your personal keybindings
|
||||
currently in effect with this command:
|
||||
|
||||
M-x describe-personal-keybindings
|
||||
|
||||
This display will tell you if you've overriden a default keybinding, and
|
||||
what the default was. Also, it will tell you if the key was rebound after
|
||||
your binding it with `bind-key', and what it was rebound it to.
|
|
@ -11,6 +11,10 @@
|
|||
|
||||
(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "dash" '("dash-" "-keep" "-butlast" "-non" "-only-some" "-zip" "-e" "->" "-a" "-gr" "-when-let" "-d" "-l" "-s" "-p" "-r" "-m" "-i" "-f" "-u" "-value-to-list" "-t" "--" "-c" "!cons" "!cdr")))
|
||||
|
||||
;;;***
|
||||
|
||||
;;;### (autoloads nil nil ("dash-pkg.el") (0 0 0 0))
|
||||
|
||||
;;;***
|
||||
|
||||
;; Local Variables:
|
|
@ -0,0 +1,9 @@
|
|||
(define-package "dash" "2.16.0" "A modern list library for Emacs" 'nil :keywords
|
||||
'("lists")
|
||||
:authors
|
||||
'(("Magnar Sveen" . "magnars@gmail.com"))
|
||||
:maintainer
|
||||
'("Magnar Sveen" . "magnars@gmail.com"))
|
||||
;; Local Variables:
|
||||
;; no-byte-compile: t
|
||||
;; End:
|
|
@ -4,7 +4,6 @@
|
|||
|
||||
;; Author: Magnar Sveen <magnars@gmail.com>
|
||||
;; Version: 2.16.0
|
||||
;; Package-Version: 20190920.1035
|
||||
;; Keywords: lists
|
||||
|
||||
;; This program is free software; you can redistribute it and/or modify
|
||||
|
@ -34,12 +33,6 @@
|
|||
|
||||
;;; Code:
|
||||
|
||||
;; TODO: `gv' was introduced in Emacs 24.3, so remove this and all
|
||||
;; calls to `defsetf' when support for earlier versions is dropped.
|
||||
(eval-when-compile
|
||||
(unless (fboundp 'gv-define-setter)
|
||||
(require 'cl)))
|
||||
|
||||
(defgroup dash ()
|
||||
"Customize group for dash.el"
|
||||
:group 'lisp
|
||||
|
@ -689,10 +682,7 @@ See also: `-third-item'.
|
|||
|
||||
\(fn LIST)")
|
||||
|
||||
(defalias '-third-item
|
||||
(if (fboundp 'caddr)
|
||||
#'caddr
|
||||
(lambda (list) (car (cddr list))))
|
||||
(defalias '-third-item 'caddr
|
||||
"Return the third item of LIST, or nil if LIST is too short.
|
||||
|
||||
See also: `-fourth-item'.
|
||||
|
@ -713,18 +703,28 @@ See also: `-last-item'."
|
|||
(declare (pure t) (side-effect-free t))
|
||||
(car (cdr (cdr (cdr (cdr list))))))
|
||||
|
||||
;; TODO: gv was introduced in 24.3, so we can remove the if statement
|
||||
;; when support for earlier versions is dropped
|
||||
(eval-when-compile
|
||||
(require 'cl)
|
||||
(if (fboundp 'gv-define-simple-setter)
|
||||
(gv-define-simple-setter -first-item setcar)
|
||||
(require 'cl)
|
||||
(with-no-warnings
|
||||
(defsetf -first-item (x) (val) `(setcar ,x ,val)))))
|
||||
|
||||
(defun -last-item (list)
|
||||
"Return the last item of LIST, or nil on an empty list."
|
||||
(declare (pure t) (side-effect-free t))
|
||||
(car (last list)))
|
||||
|
||||
;; Use `with-no-warnings' to suppress unbound `-last-item' or
|
||||
;; undefined `gv--defsetter' warnings arising from both
|
||||
;; `gv-define-setter' and `defsetf' in certain Emacs versions.
|
||||
(with-no-warnings
|
||||
;; TODO: gv was introduced in 24.3, so we can remove the if statement
|
||||
;; when support for earlier versions is dropped
|
||||
(eval-when-compile
|
||||
(if (fboundp 'gv-define-setter)
|
||||
(gv-define-setter -last-item (val x) `(setcar (last ,x) ,val))
|
||||
(defsetf -last-item (x) (val) `(setcar (last ,x) ,val))))
|
||||
(with-no-warnings
|
||||
(defsetf -last-item (x) (val) `(setcar (last ,x) ,val)))))
|
||||
|
||||
(defun -butlast (list)
|
||||
"Return a list of all items in list except for the last."
|
||||
|
@ -2274,22 +2274,9 @@ The test for equality is done with `equal',
|
|||
or with `-compare-fn' if that's non-nil.
|
||||
|
||||
Alias: `-uniq'"
|
||||
;; Implementation note: The speedup gained from hash table lookup
|
||||
;; starts to outweigh its overhead for lists of length greater than
|
||||
;; 32. See discussion in PR #305.
|
||||
(let* ((len (length list))
|
||||
(lut (and (> len 32)
|
||||
;; Check that `-compare-fn' is a valid hash-table
|
||||
;; lookup function or `nil'.
|
||||
(memq -compare-fn '(nil equal eq eql))
|
||||
(make-hash-table :test (or -compare-fn #'equal)
|
||||
:size len))))
|
||||
(if lut
|
||||
(--filter (unless (gethash it lut)
|
||||
(puthash it t lut))
|
||||
list)
|
||||
(--each list (unless (-contains? lut it) (!cons it lut)))
|
||||
(nreverse lut))))
|
||||
(let (result)
|
||||
(--each list (unless (-contains? result it) (!cons it result)))
|
||||
(nreverse result)))
|
||||
|
||||
(defalias '-uniq '-distinct)
|
||||
|
||||
|
@ -2342,11 +2329,7 @@ or with `-compare-fn' if that's non-nil."
|
|||
|
||||
(defun -inits (list)
|
||||
"Return all prefixes of LIST."
|
||||
(let ((res (list list)))
|
||||
(setq list (reverse list))
|
||||
(while list
|
||||
(push (reverse (!cdr list)) res))
|
||||
res))
|
||||
(nreverse (-map 'reverse (-tails (nreverse list)))))
|
||||
|
||||
(defun -tails (list)
|
||||
"Return all suffixes of LIST"
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,18 @@
|
|||
This is the file .../info/dir, which contains the
|
||||
topmost node of the Info hierarchy, called (dir)Top.
|
||||
The first time you invoke Info you start off looking at this node.
|
||||
|
||||
File: dir, Node: Top This is the top of the INFO tree
|
||||
|
||||
This (the Directory node) gives a menu of major topics.
|
||||
Typing "q" exits, "H" lists all Info commands, "d" returns here,
|
||||
"h" gives a primer for first-timers,
|
||||
"mEmacs<Return>" visits the Emacs manual, etc.
|
||||
|
||||
In Emacs, you can click mouse button 2 on a menu item or cross reference
|
||||
to select it.
|
||||
|
||||
* Menu:
|
||||
|
||||
Emacs
|
||||
* Dash: (dash.info). A modern list library for GNU Emacs
|
|
@ -1,2 +0,0 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "dash" "20190920.1035" "A modern list library for Emacs" 'nil :commit "a743ae3da1d5869434c6f262bbe45ef30d87cb9c" :keywords '("lists") :authors '(("Magnar Sveen" . "magnars@gmail.com")) :maintainer '("Magnar Sveen" . "magnars@gmail.com"))
|
|
@ -0,0 +1,16 @@
|
|||
;;; dash-functional-autoloads.el --- automatically extracted autoloads
|
||||
;;
|
||||
;;; Code:
|
||||
(add-to-list 'load-path (directory-file-name (or (file-name-directory #$) (car load-path))))
|
||||
|
||||
;;;### (autoloads nil nil ("dash-functional.el") (23441 26596 442795
|
||||
;;;;;; 456000))
|
||||
|
||||
;;;***
|
||||
|
||||
;; Local Variables:
|
||||
;; version-control: never
|
||||
;; no-byte-compile: t
|
||||
;; no-update-autoloads: t
|
||||
;; End:
|
||||
;;; dash-functional-autoloads.el ends here
|
|
@ -0,0 +1,2 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "dash-functional" "20180107.1618" "Collection of useful combinators for Emacs Lisp" '((dash "2.0.0") (emacs "24")) :commit "85e8f62b7a8ae0b4da307ddf16e4f1c3559d0d3f" :keywords '("lisp" "functions" "combinators"))
|
|
@ -0,0 +1,219 @@
|
|||
;;; dash-functional.el --- Collection of useful combinators for Emacs Lisp -*- lexical-binding: t -*-
|
||||
|
||||
;; Copyright (C) 2013-2014 Free Software Foundation, Inc.
|
||||
|
||||
;; Authors: Matus Goljer <matus.goljer@gmail.com>
|
||||
;; Magnar Sveen <magnars@gmail.com>
|
||||
;; Version: 1.2.0
|
||||
;; Package-Version: 20180107.1618
|
||||
;; Package-Requires: ((dash "2.0.0") (emacs "24"))
|
||||
;; Keywords: lisp functions combinators
|
||||
|
||||
;; 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/>.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
;; Collection of useful combinators for Emacs Lisp
|
||||
;;
|
||||
;; See documentation on https://github.com/magnars/dash.el#functions
|
||||
|
||||
;;; Code:
|
||||
|
||||
(require 'dash)
|
||||
|
||||
(defun -partial (fn &rest args)
|
||||
"Takes a function FN and fewer than the normal arguments to FN,
|
||||
and returns a fn that takes a variable number of additional ARGS.
|
||||
When called, the returned function calls FN with ARGS first and
|
||||
then additional args."
|
||||
(apply 'apply-partially fn args))
|
||||
|
||||
(defun -rpartial (fn &rest args)
|
||||
"Takes a function FN and fewer than the normal arguments to FN,
|
||||
and returns a fn that takes a variable number of additional ARGS.
|
||||
When called, the returned function calls FN with the additional
|
||||
args first and then ARGS."
|
||||
(lambda (&rest args-before) (apply fn (append args-before args))))
|
||||
|
||||
(defun -juxt (&rest fns)
|
||||
"Takes a list of functions and returns a fn that is the
|
||||
juxtaposition of those fns. The returned fn takes a variable
|
||||
number of args, and returns a list containing the result of
|
||||
applying each fn to the args (left-to-right)."
|
||||
(lambda (&rest args) (mapcar (lambda (x) (apply x args)) fns)))
|
||||
|
||||
(defun -compose (&rest fns)
|
||||
"Takes a list of functions and returns a fn that is the
|
||||
composition of those fns. The returned fn takes a variable
|
||||
number of arguments, and returns the result of applying
|
||||
each fn to the result of applying the previous fn to
|
||||
the arguments (right-to-left)."
|
||||
(lambda (&rest args)
|
||||
(car (-reduce-r-from (lambda (fn xs) (list (apply fn xs)))
|
||||
args fns))))
|
||||
|
||||
(defun -applify (fn)
|
||||
"Changes an n-arity function FN to a 1-arity function that
|
||||
expects a list with n items as arguments"
|
||||
(apply-partially 'apply fn))
|
||||
|
||||
(defun -on (operator transformer)
|
||||
"Return a function of two arguments that first applies
|
||||
TRANSFORMER to each of them and then applies OPERATOR on the
|
||||
results (in the same order).
|
||||
|
||||
In types: (b -> b -> c) -> (a -> b) -> a -> a -> c"
|
||||
(lambda (x y) (funcall operator (funcall transformer x) (funcall transformer y))))
|
||||
|
||||
(defun -flip (func)
|
||||
"Swap the order of arguments for binary function FUNC.
|
||||
|
||||
In types: (a -> b -> c) -> b -> a -> c"
|
||||
(lambda (x y) (funcall func y x)))
|
||||
|
||||
(defun -const (c)
|
||||
"Return a function that returns C ignoring any additional arguments.
|
||||
|
||||
In types: a -> b -> a"
|
||||
(lambda (&rest _) c))
|
||||
|
||||
(defmacro -cut (&rest params)
|
||||
"Take n-ary function and n arguments and specialize some of them.
|
||||
Arguments denoted by <> will be left unspecialized.
|
||||
|
||||
See SRFI-26 for detailed description."
|
||||
(let* ((i 0)
|
||||
(args (mapcar (lambda (_) (setq i (1+ i)) (make-symbol (format "D%d" i)))
|
||||
(-filter (-partial 'eq '<>) params))))
|
||||
`(lambda ,args
|
||||
,(let ((body (--map (if (eq it '<>) (pop args) it) params)))
|
||||
(if (eq (car params) '<>)
|
||||
(cons 'funcall body)
|
||||
body)))))
|
||||
|
||||
(defun -not (pred)
|
||||
"Take a unary predicate PRED and return a unary predicate
|
||||
that returns t if PRED returns nil and nil if PRED returns
|
||||
non-nil."
|
||||
(lambda (x) (not (funcall pred x))))
|
||||
|
||||
(defun -orfn (&rest preds)
|
||||
"Take list of unary predicates PREDS and return a unary
|
||||
predicate with argument x that returns non-nil if at least one of
|
||||
the PREDS returns non-nil on x.
|
||||
|
||||
In types: [a -> Bool] -> a -> Bool"
|
||||
(lambda (x) (-any? (-cut funcall <> x) preds)))
|
||||
|
||||
(defun -andfn (&rest preds)
|
||||
"Take list of unary predicates PREDS and return a unary
|
||||
predicate with argument x that returns non-nil if all of the
|
||||
PREDS returns non-nil on x.
|
||||
|
||||
In types: [a -> Bool] -> a -> Bool"
|
||||
(lambda (x) (-all? (-cut funcall <> x) preds)))
|
||||
|
||||
(defun -iteratefn (fn n)
|
||||
"Return a function FN composed N times with itself.
|
||||
|
||||
FN is a unary function. If you need to use a function of higher
|
||||
arity, use `-applify' first to turn it into a unary function.
|
||||
|
||||
With n = 0, this acts as identity function.
|
||||
|
||||
In types: (a -> a) -> Int -> a -> a.
|
||||
|
||||
This function satisfies the following law:
|
||||
|
||||
(funcall (-iteratefn fn n) init) = (-last-item (-iterate fn init (1+ n)))."
|
||||
(lambda (x) (--dotimes n (setq x (funcall fn x))) x))
|
||||
|
||||
(defun -counter (&optional beg end inc)
|
||||
"Return a closure that counts from BEG to END, with increment INC.
|
||||
|
||||
The closure will return the next value in the counting sequence
|
||||
each time it is called, and nil after END is reached. BEG
|
||||
defaults to 0, INC defaults to 1, and if END is nil, the counter
|
||||
will increment indefinitely.
|
||||
|
||||
The closure accepts any number of arguments, which are discarded."
|
||||
(let ((inc (or inc 1))
|
||||
(n (or beg 0)))
|
||||
(lambda (&rest _)
|
||||
(when (or (not end) (< n end))
|
||||
(prog1 n
|
||||
(setq n (+ n inc)))))))
|
||||
|
||||
(defvar -fixfn-max-iterations 1000
|
||||
"The default maximum number of iterations performed by `-fixfn'
|
||||
unless otherwise specified.")
|
||||
|
||||
(defun -fixfn (fn &optional equal-test halt-test)
|
||||
"Return a function that computes the (least) fixpoint of FN.
|
||||
|
||||
FN must be a unary function. The returned lambda takes a single
|
||||
argument, X, the initial value for the fixpoint iteration. The
|
||||
iteration halts when either of the following conditions is satisified:
|
||||
|
||||
1. Iteration converges to the fixpoint, with equality being
|
||||
tested using EQUAL-TEST. If EQUAL-TEST is not specified,
|
||||
`equal' is used. For functions over the floating point
|
||||
numbers, it may be necessary to provide an appropriate
|
||||
appoximate comparsion test.
|
||||
|
||||
2. HALT-TEST returns a non-nil value. HALT-TEST defaults to a
|
||||
simple counter that returns t after `-fixfn-max-iterations',
|
||||
to guard against infinite iteration. Otherwise, HALT-TEST
|
||||
must be a function that accepts a single argument, the
|
||||
current value of X, and returns non-nil as long as iteration
|
||||
should continue. In this way, a more sophisticated
|
||||
convergence test may be supplied by the caller.
|
||||
|
||||
The return value of the lambda is either the fixpoint or, if
|
||||
iteration halted before converging, a cons with car `halted' and
|
||||
cdr the final output from HALT-TEST.
|
||||
|
||||
In types: (a -> a) -> a -> a."
|
||||
(let ((eqfn (or equal-test 'equal))
|
||||
(haltfn (or halt-test
|
||||
(-not
|
||||
(-counter 0 -fixfn-max-iterations)))))
|
||||
(lambda (x)
|
||||
(let ((re (funcall fn x))
|
||||
(halt? (funcall haltfn x)))
|
||||
(while (and (not halt?) (not (funcall eqfn x re)))
|
||||
(setq x re
|
||||
re (funcall fn re)
|
||||
halt? (funcall haltfn re)))
|
||||
(if halt? (cons 'halted halt?)
|
||||
re)))))
|
||||
|
||||
(defun -prodfn (&rest fns)
|
||||
"Take a list of n functions and return a function that takes a
|
||||
list of length n, applying i-th function to i-th element of the
|
||||
input list. Returns a list of length n.
|
||||
|
||||
In types (for n=2): ((a -> b), (c -> d)) -> (a, c) -> (b, d)
|
||||
|
||||
This function satisfies the following laws:
|
||||
|
||||
(-compose (-prodfn f g ...) (-prodfn f\\=' g\\=' ...)) = (-prodfn (-compose f f\\=') (-compose g g\\=') ...)
|
||||
(-prodfn f g ...) = (-juxt (-compose f (-partial \\='nth 0)) (-compose g (-partial \\='nth 1)) ...)
|
||||
(-compose (-prodfn f g ...) (-juxt f\\=' g\\=' ...)) = (-juxt (-compose f f\\=') (-compose g g\\=') ...)
|
||||
(-compose (-partial \\='nth n) (-prod f1 f2 ...)) = (-compose fn (-partial \\='nth n))"
|
||||
(lambda (x) (-zip-with 'funcall fns x)))
|
||||
|
||||
(provide 'dash-functional)
|
||||
|
||||
;;; dash-functional.el ends here
|
|
@ -0,0 +1,8 @@
|
|||
A modern list api for Emacs.
|
||||
|
||||
See documentation on https://github.com/magnars/dash.el#functions
|
||||
|
||||
**Please note** The lexical binding in this file is not utilised at the
|
||||
moment. We will take full advantage of lexical binding in an upcoming 3.0
|
||||
release of Dash. In the meantime, we've added the pragma to avoid a bug that
|
||||
you can read more about in https://github.com/magnars/dash.el/issues/130.
|
|
@ -1,10 +1,12 @@
|
|||
;;; diminish-autoloads.el --- automatically extracted autoloads
|
||||
;;
|
||||
;;; Code:
|
||||
(add-to-list 'load-path (directory-file-name (or (file-name-directory #$) (car load-path))))
|
||||
|
||||
(add-to-list 'load-path (directory-file-name
|
||||
(or (file-name-directory #$) (car load-path))))
|
||||
|
||||
|
||||
;;;### (autoloads nil "diminish" "diminish.el" (23441 26592 586778
|
||||
;;;;;; 335000))
|
||||
;;;### (autoloads nil "diminish" "diminish.el" (0 0 0 0))
|
||||
;;; Generated autoloads from diminish.el
|
||||
|
||||
(autoload 'diminish "diminish" "\
|
||||
|
@ -47,11 +49,14 @@ what diminished modes would be on the mode-line if they were still minor.
|
|||
|
||||
\(fn)" t nil)
|
||||
|
||||
(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "diminish" '("diminish")))
|
||||
|
||||
;;;***
|
||||
|
||||
;; Local Variables:
|
||||
;; version-control: never
|
||||
;; no-byte-compile: t
|
||||
;; no-update-autoloads: t
|
||||
;; coding: utf-8
|
||||
;; End:
|
||||
;;; diminish-autoloads.el ends here
|
|
@ -0,0 +1,2 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "diminish" "0.45" "Diminished modes are minor modes with no modeline display" 'nil :commit "0211de96b7cfba9c9dc8d2d392dbd4ccdb22bc65" :keywords '("extensions" "diminish" "minor" "codeprose") :authors '(("Will Mengarini" . "seldon@eskimo.com")) :maintainer '("Martin Yrjölä" . "martin.yrjola@gmail.com") :url "https://github.com/myrjola/diminish.el")
|
|
@ -5,11 +5,13 @@
|
|||
;; Author: Will Mengarini <seldon@eskimo.com>
|
||||
;; Maintainer: Martin Yrjölä <martin.yrjola@gmail.com>
|
||||
;; URL: <https://github.com/myrjola/diminish.el>
|
||||
;; Package-Version: 20170419.1736
|
||||
;; Package-Version: 0.45
|
||||
;; Created: Th 19 Feb 98
|
||||
;; Version: 0.45
|
||||
;; Keywords: extensions, diminish, minor, codeprose
|
||||
|
||||
;; This file is part of GNU Emacs.
|
||||
|
||||
;; 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 2, or (at your option)
|
||||
|
@ -20,10 +22,10 @@
|
|||
;; 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; see the file LICENSE. If not, write to the write to the Free
|
||||
;; Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
|
||||
;; 02110-1301, USA.
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with GNU Emacs; see the file COPYING. If not, write to the
|
||||
;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
;; Boston, MA 02111-1307, USA.
|
||||
|
||||
;;; Commentary:
|
||||
|
||||
|
@ -179,8 +181,7 @@ to TO-WHAT if it's > 1 char long & doesn't already begin with a space."
|
|||
(let ((minor (assq mode minor-mode-alist)))
|
||||
(when minor
|
||||
(progn (callf or to-what "")
|
||||
(when (and (stringp to-what)
|
||||
(> (length to-what) 1))
|
||||
(when (> (length to-what) 1)
|
||||
(or (= (string-to-char to-what) ?\ )
|
||||
(callf2 concat " " to-what)))
|
||||
(or (assq mode diminished-mode-alist)
|
|
@ -1,2 +0,0 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "diminish" "20170419.1736" "Diminished modes are minor modes with no modeline display" 'nil :commit "565a983a39d2e2cffab5df13b34f3b6116723208" :keywords '("extensions" "diminish" "minor" "codeprose") :authors '(("Will Mengarini" . "seldon@eskimo.com")) :maintainer '("Martin Yrjölä" . "martin.yrjola@gmail.com") :url "https://github.com/myrjola/diminish.el")
|
|
@ -0,0 +1,70 @@
|
|||
Minor modes each put a word on the mode line to signify that they're
|
||||
active. This can cause other displays, such as % of file that point is
|
||||
at, to run off the right side of the screen. For some minor modes, such
|
||||
as mouse-avoidance-mode, the display is a waste of space, since users
|
||||
typically set the mode in their .emacs & never change it. For other
|
||||
modes, such as my jiggle-mode, it's a waste because there's already a
|
||||
visual indication of whether the mode is in effect.
|
||||
|
||||
A diminished mode is a minor mode that has had its mode line
|
||||
display diminished, usually to nothing, although diminishing to a
|
||||
shorter word or a single letter is also supported. This package
|
||||
implements diminished modes.
|
||||
|
||||
You can use this package either interactively or from your .emacs file.
|
||||
In either case, first you'll need to copy this file to a directory that
|
||||
appears in your load-path. `load-path' is the name of a variable that
|
||||
contains a list of directories Emacs searches for files to load.
|
||||
To prepend another directory to load-path, put a line like
|
||||
(add-to-list 'load-path "c:/My_Directory") in your .emacs file.
|
||||
|
||||
To create diminished modes interactively, type
|
||||
M-x load-library
|
||||
to get a prompt like
|
||||
Load library:
|
||||
and respond `diminish' (unquoted). Then type
|
||||
M-x diminish
|
||||
to get a prompt like
|
||||
Diminish what minor mode:
|
||||
and respond with the name of some minor mode, like mouse-avoidance-mode.
|
||||
You'll then get this prompt:
|
||||
To what mode-line display:
|
||||
Respond by just hitting <Enter> if you want the name of the mode
|
||||
completely removed from the mode line. If you prefer, you can abbreviate
|
||||
the name. If your abbreviation is 2 characters or more, such as "Av",
|
||||
it'll be displayed as a separate word on the mode line, just like minor
|
||||
modes' names. If it's a single character, such as "V", it'll be scrunched
|
||||
up against the previous word, so for example if the undiminished mode line
|
||||
display had been "Abbrev Fill Avoid", it would become "Abbrev FillV".
|
||||
Multiple single-letter diminished modes will all be scrunched together.
|
||||
The display of undiminished modes will not be affected.
|
||||
|
||||
To find out what the mode line would look like if all diminished modes
|
||||
were still minor, type M-x diminished-modes. This displays in the echo
|
||||
area the complete list of minor or diminished modes now active, but
|
||||
displays them all as minor. They remain diminished on the mode line.
|
||||
|
||||
To convert a diminished mode back to a minor mode, type M-x diminish-undo
|
||||
to get a prompt like
|
||||
Restore what diminished mode:
|
||||
Respond with the name of some diminished mode. To convert all
|
||||
diminished modes back to minor modes, respond to that prompt
|
||||
with `diminished-modes' (unquoted, & note the hyphen).
|
||||
|
||||
When you're responding to the prompts for mode names, you can use
|
||||
completion to avoid extra typing; for example, m o u SPC SPC SPC
|
||||
is usually enough to specify mouse-avoidance-mode. Mode names
|
||||
typically end in "-mode", but for historical reasons
|
||||
auto-fill-mode is named by "auto-fill-function".
|
||||
|
||||
To create diminished modes noninteractively in your .emacs file, put
|
||||
code like
|
||||
(require 'diminish)
|
||||
(diminish 'abbrev-mode "Abv")
|
||||
(diminish 'jiggle-mode)
|
||||
(diminish 'mouse-avoidance-mode "M")
|
||||
near the end of your .emacs file. It should be near the end so that any
|
||||
minor modes your .emacs loads will already have been loaded by the time
|
||||
they're to be converted to diminished modes.
|
||||
|
||||
To diminish a major mode, (setq mode-name "whatever") in the mode hook.
|
|
@ -0,0 +1,2 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "exec-path-from-shell" "1.12" "Get environment variables such as $PATH from the shell" 'nil :commit "76cd6e3fa8a7dac937af7e40507843dfae4f9184" :keywords '("unix" "environment") :authors '(("Steve Purcell" . "steve@sanityinc.com")) :maintainer '("Steve Purcell" . "steve@sanityinc.com") :url "https://github.com/purcell/exec-path-from-shell")
|
|
@ -5,7 +5,7 @@
|
|||
;; Author: Steve Purcell <steve@sanityinc.com>
|
||||
;; Keywords: unix, environment
|
||||
;; URL: https://github.com/purcell/exec-path-from-shell
|
||||
;; Package-Version: 20190426.2227
|
||||
;; Package-Version: 1.12
|
||||
;; Package-X-Original-Version: 0
|
||||
|
||||
;; This file is not part of GNU Emacs.
|
||||
|
@ -181,8 +181,6 @@ shell-escaped, so they may contain $ etc."
|
|||
|
||||
Execute the shell according to `exec-path-from-shell-arguments'.
|
||||
The result is a list of (NAME . VALUE) pairs."
|
||||
(when (file-remote-p default-directory)
|
||||
(error "You cannot run exec-path-from-shell from a remote buffer (Tramp, etc.)"))
|
||||
(let* ((random-default (md5 (format "%s%s%s" (emacs-pid) (random) (current-time))))
|
||||
(dollar-names (mapcar (lambda (n) (format "${%s-%s}" n random-default)) names))
|
||||
(values (split-string (exec-path-from-shell-printf
|
|
@ -1,2 +0,0 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "exec-path-from-shell" "20190426.2227" "Get environment variables such as $PATH from the shell" 'nil :commit "3cfedb8791397ed50ee66bc0a7cbee5b9d78245c" :keywords '("unix" "environment") :authors '(("Steve Purcell" . "steve@sanityinc.com")) :maintainer '("Steve Purcell" . "steve@sanityinc.com") :url "https://github.com/purcell/exec-path-from-shell")
|
|
@ -0,0 +1,45 @@
|
|||
On OS X (and perhaps elsewhere) the $PATH environment variable and
|
||||
`exec-path' used by a windowed Emacs instance will usually be the
|
||||
system-wide default path, rather than that seen in a terminal
|
||||
window.
|
||||
|
||||
This library allows the user to set Emacs' `exec-path' and $PATH
|
||||
from the shell path, so that `shell-command', `compile' and the
|
||||
like work as expected.
|
||||
|
||||
It also allows other environment variables to be retrieved from the
|
||||
shell, so that Emacs will see the same values you get in a terminal.
|
||||
|
||||
If you use a non-POSIX-standard shell like "tcsh" or "fish", your
|
||||
shell will be asked to execute "sh" as a subshell in order to print
|
||||
out the variables in a format which can be reliably parsed. "sh"
|
||||
must be a POSIX-compliant shell in this case.
|
||||
|
||||
Note that shell variables which have not been exported as
|
||||
environment variables (e.g. using the "export" keyword) may not be
|
||||
visible to `exec-path-from-shell'.
|
||||
|
||||
Installation:
|
||||
|
||||
ELPA packages are available on Marmalade and MELPA. Alternatively,
|
||||
place this file on a directory in your `load-path', and explicitly
|
||||
require it.
|
||||
|
||||
Usage:
|
||||
|
||||
(require 'exec-path-from-shell) ;; if not using the ELPA package
|
||||
(exec-path-from-shell-initialize)
|
||||
|
||||
Customize `exec-path-from-shell-variables' to modify the list of
|
||||
variables imported.
|
||||
|
||||
If you use your Emacs config on other platforms, you can instead
|
||||
make initialization conditional as follows:
|
||||
|
||||
(when (memq window-system '(mac ns))
|
||||
(exec-path-from-shell-initialize))
|
||||
|
||||
Alternatively, you can use `exec-path-from-shell-copy-envs' or
|
||||
`exec-path-from-shell-copy-env' directly, e.g.
|
||||
|
||||
(exec-path-from-shell-copy-env "PYTHONPATH")
|
|
@ -1,4 +1,4 @@
|
|||
(define-package "hydra" "20191125.955" "Make bindings that stick around."
|
||||
(define-package "hydra" "0.15.0" "Make bindings that stick around."
|
||||
'((cl-lib "0.5")
|
||||
(lv "0"))
|
||||
:keywords
|
|
@ -33,7 +33,7 @@
|
|||
;; heads can be called in succession with only a short extension.
|
||||
;; The Hydra is vanquished once Hercules, any binding that isn't the
|
||||
;; Hydra's head, arrives. Note that Hercules, besides vanquishing the
|
||||
;; Hydra, will still serve his original purpose, calling his proper
|
||||
;; Hydra, will still serve his orignal purpose, calling his proper
|
||||
;; command. This makes the Hydra very seamless, it's like a minor
|
||||
;; mode that disables itself automagically.
|
||||
;;
|
||||
|
@ -211,33 +211,15 @@ the body or the head."
|
|||
(declare-function posframe-hide "posframe")
|
||||
(declare-function posframe-poshandler-window-center "posframe")
|
||||
|
||||
(defvar hydra-posframe-show-params
|
||||
'(:internal-border-width 1
|
||||
:internal-border-color "red"
|
||||
:poshandler posframe-poshandler-window-center)
|
||||
"List of parameters passed to `posframe-show'.")
|
||||
|
||||
(defvar hydra--posframe-timer nil
|
||||
"Timer for hiding posframe hint.")
|
||||
|
||||
(defun hydra-posframe-show (str)
|
||||
(require 'posframe)
|
||||
(when hydra--posframe-timer
|
||||
(cancel-timer hydra--posframe-timer))
|
||||
(setq hydra--posframe-timer nil)
|
||||
(apply #'posframe-show
|
||||
" *hydra-posframe*"
|
||||
:string str
|
||||
hydra-posframe-show-params))
|
||||
(posframe-show
|
||||
" *hydra-posframe*"
|
||||
:string str
|
||||
:poshandler #'posframe-poshandler-window-center))
|
||||
|
||||
(defun hydra-posframe-hide ()
|
||||
(require 'posframe)
|
||||
(unless hydra--posframe-timer
|
||||
(setq hydra--posframe-timer
|
||||
(run-with-idle-timer
|
||||
0 nil (lambda ()
|
||||
(setq hydra--posframe-timer nil)
|
||||
(posframe-hide " *hydra-posframe*"))))))
|
||||
(posframe-hide " *hydra-posframe*"))
|
||||
|
||||
(defvar hydra-hint-display-alist
|
||||
(list (list 'lv #'lv-message #'lv-delete-window)
|
||||
|
@ -253,6 +235,14 @@ the body or the head."
|
|||
(const posframe))
|
||||
:group 'hydra)
|
||||
|
||||
(define-obsolete-variable-alias
|
||||
'hydra-lv 'hydra-hint-display-type "0.14.0"
|
||||
"Use either `hydra-hint-display-type' or `hydra-set-property' :verbosity.")
|
||||
|
||||
(defcustom hydra-lv t
|
||||
"When non-nil, `lv-message' (not `message') will be used to display hints."
|
||||
:type 'boolean)
|
||||
|
||||
(defcustom hydra-verbose nil
|
||||
"When non-nil, hydra will issue some non essential style warnings."
|
||||
:type 'boolean)
|
||||
|
@ -325,19 +315,18 @@ Exitable only through a blue head.")
|
|||
(around hydra-around-find-function-search-for-symbol-advice
|
||||
(symbol type library) activate)
|
||||
"Navigate to hydras with `find-function-search-for-symbol'."
|
||||
(prog1 ad-do-it
|
||||
(when (symbolp symbol)
|
||||
;; The original function returns (cons (current-buffer) (point))
|
||||
;; if it found the point.
|
||||
(unless (cdr ad-return-value)
|
||||
(with-current-buffer (find-file-noselect library)
|
||||
(let ((sn (symbol-name symbol)))
|
||||
(when (and (null type)
|
||||
(string-match "\\`\\(hydra-[a-z-A-Z0-9]+\\)/\\(.*\\)\\'" sn)
|
||||
(re-search-forward (concat "(defhydra " (match-string 1 sn))
|
||||
nil t))
|
||||
(goto-char (match-beginning 0)))
|
||||
(cons (current-buffer) (point)))))))))
|
||||
ad-do-it
|
||||
;; The orignial function returns (cons (current-buffer) (point))
|
||||
;; if it found the point.
|
||||
(unless (cdr ad-return-value)
|
||||
(with-current-buffer (find-file-noselect library)
|
||||
(let ((sn (symbol-name symbol)))
|
||||
(when (and (null type)
|
||||
(string-match "\\`\\(hydra-[a-z-A-Z0-9]+\\)/\\(.*\\)\\'" sn)
|
||||
(re-search-forward (concat "(defhydra " (match-string 1 sn))
|
||||
nil t))
|
||||
(goto-char (match-beginning 0)))
|
||||
(cons (current-buffer) (point)))))))
|
||||
|
||||
;;* Universal Argument
|
||||
(defvar hydra-base-map
|
||||
|
@ -1072,7 +1061,7 @@ If CELL-FORMATS is nil, `hydra-cell-format' is used for all columns."
|
|||
(mapconcat #'identity x " "))))
|
||||
|
||||
(defun hydra-reset-radios (names)
|
||||
"Set variables NAMES to their defaults.
|
||||
"Set varibles NAMES to their defaults.
|
||||
NAMES should be defined by `defhydradio' or similar."
|
||||
(dolist (n names)
|
||||
(set n (aref (get n 'range) 0))))
|
||||
|
@ -1123,7 +1112,7 @@ Each head of NORMALIZED-HEADS must have a column property."
|
|||
finally return balanced-heads-groups))
|
||||
|
||||
(defun hydra--generate-matrix (heads-groups)
|
||||
"Return a copy of HEADS-GROUPS decorated with table formatting information.
|
||||
"Return a copy of HEADS-GROUPS decorated with table formating information.
|
||||
Details of modification:
|
||||
2 virtual heads acting as table header were added to each heads-group.
|
||||
Each head is decorated with 2 new properties max-doc-len and max-key-len
|
||||
|
@ -1174,7 +1163,7 @@ representing the maximum dimension of their owning group.
|
|||
|
||||
|
||||
(defun hydra--hint-from-matrix (body heads-matrix)
|
||||
"Generate a formatted table-style docstring according to BODY and HEADS-MATRIX.
|
||||
"Generate a formated table-style docstring according to BODY and HEADS-MATRIX.
|
||||
HEADS-MATRIX is expected to be a list of heads with following features:
|
||||
Each heads must have the same length
|
||||
Each head must have a property max-key-len and max-doc-len."
|
|
@ -0,0 +1,51 @@
|
|||
This package can be used to tie related commands into a family of
|
||||
short bindings with a common prefix - a Hydra.
|
||||
|
||||
Once you summon the Hydra (through the prefixed binding), all the
|
||||
heads can be called in succession with only a short extension.
|
||||
The Hydra is vanquished once Hercules, any binding that isn't the
|
||||
Hydra's head, arrives. Note that Hercules, besides vanquishing the
|
||||
Hydra, will still serve his orignal purpose, calling his proper
|
||||
command. This makes the Hydra very seamless, it's like a minor
|
||||
mode that disables itself automagically.
|
||||
|
||||
Here's an example Hydra, bound in the global map (you can use any
|
||||
keymap in place of `global-map'):
|
||||
|
||||
(defhydra hydra-zoom (global-map "<f2>")
|
||||
"zoom"
|
||||
("g" text-scale-increase "in")
|
||||
("l" text-scale-decrease "out"))
|
||||
|
||||
It allows to start a command chain either like this:
|
||||
"<f2> gg4ll5g", or "<f2> lgllg".
|
||||
|
||||
Here's another approach, when you just want a "callable keymap":
|
||||
|
||||
(defhydra hydra-toggle (:color blue)
|
||||
"toggle"
|
||||
("a" abbrev-mode "abbrev")
|
||||
("d" toggle-debug-on-error "debug")
|
||||
("f" auto-fill-mode "fill")
|
||||
("t" toggle-truncate-lines "truncate")
|
||||
("w" whitespace-mode "whitespace")
|
||||
("q" nil "cancel"))
|
||||
|
||||
This binds nothing so far, but if you follow up with:
|
||||
|
||||
(global-set-key (kbd "C-c C-v") 'hydra-toggle/body)
|
||||
|
||||
you will have bound "C-c C-v a", "C-c C-v d" etc.
|
||||
|
||||
Knowing that `defhydra' defines e.g. `hydra-toggle/body' command,
|
||||
you can nest Hydras if you wish, with `hydra-toggle/body' possibly
|
||||
becoming a blue head of another Hydra.
|
||||
|
||||
If you want to learn all intricacies of using `defhydra' without
|
||||
having to figure it all out from this source code, check out the
|
||||
wiki: https://github.com/abo-abo/hydra/wiki. There's a wealth of
|
||||
information there. Everyone is welcome to bring the existing pages
|
||||
up to date and add new ones.
|
||||
|
||||
Additionally, the file hydra-examples.el serves to demo most of the
|
||||
functionality.
|
|
@ -0,0 +1,2 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "lv" "0.15.0" "Other echo area" 'nil :commit "f27fce1b2f0a9162e159557bdeb2c0c94defb4d2" :authors '(("Oleh Krehel")) :maintainer '("Oleh Krehel"))
|
|
@ -1,5 +1,5 @@
|
|||
;;; lv.el --- Other echo area
|
||||
;; Package-Version: 20191214.1357
|
||||
;; Package-Version: 0.15.0
|
||||
|
||||
;; Copyright (C) 2015 Free Software Foundation, Inc.
|
||||
|
||||
|
@ -44,11 +44,6 @@
|
|||
:group 'lv
|
||||
:type 'boolean)
|
||||
|
||||
(defcustom lv-use-padding nil
|
||||
"Whether to use horizontal padding in the LV window."
|
||||
:group 'lv
|
||||
:type 'boolean)
|
||||
|
||||
(defface lv-separator
|
||||
'((((class color) (background light)) :background "grey80")
|
||||
(((class color) (background dark)) :background "grey30"))
|
||||
|
@ -61,11 +56,6 @@ Only the background color is significant."
|
|||
"Holds the current LV window.")
|
||||
|
||||
(defvar display-line-numbers)
|
||||
(defvar display-fill-column-indicator)
|
||||
(defvar tab-line-format)
|
||||
|
||||
(defvar lv-window-hook nil
|
||||
"Hook to run by `lv-window' when a new window is created.")
|
||||
|
||||
(defun lv-window ()
|
||||
"Ensure that LV window is live and return it."
|
||||
|
@ -84,14 +74,10 @@ Only the background color is significant."
|
|||
(set-window-hscroll lv-wnd 0)
|
||||
(setq window-size-fixed t)
|
||||
(setq mode-line-format nil)
|
||||
(setq header-line-format nil)
|
||||
(setq tab-line-format nil)
|
||||
(setq cursor-type nil)
|
||||
(setq display-line-numbers nil)
|
||||
(setq display-fill-column-indicator nil)
|
||||
(set-window-dedicated-p lv-wnd t)
|
||||
(set-window-parameter lv-wnd 'no-other-window t)
|
||||
(run-hooks 'lv-window-hook))
|
||||
(set-window-parameter lv-wnd 'no-other-window t))
|
||||
(select-window ori)))))
|
||||
|
||||
(defvar golden-ratio-mode)
|
||||
|
@ -99,14 +85,6 @@ Only the background color is significant."
|
|||
(defvar lv-force-update nil
|
||||
"When non-nil, `lv-message' will refresh even for the same string.")
|
||||
|
||||
(defun lv--pad-to-center (str width)
|
||||
"Pad STR with spaces on the left to be centered to WIDTH."
|
||||
(let* ((strs (split-string str "\n"))
|
||||
(padding (make-string
|
||||
(/ (- width (length (car strs))) 2)
|
||||
?\ )))
|
||||
(mapconcat (lambda (s) (concat padding s)) strs "\n")))
|
||||
|
||||
(defun lv-message (format-string &rest args)
|
||||
"Set LV window contents to (`format' FORMAT-STRING ARGS)."
|
||||
(let* ((str (apply #'format format-string args))
|
||||
|
@ -114,8 +92,6 @@ Only the background color is significant."
|
|||
deactivate-mark
|
||||
golden-ratio-mode)
|
||||
(with-selected-window (lv-window)
|
||||
(when lv-use-padding
|
||||
(setq str (lv--pad-to-center str (window-width))))
|
||||
(unless (and (string= (buffer-string) str)
|
||||
(null lv-force-update))
|
||||
(delete-region (point-min) (point-max))
|
|
@ -1,2 +0,0 @@
|
|||
;;; -*- no-byte-compile: t -*-
|
||||
(define-package "lv" "20191214.1357" "Other echo area" 'nil :commit "9db28034d7d61bfeff89899633b958f22befc53d" :authors '(("Oleh Krehel")) :maintainer '("Oleh Krehel"))
|
|
@ -0,0 +1,9 @@
|
|||
This package provides `lv-message' intended to be used in place of
|
||||
`message' when semi-permanent hints are needed, in order to not
|
||||
interfere with Echo Area.
|
||||
|
||||
"Я тихо-тихо пiдглядаю,
|
||||
І тiшуся собi, як бачу то,
|
||||
Шо страшить i не пiдпускає,
|
||||
А iншi п’ють тебе, як воду пiсок."
|
||||
-- Андрій Кузьменко, L.V.
|
|
@ -90,7 +90,6 @@ this file. Usage:
|
|||
package. This is useful if the package is being lazily
|
||||
loaded, and you wish to conditionally call functions in your
|
||||
`:init' block that are defined in the package.
|
||||
:hook Specify hook(s) to attach this package to.
|
||||
|
||||
:bind Bind keys, and define autoloads for the bound commands.
|
||||
:bind* Bind keys, and define autoloads for the bound commands,
|
||||
|
@ -100,7 +99,7 @@ this file. Usage:
|
|||
:bind-keymap* Like `:bind-keymap', but overrides all minor mode bindings
|
||||
|
||||
:defer Defer loading of a package -- this is implied when using
|
||||
`:commands', `:bind', `:bind*', `:mode', `:magic', `:hook',
|
||||
`:commands', `:bind', `:bind*', `:mode', `:magic',
|
||||
`:magic-fallback', or `:interpreter'. This can be an integer,
|
||||
to force loading after N seconds of idle time, if the package
|
||||
has not already been loaded.
|
|
@ -651,8 +651,7 @@ extending any keys already present."
|
|||
,(when (eq use-package-verbose 'debug)
|
||||
`(message ,(format "Compiling package %s" name-string)))
|
||||
,(unless (plist-get args :no-require)
|
||||
`(unless (featurep ',name-symbol)
|
||||
(load ,name-string nil t))))))))))
|
||||
`(load ,name-string nil t)))))))))
|
||||
|
||||
;; Certain keywords imply :defer, if :demand was not specified.
|
||||
(when (and (not (plist-member args :demand))
|
||||
|
@ -1029,7 +1028,7 @@ meaning:
|
|||
"use-package statistics"
|
||||
"Show current statistics gathered about use-package declarations."
|
||||
(setq tabulated-list-format
|
||||
;; The sum of column width is 80 characters:
|
||||
;; The sum of column width is 80 caracters:
|
||||
#[("Package" 25 t)
|
||||
("Status" 13 t)
|
||||
("Last Event" 23 t)
|
||||
|
@ -1420,7 +1419,7 @@ no keyword implies `:all'."
|
|||
(defun use-package-handler/:custom-face (name _keyword args rest state)
|
||||
"Generate use-package custom-face keyword code."
|
||||
(use-package-concat
|
||||
(mapcar #'(lambda (def) `(custom-set-faces (backquote ,def))) args)
|
||||
(mapcar #'(lambda (def) `(custom-set-faces (quote ,def))) args)
|
||||
(use-package-process-keywords name rest state)))
|
||||
|
||||
;;;; :init
|
||||
|
@ -1534,7 +1533,6 @@ this file. Usage:
|
|||
package. This is useful if the package is being lazily
|
||||
loaded, and you wish to conditionally call functions in your
|
||||
`:init' block that are defined in the package.
|
||||
:hook Specify hook(s) to attach this package to.
|
||||
|
||||
:bind Bind keys, and define autoloads for the bound commands.
|
||||
:bind* Bind keys, and define autoloads for the bound commands,
|
||||
|
@ -1544,7 +1542,7 @@ this file. Usage:
|
|||
:bind-keymap* Like `:bind-keymap', but overrides all minor mode bindings
|
||||
|
||||
:defer Defer loading of a package -- this is implied when using
|
||||
`:commands', `:bind', `:bind*', `:mode', `:magic', `:hook',
|
||||
`:commands', `:bind', `:bind*', `:mode', `:magic',
|
||||
`:magic-fallback', or `:interpreter'. This can be an integer,
|
||||
to force loading after N seconds of idle time, if the package
|
||||
has not already been loaded.
|
|
@ -1,4 +1,4 @@
|
|||
(define-package "use-package" "20191126.2034" "A configuration macro for simplifying your .emacs"
|
||||
(define-package "use-package" "2.4" "A configuration macro for simplifying your .emacs"
|
||||
'((emacs "24.3")
|
||||
(bind-key "2.4"))
|
||||
:keywords
|
|
@ -901,7 +901,7 @@ While the ‘:after’ keyword delays loading until the dependencies are
|
|||
loaded, the somewhat simpler ‘:requires’ keyword simply never loads the
|
||||
package if the dependencies are not available at the time the
|
||||
‘use-package’ declaration is encountered. By "available" in this
|
||||
context it means that ‘foo’ is available of ‘(featurep 'foo)’ evaluates
|
||||
context it means that ‘foo’ is available of ‘(featurep 'foo)’ evaulates
|
||||
to a non-nil value. For example:
|
||||
|
||||
(use-package abbrev
|
|
@ -0,0 +1,8 @@
|
|||
The `use-package' declaration macro allows you to isolate package
|
||||
configuration in your ".emacs" in a way that is performance-oriented and,
|
||||
well, just tidy. I created it because I have over 80 packages that I use
|
||||
in Emacs, and things were getting difficult to manage. Yet with this
|
||||
utility my total load time is just under 1 second, with no loss of
|
||||
functionality!
|
||||
|
||||
Please see README.md from the same repository for documentation.
|
13
init.el
13
init.el
|
@ -52,6 +52,10 @@
|
|||
(package-install package))
|
||||
(require package)))
|
||||
|
||||
(add-to-list 'package-pinned-packages '("diminish" . "melpa-stable"))
|
||||
(add-to-list 'package-pinned-packages '("use-package" . "melpa-stable"))
|
||||
(add-to-list 'package-pinned-packages '("bind-key" . "melpa-stable"))
|
||||
|
||||
(put 'use-package 'lisp-indent-function 1)
|
||||
(setq use-package-verbose t
|
||||
use-package-minimum-reported-time 0.01)
|
||||
|
@ -533,9 +537,11 @@
|
|||
|
||||
;; * Some essential packages
|
||||
|
||||
(use-package dash)
|
||||
(use-package dash
|
||||
:pin "melpa-stable")
|
||||
|
||||
(use-package hydra)
|
||||
(use-package hydra
|
||||
:pin "melpa-stable")
|
||||
|
||||
(use-package db-utils
|
||||
:commands (endless/fill-or-unfill
|
||||
|
@ -621,6 +627,7 @@
|
|||
:commands counsel-projectile)
|
||||
|
||||
(use-package exec-path-from-shell
|
||||
:pin "melpa-stable"
|
||||
:commands (exec-path-from-shell-copy-envs))
|
||||
|
||||
|
||||
|
@ -2683,6 +2690,7 @@ With given ARG, display files in `db/important-document-path’."
|
|||
:commands (mastodon))
|
||||
|
||||
(use-package multiple-cursors
|
||||
:pin "melpa-stable"
|
||||
:ensure t
|
||||
:commands (mc/edit-lines
|
||||
mc/mark-next-like-this
|
||||
|
@ -2696,6 +2704,7 @@ With given ARG, display files in `db/important-document-path’."
|
|||
(require 'org-ref-url-utils)))
|
||||
|
||||
(use-package page-break-lines
|
||||
:pin "melpa-stable"
|
||||
:commands (page-break-lines-mode)
|
||||
:diminish page-break-lines-mode)
|
||||
|
||||
|
|
Loading…
Reference in New Issue