[elpa] externals/emms 5b1cfb1 4/4: * doc/developer-release.txt:
branch: externals/emms commit 5b1cfb12b49390328f68f351ab677c27c5c3e980 Author: Yoni Rabkin Commit: Yoni Rabkin * doc/developer-release.txt: --- doc/developer-release.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/developer-release.txt b/doc/developer-release.txt index b91f849..57a3d07 100644 --- a/doc/developer-release.txt +++ b/doc/developer-release.txt @@ -14,7 +14,7 @@ distributed via Emacs ELPA (https://elpa.gnu.org/). * Tag release in VCS, for example `git tag -a 4.2 -m "4.2"' -* Push tag to VCS if needed, for example `git push --tags origin "4.2"' +* Push tag to VCS, for example `git push --tags origin "4.2"' * Push to GNU ELPA:
[elpa] externals/emms f79343b 2/4: * emms-mode-line-icon.el: hiding icon made easy
branch: externals/emms commit f79343bf03f6ece09638ec27eeb831c0abe59667 Author: Yoni Rabkin Commit: Yoni Rabkin * emms-mode-line-icon.el: hiding icon made easy It is now possible to easily hide the mode-line icon. The manual as been updated with this information as well. --- doc/emms.texinfo | 9 + emms-mode-line-icon.el | 18 -- emms.info | 47 +++ 3 files changed, 48 insertions(+), 26 deletions(-) diff --git a/doc/emms.texinfo b/doc/emms.texinfo index 2638b3a..77c27b2 100644 --- a/doc/emms.texinfo +++ b/doc/emms.texinfo @@ -2355,6 +2355,15 @@ To use this feature invoke: (emms-playing-time 1) @end lisp +A graphical icon can be displayed in the modeline when Emms is +playing. This feature is provided by @file{emms-mode-line-icon.el}. To +enable invoke the following and make sure that +@var{emms-mode-line-icon-enabled-p} is set to a non-nil value: + +@lisp +(require emms-mode-line-icon) +@end lisp + Note: `(emms-playing-time -1)' will disable emms-playing-time module completely, and is not recommended. (since some other emms modules may rely on it) diff --git a/emms-mode-line-icon.el b/emms-mode-line-icon.el index 7d54d7e..46bc4e7 100644 --- a/emms-mode-line-icon.el +++ b/emms-mode-line-icon.el @@ -33,6 +33,10 @@ (require 'emms-mode-line) + +(defvar emms-mode-line-icon-enabled-p t + "Disable icon display when NIL.") + (defvar emms-mode-line-icon-color "black" "Color of the little icon displayed in the mode-line.") @@ -64,12 +68,14 @@ static char *note[] = { \"###..#\"};"))) (defun emms-mode-line-icon-function () - (concat " " - emms-mode-line-icon-before-format - (emms-propertize "NP:" 'display - (emms-mode-line-icon-generate - emms-mode-line-icon-color)) - (emms-mode-line-playlist-current))) + (if emms-mode-line-icon-enabled-p + (concat " " + emms-mode-line-icon-before-format + (emms-propertize "NP:" 'display + (emms-mode-line-icon-generate + emms-mode-line-icon-color)) + (emms-mode-line-playlist-current)) +(emms-mode-line-playlist-current))) (setq emms-mode-line-mode-line-function 'emms-mode-line-icon-function) diff --git a/emms.info b/emms.info index 32238b4..06fffd2 100644 --- a/emms.info +++ b/emms.info @@ -1957,6 +1957,13 @@ which is provided by the file 'emms-playing-time.el'. (require 'emms-playing-time) (emms-playing-time 1) + A graphical icon can be displayed in the modeline when Emms is +playing. This feature is provided by 'emms-mode-line-icon.el'. To +enable invoke the following and make sure that +EMMS-MODE-LINE-ICON-ENABLED-P is set to a non-nil value: + + (require emms-mode-line-icon) + Note: '(emms-playing-time -1)' will disable emms-playing-time module completely, and is not recommended. (since some other emms modules may rely on it) @@ -3775,8 +3782,8 @@ Function Index * emms-player-start: Core Functions. (line 58) * emms-player-stop: Core Functions. (line 60) * emms-player-stopped: Core Functions. (line 62) -* emms-playing-time-disable-display: Emms Mode Line. (line 35) -* emms-playing-time-enable-display: Emms Mode Line. (line 32) +* emms-playing-time-disable-display: Emms Mode Line. (line 42) +* emms-playing-time-enable-display: Emms Mode Line. (line 39) * emms-playlist-current-selected-track: Core Functions. (line 53) * emms-playlist-limit-to-all:Limiting.(line 61) * emms-playlist-limit-to-description:Limiting.(line 31) @@ -4029,23 +4036,23 @@ Node: Sorting Playlists63407 Node: Persistent Playlists64876 Node: Editing Tracks66035 Node: Emms Mode Line69709 -Node: Limiting70877 -Node: Music Player Daemon73216 -Node: Lyrics76729 -Node: Volume78777 -Node: Streaming Audio80565 -Ref: Streaming Audio-Footnote-181157 -Node: APE / FLAC Commands81508 -Node: Bookmarks82215 -Node: Managing Playlists82926 -Node: GNU FM83949 -Node: Uploading Track Information85303 -Node: GNU FM Streaming86185 -Node: Copying86685 -Node: The GNU FDL124202 -Node: Concept Index146590 -Node: Function Index151448 -Node: Variable Index167140 -Node: Keybinding Index169609 +Node: Limiting71152 +Node: Music Player Daemon73491 +Node: Lyrics77004 +Node: Volume79052 +Node: Streaming Audio80840 +Ref: Streaming Audio-Footnote-181432 +Node: APE / FLAC Commands81783 +Node: Bookmarks82490 +Node: Managing Playlists83201 +Node: GNU FM84224 +Node: Uploading Track Information85578 +Node: GNU FM Streaming86460 +Node: Copying86960 +Node: The GNU FDL124477 +Node: Concept Index146865 +Node: Function Index151723 +Node: Variable Index167415 +Node: Keybinding Index169884 End Ta
[elpa] externals/emms 5c72f04 1/4: * emms-librefm-stream.el: authinfo for streaming
branch: externals/emms commit 5c72f041893a2a88aa01ccb7828c498145fe1ac1 Author: Yoni Rabkin Commit: Yoni Rabkin * emms-librefm-stream.el: authinfo for streaming make `emms-librefm-stream-tune-handshake-string' use authinfo as well --- emms-librefm-stream.el | 24 +++- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/emms-librefm-stream.el b/emms-librefm-stream.el index c46a060..bfab2af 100644 --- a/emms-librefm-stream.el +++ b/emms-librefm-stream.el @@ -87,19 +87,17 @@ point after the HTTP headers." (defun emms-librefm-stream-tune-handshake-string () "Create the tune handshake string." - (when (not emms-librefm-scrobbler-username) -(error "null username")) - (when (not emms-librefm-scrobbler-password) -(error "null password")) - (let ((url (concat emms-librefm-stream-connect-method -emms-librefm-stream-host-url -"/radio/handshake.php?" -"version=1.3.0.58" "&" -"platform=linux" "&" -"username=" (url-encode-url emms-librefm-scrobbler-username) "&" -"passwordmd5=" (md5 emms-librefm-scrobbler-password) "&" -"language=en"))) -url)) + (let ((username (emms-librefm-scrobbler--username)) + (password (emms-librefm-scrobbler--password))) +(let ((url (concat emms-librefm-stream-connect-method + emms-librefm-stream-host-url + "/radio/handshake.php?" + "version=1.3.0.58" "&" + "platform=linux" "&" + "username=" (url-encode-url username) "&" + "passwordmd5=" (md5 password) "&" + "language=en"))) + url))) (defun emms-librefm-stream-tune-handshake-call () "Make the tune handshake call."
[elpa] externals/emms e1247af 3/4: * emms.el: bump to version 7.1
branch: externals/emms commit e1247af518d0d983d889d5ba60bbde38431d0c68 Author: Yoni Rabkin Commit: Yoni Rabkin * emms.el: bump to version 7.1 --- Makefile | 4 ++-- NEWS | 5 + doc/developer-release.txt | 2 +- emms.el | 2 +- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 546a355..ae9336d 100644 --- a/Makefile +++ b/Makefile @@ -22,8 +22,8 @@ GINSTALLINFO = /usr/bin/ginstall-info --info-dir=$(INFODIR) INSTALLINFO = /usr/bin/install-info --info-dir=$(INFODIR) CHANGELOG_CMD = git log --pretty=medium --no-merges -# The currently released version of EMMS -VERSION=6.03 +# The currently released version of EMMS (no longer in use) +VERSION=10.00 .PHONY: all install docs clean .PRECIOUS: %.elc diff --git a/NEWS b/NEWS index 3774dd7..2d9b2f3 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,8 @@ +News since version 7.0 + + - Add authinfo support for libre.fm streaming. + - Allow easily disabling the icon in the modeline. + News since version 6.3 - Native reading of file metadata via emms-info-native. diff --git a/doc/developer-release.txt b/doc/developer-release.txt index b39fcda..b91f849 100644 --- a/doc/developer-release.txt +++ b/doc/developer-release.txt @@ -2,7 +2,7 @@ This is an explanation of how to make a release for Emms. Emms is developed at Savannah (https://savannah.gnu.org/projects/emms/) and distributed via Emacs ELPA (https://elpa.gnu.org/). -* Increase the version number in emms.el (variable, elpa header), Makefile +* Increase the version number in emms.el (variable, elpa header) * Update NEWS diff --git a/emms.el b/emms.el index 9785cf3..499204e 100644 --- a/emms.el +++ b/emms.el @@ -5,7 +5,7 @@ ;; Author: Jorgen Schäfer , the Emms developers (see AUTHORS file) ;; Maintainer: Yoni Rabkin -;; Version: 7.0 +;; Version: 7.1 ;; Keywords: emms, mp3, ogg, flac, music, mpeg, video, multimedia ;; Package-Type: multi ;; Package-Requires: ((cl-lib "0.5") (seq))
[elpa] externals/emms updated (488d38b -> 5b1cfb1)
yonirabkin pushed a change to branch externals/emms. from 488d38b * doc/developer-release.txt: new 5c72f04 * emms-librefm-stream.el: authinfo for streaming new f79343b * emms-mode-line-icon.el: hiding icon made easy new e1247af * emms.el: bump to version 7.1 new 5b1cfb1 * doc/developer-release.txt: Summary of changes: Makefile | 4 ++-- NEWS | 5 + doc/developer-release.txt | 4 ++-- doc/emms.texinfo | 9 + emms-librefm-stream.el| 24 +++- emms-mode-line-icon.el| 18 -- emms.el | 2 +- emms.info | 47 +++ 8 files changed, 69 insertions(+), 44 deletions(-)
[elpa] externals/vertico 4c2a578: README: Document a few problematic completion commands
branch: externals/vertico commit 4c2a5780864779b63da162b03ec7f4c0bbea8166 Author: Daniel Mendler Commit: Daniel Mendler README: Document a few problematic completion commands cc @clemera --- README.org | 39 ++ vertico.texi | 61 2 files changed, 100 insertions(+) diff --git a/README.org b/README.org index b221df6..f20f7ee 100644 --- a/README.org +++ b/README.org @@ -171,6 +171,45 @@ follow a similar philosophy: candidate rotation feels a bit less intuitive than the UI provided by Vertico or Selectrum. +* Problematic completion commands + +** ~org-set-tags-command~ + + ~org-set-tags-command~ implements a completion table which relies on the ~basic~ + completion style and TAB completion. This table does not work well with Vertico + and Icomplete. The issue can be mitigated by deactivating most of the Vertico UI + and relying purely on TAB completion. The UI is still enhanced by Vertico, since + Vertico shows the available tags. + + #+begin_src emacs-lisp + (defun disable-selection () + (when (eq minibuffer-completion-table #'org-tags-completion-function) + (setq-local vertico-map minibuffer-local-completion-map + completion-cycle-threshold nil + completion-styles '(basic + (advice-add #'vertico--setup :before #'disable-selection) + #+end_src + + In order to fix the issues properly, ~org-set-tags-command~ should be + implemented using ~completing-read-multiple~ as discussed on the [[https://lists.gnu.org/archive/html/emacs-orgmode/2020-07/msg00222.html][mailing list]]. + +** ~Info-goto-node~ + + The command ~Info-goto-node~ uses the ~Info-read-node-name~ completion table, + which almost works as is with Vertico. However there is the issue that the + completion table sometimes throws unexpected errors (bug#47771). + +** ~tmm-menubar~ + + The text menu bar works well with Vertico but always shows a =*Completions*= + buffer, which is unwanted if you are using the Vertico UI. This completion + buffer can be disabled as follows. + + #+begin_src emacs-lisp + (defun kill-completions () (kill-buffer "*Completions*")) + (advice-add #'tmm-add-prompt :after #'kill-completions) + #+end_src + * Contributions Since this package is part of GNU ELPA, contributions require copyright diff --git a/vertico.texi b/vertico.texi index b132753..c02a6ab 100644 --- a/vertico.texi +++ b/vertico.texi @@ -32,7 +32,19 @@ * TAB completion:: * Complementary packages:: * Alternatives:: +* Problematic completion commands:: * Contributions:: + +@detailmenu +--- The Detailed Node Listing --- + +Problematic completion commands + +* @code{org-set-tags-command}:: +* @code{Info-goto-node}:: +* @code{tmm-menubar}:: + +@end detailmenu @end menu @node Introduction @@ -236,6 +248,55 @@ candidate rotation feels a bit less intuitive than the UI provided by Vertico or Selectrum. @end itemize +@node Problematic completion commands +@chapter Problematic completion commands + +@menu +* @code{org-set-tags-command}:: +* @code{Info-goto-node}:: +* @code{tmm-menubar}:: +@end menu + +@node @code{org-set-tags-command} +@section @code{org-set-tags-command} + +@code{org-set-tags-command} implements a completion table which relies on the @code{basic} +completion style and TAB completion. This table does not work well with Vertico +and Icomplete. The issue can be mitigated by deactivating most of the Vertico UI +and relying purely on TAB completion. The UI is still enhanced by Vertico, since +Vertico shows the available tags. + +@lisp +(defun disable-selection () + (when (eq minibuffer-completion-table #'org-tags-completion-function) +(setq-local vertico-map minibuffer-local-completion-map +completion-cycle-threshold nil +completion-styles '(basic +(advice-add #'vertico--setup :before #'disable-selection) +@end lisp + +In order to fix the issues properly, @code{org-set-tags-command} should be +implemented using @code{completing-read-multiple} as discussed on the @uref{https://lists.gnu.org/archive/html/emacs-orgmode/2020-07/msg00222.html, mailing list}. + +@node @code{Info-goto-node} +@section @code{Info-goto-node} + +The command @code{Info-goto-node} uses the @code{Info-read-node-name} completion table, +which almost works as is with Vertico. However there is the issue that the +completion table sometimes throws unexpected errors (bug#47771). + +@node @code{tmm-menubar} +@section @code{tmm-menubar} + +The text menu bar works well with Vertico but always shows a @samp{*Completions*} +buffer, which is unwanted if you are using the Vertico UI@. This completion +buffer can be disabled as follows. + +@lisp +(defun kill-completions () (kill-buffer "*Completions*")) +(advice-add #'tmm-add-prompt :after #'kill-completions) +@end lisp + @node Contributions @chapter Contributions
[elpa] main 148a1ba: * elpa-packages (vertico): Generate Info docs from README.org
branch: main commit 148a1ba5bd6094dfbe5cd80ba31d884f7e4886f5 Author: Stefan Monnier Commit: Stefan Monnier * elpa-packages (vertico): Generate Info docs from README.org --- elpa-packages | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/elpa-packages b/elpa-packages index 51ac4f7..33eee74 100644 --- a/elpa-packages +++ b/elpa-packages @@ -371,7 +371,8 @@ ("visual-fill":url nil) ("vlf":url "https://github.com/m00natic/vlfi";) ("verilog-mode":core "lisp/progmodes/verilog-mode.el") - ("vertico":url "https://github.com/minad/vertico";) + ("vertico":url "https://github.com/minad/vertico"; + :doc "README.org") ("wcheck-mode":url "https://github.com/tlikonen/wcheck-mode";) ("wconf" :url "https://github.com/ilohmar/wconf";) ("web-server" :url "https://github.com/eschulte/emacs-web-server.git";)
[elpa] externals/vertico b8d9792: Remove the autogenerated file vertico.texi
branch: externals/vertico commit b8d9792044464d129f98ce0116ab39038e1a00ec Author: Daniel Mendler Commit: Daniel Mendler Remove the autogenerated file vertico.texi --- vertico.texi | 306 --- 1 file changed, 306 deletions(-) diff --git a/vertico.texi b/vertico.texi deleted file mode 100644 index c02a6ab..000 --- a/vertico.texi +++ /dev/null @@ -1,306 +0,0 @@ -\input texinfo@c -*- texinfo -*- -@c %**start of header -@setfilename vertico.info -@settitle vertico.el - VERTical Interactive COmpletion -@documentencoding UTF-8 -@documentlanguage en -@c %**end of header - -@dircategory Emacs -@direntry -* Vertico: (vertico). VERTical Interactive COmpletion. -@end direntry - -@finalout -@titlepage -@title vertico.el - VERTical Interactive COmpletion -@author Daniel Mendler -@end titlepage - -@contents - -@ifnottex -@node Top -@top vertico.el - VERTical Interactive COmpletion -@end ifnottex - -@menu -* Introduction:: -* Features:: -* Configuration:: -* Keymap:: -* TAB completion:: -* Complementary packages:: -* Alternatives:: -* Problematic completion commands:: -* Contributions:: - -@detailmenu The Detailed Node Listing --- - -Problematic completion commands - -* @code{org-set-tags-command}:: -* @code{Info-goto-node}:: -* @code{tmm-menubar}:: - -@end detailmenu -@end menu - -@node Introduction -@chapter Introduction - -This package provides a minimalistic vertical completion UI, which is based on -the default completion system. By reusing the default system, Vertico achieves -full compatibility with built-in Emacs commands and completion tables. Vertico -is pretty bare-bone and only provides a minimal set of commands. The code base -is less than 500 lines of code. Additional optional enhancements can be provided -externally by complementary packages. - -@node Features -@chapter Features - -@itemize -@item -Vertical display with arrow key navigation -@item -Shows the index of the current candidate and the total number of candidates -@item -The current candidate is inserted with @samp{TAB} and selected with @samp{RET} -@item -Non-existing candidates are entered by moving the point to the prompt line -@item -Candidates are sorted by history, string length and alphabetically -@item -Long candidates with newlines are formatted to take up less space -@item -Support for @code{annotation-function}, @code{affixation-function} and @code{x-group-function} -@end itemize - -@uref{https://github.com/minad/vertico/blob/main/screenshot.svg?raw=true} - -@node Configuration -@chapter Configuration - -Vertico is available from @uref{http://elpa.gnu.org/packages/vertico.html, GNU ELPA}, such that it can be installed directly via -@code{package-install}. After installation, the global minor mode can be enabled with -@samp{M-x vertico-mode}. In order to configure Vertico and other packages in your -init.el, you may want to use @code{use-package}. I recommend to give orderless -completion a try, which is different from the familiar prefix TAB completion. -Here is an example configuration: - -@lisp -;; Enable vertico -(use-package vertico - :init - (vertico-mode)) - -;; Use the `orderless' completion style. -;; Enable `partial-completion' for files to allow path expansion. -;; You may prefer to use `initials' instead of `partial-completion'. -(use-package orderless - :init - (setq completion-styles '(orderless) -completion-category-defaults nil -completion-category-overrides '((file (styles . (partial-completion)) - -;; Persist history over Emacs restarts. Vertico sorts by history. -(use-package savehist - :init - (savehist-mode)) - -;; A few more useful configurations... -(use-package emacs - :init - ;; Add prompt indicator to `completing-read-multiple'. - (defun crm-indicator (args) -(cons (concat "[CRM] " (car args)) (cdr args))) - (advice-add #'completing-read-multiple :filter-args #'crm-indicator) - - ;; Grow and shrink minibuffer - ;;(setq resize-mini-windows t) - - ;; Do not allow the cursor in the minibuffer prompt - (setq minibuffer-prompt-properties -'(read-only t cursor-intangible t face minibuffer-prompt)) - (add-hook 'minibuffer-setup-hook #'cursor-intangible-mode) - - ;; Enable recursive minibuffers - (setq enable-recursive-minibuffers t)) -@end lisp - -@node Keymap -@chapter Keymap - -Vertico defines its own local keymap in the minibuffer which is derived from -@code{minibuffer-local-map}. The keymap mostly keeps the @code{fundamental-mode} -keybindings intact, but rebinds a few commands. Note in particular the binding -of @samp{TAB} to @code{vertico-insert} and the bindings of @code{vertico-exit/exit-input}. - -@itemize -@item -@code{beginning-of-buffer}, @code{minibuffer-beginning-of-buffer} -> @code{vertico-beginning-of-buffer} -@item -@code{end-of-buffer} -> @code{vertico-end-of-buffer} -@item -@code{scroll-down-command} -> @code{vertico-scroll-down} -@item -@code{scroll-up-command} ->
[elpa] main daa648e: * elpa-packages (hyperbole): Auto sync
branch: main commit daa648e87744305bd9cfe4e8ef504503939e6b3f Author: Stefan Monnier Commit: Stefan Monnier * elpa-packages (hyperbole): Auto sync --- elpa-packages | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/elpa-packages b/elpa-packages index 33eee74..3de1be1 100644 --- a/elpa-packages +++ b/elpa-packages @@ -169,7 +169,8 @@ ("hook-helpers" :url "https://git.savannah.nongnu.org/git/hook-helpers-el.git";) ("html5-schema" :url nil) ("hydra" :url "https://github.com/abo-abo/hydra";) - ("hyperbole" :url "http://git.savannah.gnu.org/r/hyperbole.git";) + ("hyperbole" :url "http://git.savannah.gnu.org/r/hyperbole.git"; + :auto-sync t) ("ioccur" :url "https://github.com/thierryvolpiatto/ioccur.git";) ("iterators" :url nil) ("ivy"
[elpa] externals/hyperbole 76f40b5: Add func to run all tests and make some test more robust (#63)
branch: externals/hyperbole commit 76f40b52e5f9672a164e845d6827e4239a3bcc81 Author: Mats Lidell Commit: GitHub Add func to run all tests and make some test more robust (#63) * Add func to run all tests and make some test more robust * Use expand-file-name --- Changes| 9 + hypb-ert.el| 6 ++ test/demo-tests.el | 1 + test/hbut-tests.el | 8 test/hibtypes-tests.el | 4 ++-- 5 files changed, 22 insertions(+), 6 deletions(-) diff --git a/Changes b/Changes index 6231d30..4e8514e 100644 --- a/Changes +++ b/Changes @@ -1,3 +1,12 @@ +2021-04-11 Mats Lidell + +* test/hibtypes-tests.el (ibtypes::ctags-vgrind-test) +(ibtypes::etags-test): Make tests independent of default directory. + +* test/demo-tests.el (demo-manifest-test): Make test more robust. + +* hypb-ert.el (hypb-run-all-tests): Run all hyperbole tests. + 2021-04-07 Mats Lidell * test/hypb-tests.el: Rename test file diff --git a/hypb-ert.el b/hypb-ert.el index 45a37a2..0d30cb1 100644 --- a/hypb-ert.el +++ b/hypb-ert.el @@ -42,5 +42,11 @@ (defal hypb-ert-sym 'hypb-run-ert-test-symbol) (defal hypb-ert-sel 'hypb-run-ert-test-selector) +(defun hypb-run-all-tests () + "Run every ert test." + (interactive) + (mapc 'load-file (directory-files (expand-file-name "test" hyperb:dir) t "\\.el$")) + (ert t)) + (provide 'hypb-ert) ;;; hypb-ert.el ends here diff --git a/test/demo-tests.el b/test/demo-tests.el index d552de3..22c83be 100644 --- a/test/demo-tests.el +++ b/test/demo-tests.el @@ -255,6 +255,7 @@ (unwind-protect (progn (find-file (expand-file-name "MANIFEST" hyperb:dir)) +(beginning-of-buffer) (forward-line 1) (should (looking-at "COPYING")) (action-key) diff --git a/test/hbut-tests.el b/test/hbut-tests.el index 41cb6aa..7445dbd 100644 --- a/test/hbut-tests.el +++ b/test/hbut-tests.el @@ -30,7 +30,7 @@ (insert "") (goto-char 4) (action-key) -(should (string= (concat hyperb:dir "DEMO") buffer-file-name +(should (string= (expand-file-name "DEMO" hyperb:dir) buffer-file-name (progn (kill-buffer "DEMO") (ibtype:delete 'ibtypes::defal-path))) @@ -111,7 +111,7 @@ the button text" (insert "<<>>") (goto-char 4) (action-key) -(should (string= (concat hyperb:dir "DEMO") buffer-file-name))) +(should (string= (expand-file-name "DEMO" hyperb:dir) buffer-file-name))) (progn (kill-buffer "DEMO") (ibtype:delete 'ibtypes::defil-path-it @@ -154,7 +154,7 @@ the button text" (with-temp-buffer (insert "<[emacs]>: \"${hyperb:dir}/DEMO\"") (goto-char 4) -(hy-test-helpers:action-key-should-call-hpath:find (concat hyperb:dir "DEMO" +(hy-test-helpers:action-key-should-call-hpath:find (expand-file-name "DEMO" hyperb:dir (ert-deftest hbut-ib-link-to-file-with-label-variants () (cl-loop for ch in '(?: ?- ?=) do @@ -162,7 +162,7 @@ the button text" (with-temp-buffer (insert "<[demo]>" (make-string n ch) " \"${hyperb:dir}/DEMO\"") (goto-char 4) - (hy-test-helpers:action-key-should-call-hpath:find (concat hyperb:dir "DEMO")) + (hy-test-helpers:action-key-should-call-hpath:find (expand-file-name "DEMO" hyperb:dir)) (ert-deftest hbut-ib-url-with-label () "Should find link but fails with (user-error \"No link found\")" diff --git a/test/hibtypes-tests.el b/test/hibtypes-tests.el index 4be61b5..498b611 100644 --- a/test/hibtypes-tests.el +++ b/test/hibtypes-tests.el @@ -121,7 +121,7 @@ (insert "hy-test-helpers:consume-input-events hy-test-helpers.el 21\n") (goto-char (point-min)) (forward-char 4) -(let ((default-directory (concat default-directory "test"))) +(let ((default-directory (expand-file-name "test" hyperb:dir))) (ibtypes::ctags) (set-buffer "hy-test-helpers.el") (should (looking-at "(defun hy-test-helpers:consume-input-events" @@ -138,7 +138,7 @@ (goto-char (point-min)) (forward-line 2) (forward-char 10) -(let ((default-directory (concat default-directory "test"))) +(let ((default-directory (expand-file-name "test" hyperb:dir))) (ibtypes::etags) (set-buffer "hy-test-helpers.el") (should (looking-at "(defun hy-test-helpers:consume-input-events"
[elpa] externals/ergoemacs-mode bcaf49b 03/87: Don't allow infinite recursion on mapkeymap.
branch: externals/ergoemacs-mode commit bcaf49b631d3744a5ee11288aae689d319578e95 Author: Fidler Commit: Fidler Don't allow infinite recursion on mapkeymap. Should fix Issues #442 and #440 --- ergoemacs-mapkeymap.el | 23 ++- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/ergoemacs-mapkeymap.el b/ergoemacs-mapkeymap.el index b7d9e9c..f7c52cc 100644 --- a/ergoemacs-mapkeymap.el +++ b/ergoemacs-mapkeymap.el @@ -84,6 +84,8 @@ If `ergoemacs-mode' cant determine the value, return nil." (and (fboundp keymap) (setq tmp (symbol-function keymap)) (ergoemacs-keymapp tmp) tmp +(defvar ergoemacs-map-keymap--submap-stack nil) + (defun ergoemacs-map-keymap--map-submap (sub-keymap function &optional original prefix flat-keymap nil-keys) "Expose SUB-KEYMAP, then apply `ergoemacs-map-keymap'. @@ -95,15 +97,18 @@ FLAT-KEYMAP and NIL-KEYS arguments. It is missing the keymap argument, since it is calculated from the exposed sub-keymap." (let ((tmp (ergoemacs-map-keymap--expose-keymap sub-keymap))) (when tmp - (ergoemacs-map-keymap function -(cond - ((eq original :setcdr) - (ergoemacs-setcdr (cdr tmp) -(cdr (ergoemacs :original tmp - (original - (ergoemacs :original tmp)) - (t tmp)) -original prefix flat-keymap nil-keys + (unless (memq tmp ergoemacs-map-keymap--submap-stack) + (push tmp ergoemacs-map-keymap--submap-stack) + (ergoemacs-map-keymap function + (cond + ((eq original :setcdr) +(ergoemacs-setcdr (cdr tmp) + (cdr (ergoemacs :original tmp + (original +(ergoemacs :original tmp)) + (t tmp)) + original prefix flat-keymap nil-keys) + (pop ergoemacs-map-keymap--submap-stack) (defun ergoemacs-map-keymap (function keymap &optional original prefix flat-keymap nil-keys) "Call FUNCTION for all keys in hash table KEYMAP.
[elpa] externals/ergoemacs-mode f10eecc 01/87: Fix overriding keymap. Needs to be expanded.
branch: externals/ergoemacs-mode commit f10eeccc1680390a07e6edf92899cbf55d7f0428 Author: Matthew L. Fidler Commit: Matthew L. Fidler Fix overriding keymap. Needs to be expanded. - Should allow syntax in #436 --- ergoemacs-mode.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el index c6e611f..c18fd42 100644 --- a/ergoemacs-mode.el +++ b/ergoemacs-mode.el @@ -702,7 +702,7 @@ SYMBOL is the symbol to set, NEW-VALUE is it's value." (defun ergoemacs-setup-override-keymap () "Setup `ergoemacs-mode' overriding keymap `ergoemacs-override-keymap'." - (setq ergoemacs-override-alist `((ergoemacs-mode . ,ergoemacs-override-keymap))) + (setq ergoemacs-override-alist `((ergoemacs-mode . ,(ergoemacs ergoemacs-override-keymap (add-hook 'emulation-mode-map-alists 'ergoemacs-override-alist)) (defun ergoemacs-remove-override-keymap ()
[elpa] externals/ergoemacs-mode 6051ab5 25/87: Remove unicode fonts setup. Refix Issue #408
branch: externals/ergoemacs-mode commit 6051ab51043d1744e17925d60a2392dc82d54f67 Author: Fidler Commit: Fidler Remove unicode fonts setup. Refix Issue #408 --- ergoemacs-mode.el | 14 +++--- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el index 1b2b108..89c39ed 100644 --- a/ergoemacs-mode.el +++ b/ergoemacs-mode.el @@ -598,15 +598,15 @@ When STORE-P is non-nil, save the tables." (load (symbol-name pkg) (require 'unicode-fonts nil t) -(when (featurep 'unicode-fonts) - (require 'persistent-soft nil t) - (when (featurep 'persistent-soft) -(unicode-fonts-setup))) +;; (when (featurep 'unicode-fonts) +;; (require 'persistent-soft nil t) +;; (when (featurep 'persistent-soft) +;; (unicode-fonts-setup))) -(defcustom ergoemacs-use-unicode-symbols - (and (featurep 'persistent-soft) - (featurep 'unicode-fonts)) +(defcustom ergoemacs-use-unicode-symbols nil + ;; (and (featurep 'persistent-soft) + ;; (featurep 'unicode-fonts)) "Use unicode symbols in display." :type 'boolean :group 'ergoemacs-mode)
[elpa] externals/ergoemacs-mode 27f60cc 11/87: Will eat commands for self insert like e t
branch: externals/ergoemacs-mode commit 27f60ccaa87f6e34db0e4e7e305216b04d7cca4c Author: Fidler Commit: Fidler Will eat commands for self insert like e t --- ergoemacs-command-loop.el | 35 --- 1 file changed, 24 insertions(+), 11 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index ebd4219..68f797c 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1141,6 +1141,7 @@ is the :full command loop." (setq ergoemacs-command-loop--prefix-timer nil))) (defvar ergoemacs-command-loop--eat nil) +(defvar ergoemacs-command-loop--eat-unread nil) (defun ergoemacs-command-loop--start-for-prefix () "Start the ergoemacs command loop for the currently running prefix key." (when (and (not (ergoemacs :modal-p)) @@ -1149,20 +1150,30 @@ is the :full command loop." (not (ergoemacs-command-loop-p))) (setq ergoemacs-command-loop-start t ergoemacs-command-loop--single-command-keys (this-single-command-keys) - ergoemacs-command-loop--eat ergoemacs-command-loop--single-command-keys) + ergoemacs-command-loop--eat ergoemacs-command-loop--single-command-keys + ergoemacs-command-loop--eat-unread nil) +(ergoemacs-command-loop--stop-prefix-timer) (ergoemacs-command-loop ergoemacs-command-loop--single-command-keys))) (defun ergoemacs-command-loop--eat () "Eat the key sequence calling the prefix start." (when ergoemacs-command-loop--eat -(let ((map (make-keymap))) - (define-key map ergoemacs-command-loop--eat '(lambda () (interactive) (setq overriding-terminal-local-map nil))) +(let ((map (make-keymap)) + (fn '(lambda () + (interactive) + (setq overriding-terminal-local-map nil + unread-command-events ergoemacs-command-loop--eat-unread + ergoemacs-command-loop--eat-unread nil) + (ergoemacs-command-loop--prefix-timer + (define-key map ergoemacs-command-loop--eat fn) + (define-key map [eroemacs-eat] fn) + (define-key map (vconcat ergoemacs-command-loop--eat [eroemacs-eat]) fn) (setq overriding-terminal-local-map map - ergoemacs-command-loop--eat nil + ergoemacs-command-loop--eat nil + unread-command-events (list 'ergoemacs-eat) (add-hook 'ergoemacs-mode-startup-hook #'ergoemacs-command-loop--prefix-timer) (add-hook 'ergoemacs-mode-shutdown-hook #'ergoemacs-command-loop--stop-prefix-timer) -(add-hook 'post-command-hook #'ergoemacs-command-loop--eat) (defun ergoemacs-command-loop--start-with-pre-command-hook () @@ -1474,9 +1485,9 @@ The RECORD-FLAG and KEYS are sent to `ergoemacs--real-call-interactively'. This will grow `max-lisp-eval-depth' and `max-specpdl-size' if needed (and resotre them to the original values)." (setq ergoemacs-command-loop--grow-command nil - ergoemacs-command-loop--grow-record nil - ergoemacs-command-loop--grow-keys nil - ergoemacs-command-loop--grow-special nil) + ergoemacs-command-loop--grow-record nil + ergoemacs-command-loop--grow-keys nil + ergoemacs-command-loop--grow-special nil) (if (memq command ergoemacs-command-loop-dont-grow-commands) (call-interactively command record-flag keys) (let ((grow-max-lisp-p t) @@ -1643,7 +1654,7 @@ Used to replace: Currently these are all vectors and all ingore prefix arguments. They don't exactly behave like their Emacs equivalents." - (or (and ergoemacs-mode ergoemacs-command-loop--single-command-keys) + (or (and ergoemacs-mode `ergoemacs-command-loop--single-command-keys) (funcall ergoemacs-command-loop--this-command-keys))) (defvar ergoemacs-command-loop--timer nil @@ -1814,7 +1825,10 @@ Emacs versions)." (ergoemacs-command-loop--call-interactively this-command) (setq command this-command this-command tmp)) - + (when (and ergoemacs-command-loop--eat unread-command-events) + (setq ergoemacs-command-loop--eat-unread unread-command-events +unread-command-events nil)) + (ergoemacs-command-loop--eat) ;; If the command changed anything, fix it here. (unless (equal type ergoemacs-command-loop--current-type) (setq type ergoemacs-command-loop--current-type @@ -1825,7 +1839,6 @@ Emacs versions)." universal ergoemacs-command-loop--universal ergoemacs-command-loop--single-command-keys nil continue-read (not ergoemacs-command-loop--exit))) - ;; Handle any keys that are bound in some translatable way. ((setq command (ergoemacs-command-loop--key-lookup current-key))
[elpa] externals/ergoemacs-mode b3df015 17/87: Make sure changing local variables doesn't affect save state
branch: externals/ergoemacs-mode commit b3df015fa95ee6c2c3e62cf162c03c13dac034b1 Author: Fidler Commit: Fidler Make sure changing local variables doesn't affect save state --- ergoemacs-command-loop.el | 6 -- ergoemacs-component.el| 11 +++ ergoemacs-functions.el| 17 +++-- ergoemacs-map.el | 3 ++- ergoemacs-mode.el | 11 ++- 5 files changed, 34 insertions(+), 14 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index d64b9ba..85e485c 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1142,7 +1142,8 @@ appropriate value based on the COMMAND." (not ergoemacs-command-loop--minibuffer-unsupported-p)) (when (or (and command (symbolp command) (string-match-p "^\\(calc\\|math\\)" (symbol-name command))) (and (stringp command) (string-match-p "^[^:]*:\\(calc\\|math\\)" command))) - (set (make-local-variable 'ergoemacs-command-loop--minibuffer-unsupported-p) t)) + (ergoemacs-save-buffer-state + (set (make-local-variable 'ergoemacs-command-loop--minibuffer-unsupported-p) t))) (ergoemacs-command-loop--minibuffer-supported-p))) (defun ergoemacs-command-loop-full-p (&optional type) @@ -1225,7 +1226,8 @@ The properties `point-entered' and `point-left' are handled by C internals." (setq last-point cur-point cur-point (point) (setq disable-point-adjustment nil) - (set (make-local-variable 'ergoemacs-command-loop--point-motion-last-point) (point))) + (ergoemacs-save-buffer-state + (set (make-local-variable 'ergoemacs-command-loop--point-motion-last-point) (point (defun ergoemacs-command-loop--sync-point () "Sometimes the window buffer and selected buffer are out of sync. diff --git a/ergoemacs-component.el b/ergoemacs-component.el index 32bf32d..0a1ad4b 100644 --- a/ergoemacs-component.el +++ b/ergoemacs-component.el @@ -948,13 +948,16 @@ OBJ is the current object being modified, passed to (dolist (elt (ergoemacs-component-struct--lookup-hash (or obj (ergoemacs-theme-components (let ((plist (gethash hook (ergoemacs-component-struct-hook-plists elt (when (and plist (plist-get plist :command-loop-unsupported-p)) - (set (make-local-variable 'ergoemacs-command-loop--minibuffer-unsupported-p) t) + (ergoemacs-save-buffer-state +(set (make-local-variable 'ergoemacs-command-loop--minibuffer-unsupported-p) t)) (throw 'unsupported-p t)) (if ergoemacs-component-struct--composed-hook-minibuffer (push elt ergoemacs-component-struct--composed-hook-minibuffer) - (set (make-local-variable 'ergoemacs-component-struct--composed-hook-minibuffer) -(list elt - (set (make-local-variable (car elt)) (make-composed-keymap (cdr elt) (symbol-value (car elt))) + (ergoemacs-save-buffer-state +(set (make-local-variable 'ergoemacs-component-struct--composed-hook-minibuffer) + (list elt) + (ergoemacs-save-buffer-state + (set (make-local-variable (car elt)) (make-composed-keymap (cdr elt) (symbol-value (car elt (defvar ergoemacs-component-struct--create-hooks nil) (defun ergoemacs-component-struct--create-hooks (&optional obj) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 1011215..4516828 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -249,7 +249,8 @@ When TERMINAL is non-nil, run in a terminal instead of GUI." (kill-buffer buf))) (switch-to-buffer-other-window (get-buffer-create "*ergoemacs-clean*")) (let ((inhibit-read-only t)) -(set (make-local-variable 'ergoemacs-terminal) terminal) +(ergoemacs-save-buffer-state + (set (make-local-variable 'ergoemacs-terminal) terminal)) (setq default-directory (expand-file-name (file-name-directory (locate-library "ergoemacs-mode" (delete-region (point-min) (point-max)) (when (or (equal current-prefix-arg '(4)) @@ -296,8 +297,9 @@ The PROCESS is the process where the clean environment is run." emacs-exe (expand-file-name (file-name-directory (locate-library "ergoemacs-mode"))) ergoemacs-load)) - (set (make-local-variable 'ergoemacs-batch-file) - (make-temp-file "ergoemacs-clean" nil ".bat")) + (ergoemacs-save-buffer-state + (set (make-local-variable 'ergoemacs-batch-file) + (make-temp-file "ergoemacs-clean" nil ".bat"))) (with-temp-file ergoemacs-batch-file (insert cmd)) (setq default-directory (file-name-directory ergoemacs-batch-file))) @@ -2444,15 +2446,18 @@ Sends shell prompt string to process, then turns on (require 'dirtrack) (cond ((string-match "cmd\\(proxy\\)?.exe" shell) -
[elpa] externals/ergoemacs-mode updated (5450f4d -> f9d6e3f)
monnier pushed a change to branch externals/ergoemacs-mode. from 5450f4d Address the many warnings emitted by the compiler new f10eecc Fix overriding keymap. Needs to be expanded. new f12edbb Maybe Fix issue #426 new bcaf49b Don't allow infinite recursion on mapkeymap. new 7ba903e4 Don't grow mouse commands & set this-command before command is called new 27c6245 Remove helm-do-grep. Its no longer found in helm new 1421a65 Change how key prefixes are handled. new a75a338 Add ergoemacs start prefix correctly new 59cb758 Change to an idle timer for more stability new a1dd7a7 Eat command prefixes that were intercepted by the timer new 176af55 Take out message new 27f60cc Will eat commands for self insert like e t new 59235bb Allow ergoemacs-mode to handle ending keys new 01197b3 Add undefined handling new 4710b5f Fix eating of the variable new e6edcbe Remove prefix switching to command loop. new 427d0e4 Only echo on prefix keys new b3df015 Make sure changing local variables doesn't affect save state new 8ea44c2 Bug fix for modifiers new 4a8de51 The image is created for the current theme. new 5a7c4c6 Test for Issue #437 new 981ffb3 Fix Issue #437 new 07ef724 Change ergoemacs-override-keymap key bindings. new f3dd332 Revert set-map-list new d36e6390 Defer ergoemacs override setup new 6051ab5 Remove unicode fonts setup. Refix Issue #408 new d5d7e5b Partial fix for C-c and C-x. See Issue #444 new 98703c4 Add Swiper keys. Issue #445 new e79d33c Rename ergoemacs-swiper to swiper. Issue #445 new f7a68f6 Add back Ctrl+Shift+c and Ctrl+Shift+x. new b4b5241 Add back ergoemacs-style shift-translation new 3ea0220 Add Qwidget for nomachine new 9acd205 Fix Issue #451 by coding a new old binding function new 823b73a Added Portuguese QWERTY keyboard layout. new 7e31354 Merge pull request #450 from MicroAnibal/PotugueseLayout new d51ae7e Merge remote-tracking branch 'origin/master' new 87fe85a No longer try to ensure undo-tree and persistent-soft are installed new 0a9e83e Fix eurgoemacs to be ergoemacs. See Issue #453 new daec6a1 May Fix Issue #453 new d5d2ba4 Create extras directory. See Issue #452 new 7df155e Don't refresh the package contents. See #452 new 3e6fea9 Possibly fix #453 new f3f7b10 Add keyboard layout; See Issue #462 new b70d9fe Fix back quote. new 7b06006 Merge pull request #465 from MicroAnibal/FixLayoutsTypo new dfb5a43 Add key to fix Issue #470 new a87fae7 Fix passing of multiple forms for evaluation on new emacs process launch in ergoemacs-map-properties--get-original-global-map. new 4e188fd Escape quotes on use as characters in ergoemacs-reverse-iso-chars-alist. new 6231ee0 Merge pull request #468 from m00natic/emacs26-fixes new 3ce23bb Merge branch 'master' of github.com:ergoemacs/ergoemacs-mode new a5d4665 Remove emojify-emojify-mode-line mu4e-update-mail-and-index from modify new cac7b56 Fix (string-match-p error) new aa649b2 Add hooks to ergoemacs-map-properties--modify-run-mode-hooks-excluded new 7d36565 Merge pull request #481 from TinaRussell/exclude-more-hooks new dc2f666 Add info on how to get system-wide Ergoemacs bindings in macOS new 4a6ba06 Merge pull request #488 from marlonrichert/macos new fad3ed1 Fixed not removing visible selection when ergoemacs-keep-region-after-copy is set to true. new 9a5b97f Removed commented out code new 6a3214e Merge pull request #490 from Valdaer/keep-region-selected-after-ctrl-c new 8a65bf2 Fix typos (dispaly -> display) new 67e8c66 Merge pull request #494 from wlandry/master new 131b3fb Fix command-loop errors new f5aa0f7 Merge pull request #496 from wlandry/command_loop new 10007d2 Preserve the behavior of 'space' when rebinding inside a minibuffer new 2091646 Merge pull request #497 from wlandry/space_in_filenames new 4769abe Update Mac instructions to swap Command and Alt new 730306e Merge pull request #495 from wlandry/mac_meta_alt_switch new ade132c Remap ergoemacs-paste to calc-yank in calc-mode new 26c2150 Merge pull request #498 from wlandry/calc_yank new c7907aa In term-mode, modify both term-raw-map and current-local-map new 8b437ad Merge pull request #500 from wlandry/term_fixes new ea9b60f Make the bash bindings work new 72b0292 Make ergoemacs-handle-ctl-c-or-ctl-x==only-C-c-and-C-x work new ad3ec45 F
[elpa] externals/ergoemacs-mode 176af55 10/87: Take out message
branch: externals/ergoemacs-mode commit 176af5544c5402d643180260ebe791322dd5c6bf Author: Fidler Commit: Fidler Take out message --- ergoemacs-command-loop.el | 1 - 1 file changed, 1 deletion(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index c9a4d91..ebd4219 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1155,7 +1155,6 @@ is the :full command loop." (defun ergoemacs-command-loop--eat () "Eat the key sequence calling the prefix start." (when ergoemacs-command-loop--eat -(message "Eat %s" ergoemacs-command-loop--eat) (let ((map (make-keymap))) (define-key map ergoemacs-command-loop--eat '(lambda () (interactive) (setq overriding-terminal-local-map nil))) (setq overriding-terminal-local-map map
[elpa] externals/ergoemacs-mode 01197b3 13/87: Add undefined handling
branch: externals/ergoemacs-mode commit 01197b35314f99f6a83edc7e3928262526e15080 Author: Fidler Commit: Fidler Add undefined handling --- ergoemacs-advice.el | 32 +++- ergoemacs-command-loop.el | 3 +-- 2 files changed, 20 insertions(+), 15 deletions(-) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index de3453c..d935fef 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -320,24 +320,30 @@ command selected, instead of rerunning `smex' and :type :before (setq ergoemacs-command-loop--single-command-keys nil)) +(defun ergoemacs-mode--undefined-advice () + "Advice for undefined." + (let ((keys (this-single-command-keys))) +(if (member (substring keys -1) '([apps] [menu])) +(progn + (setq ergoemacs-command-loop--eat nil) + (ergoemacs-command-loop keys)) + (ding) + (ergoemacs-command-loop--temp-message "%s is undefined!" +(ergoemacs-key-description (this-single-command-keys))) + (setq defining-kbd-macro nil) + (force-mode-line-update) + ;; If this is a down-mouse event, don't reset prefix-arg; + ;; pass it to the command run by the up event. + (setq prefix-arg +(when (memq 'down (event-modifiers last-command-event)) + current-prefix-arg) + (ergoemacs-advice undefined () "Allow `ergoemacs-mode' to display keys, and intercept ending keys." :type :around (if (not ergoemacs-mode) ad-do-it -(let ((keys (this-single-command-keys))) - (if (member (substring keys -1) '([apps] [menu])) - (ergoemacs-command-loop keys) - (ding) -(ergoemacs-command-loop--temp-message "%s is undefined!" - (ergoemacs-key-description (this-single-command-keys))) -(setq defining-kbd-macro nil) -(force-mode-line-update) -;; If this is a down-mouse event, don't reset prefix-arg; -;; pass it to the command run by the up event. - (setq prefix-arg - (when (memq 'down (event-modifiers last-command-event)) -current-prefix-arg)) +(ergoemacs-mode--undefined-advice))) (provide 'ergoemacs-advice) ;; diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 68f797c..47ea3e6 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1174,7 +1174,7 @@ is the :full command loop." (add-hook 'ergoemacs-mode-startup-hook #'ergoemacs-command-loop--prefix-timer) (add-hook 'ergoemacs-mode-shutdown-hook #'ergoemacs-command-loop--stop-prefix-timer) - +(add-hook 'post-command-hook #'ergoemacs-command-loop--eat) (defun ergoemacs-command-loop--start-with-pre-command-hook () "Start ergoemacs command loop. @@ -1828,7 +1828,6 @@ Emacs versions)." (when (and ergoemacs-command-loop--eat unread-command-events) (setq ergoemacs-command-loop--eat-unread unread-command-events unread-command-events nil)) - (ergoemacs-command-loop--eat) ;; If the command changed anything, fix it here. (unless (equal type ergoemacs-command-loop--current-type) (setq type ergoemacs-command-loop--current-type
[elpa] externals/ergoemacs-mode 4a8de51 19/87: The image is created for the current theme.
branch: externals/ergoemacs-mode commit 4a8de51e161dc692074f8d461b7d167224f85801 Author: Fidler Commit: Fidler The image is created for the current theme. I think this fixes #425 --- ergoemacs-key-description.el | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/ergoemacs-key-description.el b/ergoemacs-key-description.el index d126244..ec04a42 100644 --- a/ergoemacs-key-description.el +++ b/ergoemacs-key-description.el @@ -505,7 +505,7 @@ When HELP is non-nil, insert and add help cross-refences." ret) (ergoemacs-timing describe-keymap (setq ret -(ergoemacs-cache (intern (format "describe-keymap-ret%s" (mapconcat (lambda(x) (number-to-string x)) (ergoemacs map :key-hash) "_"))) +(ergoemacs-cache (intern (format "describe-keymap-ret%s" (mapconcat (lambda(x) (md5 (format "%s" x))) (ergoemacs map :key-hash) "_"))) (ergoemacs-map-keymap (lambda (cur-key item) (unless (eq item 'ergoemacs-prefix) @@ -520,13 +520,13 @@ When HELP is non-nil, insert and add help cross-refences." ret))) (setq ret (append (list nil t) (sort ret (lambda(e1 e2) (ergoemacs :key-lessp (car e1) (car e2)) (if help -(insert (ergoemacs-cache (intern (format "describe-keymap-help%s" (mapconcat (lambda(x) (number-to-string x)) (ergoemacs map :key-hash) "_"))) +(insert (ergoemacs-cache (intern (format "describe-keymap-help%s" (mapconcat (lambda(x) (md5 (format "%s" x))) (ergoemacs map :key-hash) "_"))) (with-temp-buffer (dolist (x ret) (ergoemacs-key-description--keymap-item x map t) (insert "\n")) (buffer-string - (ergoemacs-cache (intern (format "describe-keymap%s" (mapconcat (lambda(x) (number-to-string x)) (ergoemacs map :key-hash) "_"))) + (ergoemacs-cache (intern (format "describe-keymap%s" (mapconcat (lambda(x) (md5 (format "%s" x))) (ergoemacs map :key-hash) "_"))) (concat "\n" (mapconcat (lambda(x) (ergoemacs-key-description--keymap-item x map)) ret "\n")) (defun ergoemacs-key-description--substitute-command-keys (string)
[elpa] externals/ergoemacs-mode 1421a65 06/87: Change how key prefixes are handled.
branch: externals/ergoemacs-mode commit 1421a65c51ff548bb53b8fad9ce2b7ae9fb98d62 Author: Fidler Commit: Fidler Change how key prefixes are handled. May fix issues #441 and #439 --- ergoemacs-command-loop.el | 56 +++ ergoemacs-mapkeymap.el| 12 +- ergoemacs-mode.el | 3 ++- 3 files changed, 55 insertions(+), 16 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index caa886a..5aa9301 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -308,10 +308,11 @@ with this function." This is called through `ergoemacs-command-loop'" (interactive) (cond - ;; ((not (ergoemacs :command-loop-p)) - ;; ;; Command loop hasn't started. - ;; (setq current-prefix-arg '(4)) - ;; (ergoemacs-command-loop nil type nil t)) + ((not (ergoemacs-command-loop-p)) +;; Command loop hasn't started. +(setq current-prefix-arg '(4)) +(setq ergoemacs-command-loop-start t) +(ergoemacs-command-loop nil (ergoemacs-command-loop--modal-p) nil t)) ((not current-prefix-arg) (setq current-prefix-arg '(4) ergoemacs-command-loop--universal t @@ -1040,7 +1041,7 @@ This sequence is compatible with `listify-key-sequence'." "Determine if `ergoemacs-mode' is running its command loop. This is done by looking at the current `backtrace' and making sure that `ergoemacs-command-loop--internal' hasn't been called." - (eq ergoemacs-last-command-event last-command-event)) + (eq (symbol-function 'this-command-keys) #'ergoemacs-command-loop--this-command-keys)) (defvar ergoemacs-command-loop-start nil) (defun ergoemacs-command-loop (&optional key type initial-key-type universal) @@ -1059,7 +1060,7 @@ argument. The true work is done in `ergoemacs-command-loop--internal'." (interactive) (cond - ((and ergoemacs-command-loop-start (not (ergoemacs-command-loop-p))) + ((and (or ergoemacs-command-loop-start key) (not (ergoemacs-command-loop-p))) ;; (ergoemacs-command-loop--message "Start ergoemacs-mode command loop." ) (ergoemacs-command-loop--internal key type initial-key-type universal)) (t @@ -1102,10 +1103,13 @@ appropriate value based on the COMMAND." (set (make-local-variable 'ergoemacs-command-loop--minibuffer-unsupported-p) t)) (ergoemacs-command-loop--minibuffer-supported-p))) -(defun ergoemacs-command-loop-full-p () - "Determines if the full command loop should be run." +(defun ergoemacs-command-loop-full-p (&optional type ) + "Determines if the full command loop should be run. + +TYPE is the type of command loop to check for. By default this +is the :full command loop." (and - (eq ergoemacs-command-loop-type :full) + (or (eq ergoemacs-command-loop-type (or type :full)) (ergoemacs :modal-p)) (ergoemacs-command-loop--minibuffer-supported-p) (catch 'excluded-variables (dolist (var ergoemacs-command-loop--excluded-variables) @@ -1114,6 +1118,40 @@ appropriate value based on the COMMAND." t) (not (memq major-mode ergoemacs-command-loop--excluded-major-modes +(defun ergoemacs-command-loop-prefix-timer-p () + "Determines if the command loop is run for a prefix timer." + (ergoemacs-command-loop-full-p :prefix-timer)) + +(defvar ergoemacs-command-loop--prefix-timer-polling-time 0.1 + "Timer for polling of prefix keys.") + +(defvar ergoemacs-command-loop--prefix-timer nil) + +(defun ergoemacs-command-loop--prefix-timer () + "Start prefix timer for ergoemacs-mode command loop." + (when (and (null ergoemacs-command-loop--prefix-timer) +(eq ergoemacs-command-loop-type :prefix-timer)) +(setq ergoemacs-command-loop--prefix-timer + (run-at-time t ergoemacs-command-loop--prefix-timer-polling-time #'ergoemacs-command-loop--start-for-prefix + +(defun ergoemacs-command-loop--stop-prefix-timer () + "Stop prefix timer for ergoemacs-mode command loop." + (when ergoemacs-command-loop--prefix-timer +(cancel-timer ergoemacs-command-loop--prefix-timer) +(setq ergoemacs-command-loop--prefix-timer nil))) + +(defun ergoemacs-command-loop--start-for-prefix () + "Start the ergoemacs command loop for the currently running prefix key." + (when (and (not (ergoemacs :modal-p)) +(ergoemacs-command-loop-prefix-timer-p) +(ergoemacs-keymapp (key-binding (this-single-command-keys))) + (not (ergoemacs-command-loop-p))) +(setq ergoemacs-command-loop-start t + ergoemacs-command-loop--single-command-keys (this-single-command-keys)) +(ergoemacs-command-loop ergoemacs-command-loop--single-command-keys))) + +(add-hook 'ergoemacs-mode-startup-hook #'ergoemacs-command-loop--start-for-prefix) + (defun ergoemacs-command-loop--start-with-pre-command-hook () "Start ergoemacs command loop. diff --git a/ergoemacs-mapkeymap.el b/ergoemacs-mapkeymap.el index f7c52cc..cb08017 100644 --- a/ergoemacs-mapkeymap.el +++ b/ergoemacs-mapkeymap.el
[elpa] externals/ergoemacs-mode 87fe85a 36/87: No longer try to ensure undo-tree and persistent-soft are installed
branch: externals/ergoemacs-mode commit 87fe85ac20a6ac32b41df5e7464d6ace5528445b Author: Fidler Commit: Fidler No longer try to ensure undo-tree and persistent-soft are installed Should Fix Issue #449 --- ergoemacs-themes.el | 15 ++- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index 0060453..b4a0873 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -48,12 +48,12 @@ (require 'advice) -(ergoemacs-package undo-tree -:ensure t -(global-undo-tree-mode 1)) +;; (ergoemacs-package undo-tree +;; :ensure t +;; (global-undo-tree-mode 1)) -(ergoemacs-package persistent-soft -:ensure t) +;; (ergoemacs-package persistent-soft +;; :ensure t) (ergoemacs-component standard-vars () "Enabled/changed variables/modes" @@ -242,6 +242,7 @@ (define-key undo-tree-map (kbd "M-_") nil) (global-set-key (kbd "C-S-z") '(redo undo-tree-redo ergoemacs-redo)) + (global-set-key (kbd "M-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "") 'ergoemacs-cut-line-or-region) (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) @@ -1129,6 +1130,10 @@ (global-set-key [remap locate] 'counsel-locate) ;; (global-set-key (kbd "C-S-o") 'counsel-rhythmbox) ;; (define-key read-expression-map (kbd "C-r") 'counsel-expression-history) +(define-key ivy-minibuffer-map (kbd "M-RET") 'ivy-alt-done) +;; (define-key ivy-minibuffer-map (kbd "C-RET") 'ivy-dispatching-done) +;; (define-key ivy-minibuffer-map (kbd "M-S-RET") 'ivy-immediate-done) +;; (define-key ivy-minibuffer-map [remap avy-goto-word-or-subword-1] 'ivy-avy) )) (ergoemacs-component ergoemacs-banish-shift ()
[elpa] externals/ergoemacs-mode f7a68f6 29/87: Add back Ctrl+Shift+c and Ctrl+Shift+x.
branch: externals/ergoemacs-mode commit f7a68f67aee3e390d0b595db4be8f5691f1ece00 Author: Fidler Commit: Fidler Add back Ctrl+Shift+c and Ctrl+Shift+x. - This should address issue #444 --- ergoemacs-advice.el | 2 +- ergoemacs-command-loop.el | 27 +++ ergoemacs-component.el| 1 + ergoemacs-translate.el| 40 +--- 4 files changed, 58 insertions(+), 12 deletions(-) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index 91d34da..31ef9c0 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -341,7 +341,7 @@ TYPE is the type of translation installed." current-prefix-arg (aref (substring keys (- i 1) i) 0)) ergoemacs-command-loop--history) (setq i (+ 1 i))) - (ergoemacs-command-loop keys nil nil nil ergoemacs-command-loop--history)) + (ergoemacs-command-loop--internal keys nil nil nil ergoemacs-command-loop--history)) (ding) (ergoemacs-command-loop--temp-message "%s does not do anything!" (ergoemacs-key-description (this-single-command-keys))) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index a8ba7d8..1f858e1 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -798,6 +798,9 @@ KEYS is the keys information" (push 'ergoemacs-timeout unread-command-events)) (setq ergoemacs-command--timeout-keys nil +(defvar ergoemacs-this-command-keys-shift-translated nil + "ergoemacs override of shift translation in command loop.") + (defun ergoemacs-command--echo-prefix () "Echos prefix keys in the ergoemacs-mode way." (let ((keys (this-single-command-keys)) @@ -815,7 +818,7 @@ KEYS is the keys information" ((eq ergoemacs-handle-ctl-c-or-ctl-x 'only-copy-cut) (push 'ergoemacs-timeout unread-command-events)) ((not (region-active-p))) ;; active - ((and this-command-keys-shift-translated + ((and (or ergoemacs-this-command-keys-shift-translated this-command-keys-shift-translated) (eq ergoemacs-handle-ctl-c-or-ctl-x 'both))) ((and (not ergoemacs-ctl-c-or-ctl-x-delay) ;; Immediate (eq ergoemacs-handle-ctl-c-or-ctl-x 'both)) @@ -823,8 +826,7 @@ KEYS is the keys information" (t (setq ergoemacs-command--timeout-keys keys ergoemacs-command--timeout-timer - (run-at-time t ergoemacs-ctl-c-or-ctl-x-delay #'ergoemacs-command--timer-timeout))) - )) + (run-at-time t ergoemacs-ctl-c-or-ctl-x-delay #'ergoemacs-command--timer-timeout) (unless unread-command-events (ergoemacs-command-loop--message "%s" (ergoemacs-command-loop--key-msg @@ -1570,7 +1572,8 @@ The RECORD-FLAG and KEYS are sent to `ergoemacs-command-loop--grow-interactive'. (ergoemacs-specials (ergoemacs-command-loop--grow-interactive command record-flag keys))) (t -(ergoemacs-command-loop--grow-interactive command record-flag keys +(ergoemacs-command-loop--grow-interactive command record-flag keys))) + (setq ergoemacs-this-command-keys-shift-translated nil)) (defun ergoemacs-command-loop-start () @@ -1823,7 +1826,8 @@ Emacs versions)." "Key sequence %s aborted by %s" (ergoemacs-key-description last-current-key) (ergoemacs-key-description raw-key)) -(setq quit-flag t)) +(setq quit-flag t + ergoemacs-this-command-keys-shift-translated nil)) ;; Handle local commands. ((and (or modal-p (not (equal current-key raw-key))) @@ -2130,7 +2134,7 @@ pressed the translated key by changing (ergoemacs-command-loop--sync-point) (let ((trials (ergoemacs-translate--trials key)) tmp tmp2 ret) -(setq this-command-keys-shift-translated nil) + (setq this-command-keys-shift-translated nil) (catch 'found-command (dolist (cur-key trials) (when cur-key @@ -2184,7 +2188,7 @@ pressed the translated key by changing ((< 1 (length ergoemacs-command-loop--history))) ((not (region-active-p))) ;; its a key sequence. - ((and this-command-keys-shift-translated + ((and (or ergoemacs-this-command-keys-shift-translated this-command-keys-shift-translated) (eq ergoemacs-handle-ctl-c-or-ctl-x 'both))) ;; Immediate @@ -2307,7 +2311,14 @@ For instance in QWERTY M-> is shift translated to M-." (setq ergoemacs-command-loop--single-command-keys nil) ;; (ergoemacs-command-loop--spinner-end) )) - +(defun ergoemacs-command-loop--shift-timeout () + "This is the
[elpa] externals/ergoemacs-mode 07ef724 22/87: Change ergoemacs-override-keymap key bindings.
branch: externals/ergoemacs-mode commit 07ef724db5e3fe43a15a6a8241ad40dd642bb855 Author: Fidler Commit: Fidler Change ergoemacs-override-keymap key bindings. --- ergoemacs-map-properties.el | 2 +- ergoemacs-mode.el | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index 248a033..dde51f4 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -1317,7 +1317,7 @@ will unbind ergoemacs keys. (ergoemacs keymap :use-local-unbind-list-key local-unbind-list-p (t nil) -(defvar ergoemacs-map-properties--set-map-list '(isearch-mode-map) +(defvar ergoemacs-map-properties--set-map-list '(isearch-mode-map ergoemacs-override-keymap) "`ergoemacs-mode' modified maps. This is a list of maps that `ergoemacs-mode' modifies directly.") diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el index d34cc0b..880eafe 100644 --- a/ergoemacs-mode.el +++ b/ergoemacs-mode.el @@ -724,9 +724,7 @@ SYMBOL is the symbol to set, NEW-VALUE is it's value." (add-hook 'ergoemacs-mode-shudown-hook 'ergoemacs-setup-override-keymap) - ;;; Frequently used commands as aliases - (defcustom ergoemacs-use-aliases t "Use aliases defined by `ergoemacs-aliases'.
[elpa] externals/ergoemacs-mode 59235bb 12/87: Allow ergoemacs-mode to handle ending keys
branch: externals/ergoemacs-mode commit 59235bbe24a98d8b674776b3ba4f617d2c70313f Author: Fidler Commit: Fidler Allow ergoemacs-mode to handle ending keys --- ergoemacs-advice.el | 19 +++ 1 file changed, 19 insertions(+) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index 798aecb..de3453c 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -320,6 +320,25 @@ command selected, instead of rerunning `smex' and :type :before (setq ergoemacs-command-loop--single-command-keys nil)) +(ergoemacs-advice undefined () + "Allow `ergoemacs-mode' to display keys, and intercept ending keys." + :type :around + (if (not ergoemacs-mode) + ad-do-it +(let ((keys (this-single-command-keys))) + (if (member (substring keys -1) '([apps] [menu])) + (ergoemacs-command-loop keys) + (ding) +(ergoemacs-command-loop--temp-message "%s is undefined!" + (ergoemacs-key-description (this-single-command-keys))) +(setq defining-kbd-macro nil) +(force-mode-line-update) +;; If this is a down-mouse event, don't reset prefix-arg; +;; pass it to the command run by the up event. + (setq prefix-arg + (when (memq 'down (event-modifiers last-command-event)) +current-prefix-arg)) + (provide 'ergoemacs-advice) ;; ;;; ergoemacs-advice.el ends here
[elpa] externals/ergoemacs-mode 59cb758 08/87: Change to an idle timer for more stability
branch: externals/ergoemacs-mode commit 59cb758453e677a4c5c4c1f039ca112c9eb34649 Author: Fidler Commit: Fidler Change to an idle timer for more stability --- ergoemacs-command-loop.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 5f3ee1d..27f468a 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1132,7 +1132,7 @@ is the :full command loop." (when (and (null ergoemacs-command-loop--prefix-timer) (eq ergoemacs-command-loop-type :prefix-timer)) (setq ergoemacs-command-loop--prefix-timer - (run-at-time t ergoemacs-command-loop--prefix-timer-polling-time #'ergoemacs-command-loop--start-for-prefix + (run-with-idle-timer ergoemacs-command-loop--prefix-timer-polling-time t #'ergoemacs-command-loop--start-for-prefix (defun ergoemacs-command-loop--stop-prefix-timer () "Stop prefix timer for ergoemacs-mode command loop."
[elpa] externals/ergoemacs-mode f5aa0f7 63/87: Merge pull request #496 from wlandry/command_loop
branch: externals/ergoemacs-mode commit f5aa0f7b9150b2387769b15362d05178189e2630 Merge: 67e8c66 131b3fb Author: Matthew Fidler Commit: GitHub Merge pull request #496 from wlandry/command_loop Fix command-loop errors --- ergoemacs-mapkeymap.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ergoemacs-mapkeymap.el b/ergoemacs-mapkeymap.el index cb08017..199329e 100644 --- a/ergoemacs-mapkeymap.el +++ b/ergoemacs-mapkeymap.el @@ -194,7 +194,9 @@ them to be masked when mapping over the keymap." (cond ((consp event) (ergoemacs-map-set-char-table-range -(or (and prefix (lookup-key flat-keymap prefix)) +(or (and prefix + (let ((prefix-lookup (lookup-key flat-keymap prefix))) + (if (listp prefix-lookup) prefix-lookup))) flat-keymap) event item)) (t (define-key flat-keymap key item)
[elpa] externals/ergoemacs-mode e79d33c 28/87: Rename ergoemacs-swiper to swiper. Issue #445
branch: externals/ergoemacs-mode commit e79d33c7210be4e262f810231cd908c77e92edef Author: Fidler Commit: Fidler Rename ergoemacs-swiper to swiper. Issue #445 --- ergoemacs-themes.el | 7 +-- 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index 7ac044a..0060453 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -244,7 +244,6 @@ (global-set-key (kbd "C-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "") 'ergoemacs-cut-line-or-region) (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) - (global-set-key (kbd "C-S-c") ("C-c" :normal)) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "C-S-v") 'ergoemacs-paste-cycle) @@ -326,7 +325,6 @@ (global-set-key (kbd "C-x k") nil) (global-set-key (kbd "C-w") 'ergoemacs-close-current-buffer) (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) - (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "C-x C-b") 'ibuffer) (global-set-key (kbd "C-y") '(redo undo-tree-redo ergoemacs-redo) "↷ redo") @@ -688,7 +686,6 @@ ;; Fixed Component; Note that is the actual function. (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) - (global-set-key (kbd "C-S-c") ("C-c" :normal)) (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "C-z") 'undo) @@ -1112,7 +1109,7 @@ (global-set-key [remap ergoemacs-print-buffer-confirm] 'pr-interface))) -(ergoemacs-component ergoemacs-swiper () +(ergoemacs-component swiper () "Swiper component" (when ivy-mode (setq ivy-use-virtual-buffers t) @@ -1879,9 +1876,7 @@ (ergoemacs-theme lvl0 () "CUA-mode style" (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) - (global-set-key (kbd "C-S-c") ("C-c" :normal)) (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) - (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "C-S-v") 'ergoemacs-paste-cycle)
[elpa] externals/ergoemacs-mode 27c6245 05/87: Remove helm-do-grep. Its no longer found in helm
branch: externals/ergoemacs-mode commit 27c624527aae0f3c285205fad5518f470efe2039 Author: Fidler Commit: Fidler Remove helm-do-grep. Its no longer found in helm --- ergoemacs-themes.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index 9b43609..355843f 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -1028,7 +1028,7 @@ (ergoemacs-component helm-remaps () "Remaps for helm-mode" (when helm-mode -(global-set-key [remap grep] 'helm-do-grep) +;; (global-set-key [remap grep] 'helm-do-grep) ;; Removed grep https://github.com/emacs-helm/helm/issues/1377 (global-set-key [remap execute-extended-command] 'helm-M-x) (global-set-key [remap switch-to-buffer] 'helm-mini) (global-set-key [remap find-file] 'helm-find-files)
[elpa] externals/ergoemacs-mode b4b5241 30/87: Add back ergoemacs-style shift-translation
branch: externals/ergoemacs-mode commit b4b5241e679cc1a7bd7b1f3703f1a7ce602cd1f6 Author: Fidler Commit: Fidler Add back ergoemacs-style shift-translation M-> translates to M-. in colemak to allow reduction to have shift-selection style on ergoemacs-keys --- ergoemacs-advice.el | 6 ++ ergoemacs-command-loop.el | 13 - ergoemacs-translate.el| 21 - 3 files changed, 38 insertions(+), 2 deletions(-) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index 31ef9c0..0ba3770 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -360,6 +360,12 @@ TYPE is the type of translation installed." ad-do-it (ergoemacs-mode--undefined-advice))) +(ergoemacs-advice handle-shift-selection () + "Allow `ergoemacs-mode' to do shift selection on keys like Alt+# to Alt+3." + :type :before + (when (eq 'ergoemacs-command-loop--shift-translate (key-binding (this-single-command-keys))) +(setq this-command-keys-shift-translated t))) + (provide 'ergoemacs-advice) ;; ;;; ergoemacs-advice.el ends here diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 1f858e1..7cc5197 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1556,7 +1556,8 @@ needed (and resotre them to the original values)." "Call the COMMAND interactively. Also handle mouse events (if possible.) The RECORD-FLAG and KEYS are sent to `ergoemacs-command-loop--grow-interactive'." (ergoemacs-command-loop--sync-point) - (setq ergoemacs-last-command-was-ergoemacs-ignore-p nil) + (setq ergoemacs-last-command-was-ergoemacs-ignore-p nil + this-command-keys-shift-translated (or ergoemacs-this-command-keys-shift-translated this-command-keys-shift-translated)) (cond ((and (eventp last-command-event) (consp last-command-event) @@ -2319,6 +2320,16 @@ For instance in QWERTY M-> is shift translated to M-." (setq unread-command-events (append (ergoemacs-translate--emacs-shift shift-trans) '(ergoemacs-timeout))) (setq ergoemacs-this-command-keys-shift-translated t) (ergoemacs-command-loop--internal shift-trans + +(defun ergoemacs-command-loop--shift-translate () + "Shift translation." + (interactive) + (let ((shift-trans (ergoemacs-translate--emacs-shift (this-single-command-keys) 'ergoemacs-shift))) +(message "%s->%s" (key-description (this-single-command-keys)) +(key-description shift-trans)) +(setq ergoemacs-this-command-keys-shift-translated t + this-command-keys-shift-translated t) +(ergoemacs-command-loop--call-interactively (key-binding shift-trans (provide 'ergoemacs-command-loop) ;; ;;; ergoemacs-command-loop.el ends here diff --git a/ergoemacs-translate.el b/ergoemacs-translate.el index 6931f8c..7d66cd8 100644 --- a/ergoemacs-translate.el +++ b/ergoemacs-translate.el @@ -232,6 +232,24 @@ If no changes are performed, return nil." (setq ret new-key)) ret))) +(defun ergoemacs-translate--ergoemacs-shift-select (key) + "Translate KEY to allow `ergoemacs-mode' shift translation. + +This will shift translate Alt+# to Alt+3." + (let (modifiers basic) +(when (and (vectorp key) + ;; only makes sense for single key combinations. + (= (length key) 1) + ;; Doesn't make sense if shifted... + (not (or (memq 'shift (setq modifiers (ergoemacs-translate--event-modifiers (aref key 0 +(memq 'ergoemacs-shift modifiers))) + ;; Only define if emacs doesn't handle shift selection. + (not (eq (event-convert-list (list 'shift (setq basic (event-basic-type (aref key 0) + (ergoemacs-translate--event-convert-list (list 'ergoemacs-shift basic) + (setq ergoemacs-translate--define-key-if-defined-p nil +ergoemacs-translate--define-key-replacement-function 'ergoemacs-command-loop--shift-translate) + (vector (ergoemacs-translate--event-convert-list (append modifiers (list 'ergoemacs-shift basic))) + (defun ergoemacs-translate--ergoemacs-timeout (key) "Translates KEY to allow Shift translation to default to key sequence. @@ -270,7 +288,8 @@ If no chanegs are performed, return nil." ergoemacs-translate--swap-menu ergoemacs-translate--to-string ergoemacs-translate--to-vector -ergoemacs-translate--ergoemacs-timeout) +ergoemacs-translate--ergoemacs-timeout +ergoemacs-translate--ergoemacs-shift-select) "Functions to apply to key. These functions take a key as an argument and translate it in
[elpa] externals/ergoemacs-mode 9acd205 34/87: Fix Issue #451 by coding a new old binding function
branch: externals/ergoemacs-mode commit 9acd2057fafe96ff7937e877f2d6edd04cc05dfe Author: Fidler Commit: Fidler Fix Issue #451 by coding a new old binding function --- ergoemacs-functions.el | 21 ++ ergoemacs-map.el | 173 + 2 files changed, 108 insertions(+), 86 deletions(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 4516828..9edc59b 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -2730,6 +2730,27 @@ With a prefix argument like \\[universial-argument] in an (unless (fboundp 'ergoemacs-test) (autoload 'ergoemacs-test (expand-file-name "ergoemacs-test.el" ergoemacs-dir) nil t)) +(defun ergoemacs-where-is-old-binding () + "Find where the old binding of a key is now located." + (interactive) + (let (ergoemacs-mode +key-seq + cmd +key-seq2) +(unwind-protect +(progn + (setq overriding-terminal-local-map (ergoemacs :original global-map)) + (setq key-seq (read-key-sequence "Old Emacs Command: ") +cmd (key-binding key-seq) +overriding-terminal-local-map nil +key-seq2 (where-is-internal cmd nil t))) + (setq overriding-terminal-local-map nil)) +(message "%s; %s" key-seq key-seq2) +(if key-seq2 +(message "Old Emacs Key: %s-> Ergoemacs Key: %s" (ergoemacs-key-description key-seq) + (ergoemacs-key-description key-seq2)) + (message "Could not find old emacs %s" (ergoemacs-key-description key-seq) + (provide 'ergoemacs-functions) ;; ;;; ergoemacs-functions.el ends here diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 4c8cc2a..c2a77a7 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -953,92 +953,93 @@ If it is a tranisent map, assign the :dont-modify-p property to t." "Modifies Active maps. When INI is non-nil, add conditional maps to `minor-mode-map-alist'." - (let ((char-map (get-char-property-and-overlay (point) 'keymap)) -(local-map (get-text-property (point) 'local-map)) -(current-local-map (current-local-map)) -tmp) -(when (and overriding-terminal-local-map - (not (eq overriding-terminal-local-map ergoemacs-map--modify-active-last-overriding-terminal-local-map)) - (not (ergoemacs overriding-terminal-local-map :installed-p)) - (not (memq 'add-keymap-witness overriding-terminal-local-map))) - ;; (ergoemacs-map--temporary-map-properties overriding-terminal-local-map) - (setq overriding-terminal-local-map (ergoemacs overriding-terminal-local-map))) - -(when (and overriding-local-map - (not (eq overriding-local-map ergoemacs-map--modify-active-last-overriding-local-map)) - (not (ergoemacs overriding-local-map :installed-p))) - ;; (ergoemacs-map--temporary-map-properties overriding-local-map) - (setq overriding-local-map (ergoemacs overriding-local-map))) - -(ergoemacs-save-buffer-state - (when (and char-map (symbolp char-map)) - (setq char-map (ergoemacs-sv char-map))) - (when (and (listp char-map) - (car char-map) -(not (eq (car char-map) ergoemacs-map--modify-active-last-char-map)) -(not (ergoemacs (car char-map) :installed-p))) - (cond -((cdr char-map) - ;; Overlay - (overlay-put (cdr char-map) 'keymap (ergoemacs (car char-map -(t ;; Text Property - (put-text-property (previous-single-char-property-change (point) 'keymap) -(next-single-char-property-change (point) 'keymap) -'keymap -(ergoemacs (car char-map)) - (when (and local-map (symbolp local-map)) - (setq local-map (ergoemacs-sv local-map))) - (when (and local-map -(not (eq local-map ergoemacs-map--modify-active-last-local-map)) -(not (ergoemacs local-map :installed-p))) - (put-text-property (previous-single-char-property-change (point) 'local-map) - (next-single-char-property-change (point) 'local-map) - 'local-map (ergoemacs local-map))) - ;; Save before any changes happen (ie in calc) - (when (and (not ergoemacs-map--saved-global-map) -(ergoemacs :ignore-global-changes-p)) - (setq ergoemacs-map--saved-global-map (copy-keymap global-map))) - ;; Restore outside of modes that change the global map (calc) - (when (and ergoemacs-map--saved-global-map -(not (ergoemacs :ignore-global-changes-p))) - (setq global-map (copy-keymap ergoemacs-map--saved-global-map) - ergoemacs-map--saved-global-map nil) - (use-global-map global-map)) - (when (and (setq tmp (current-global-map)) -(ergoemacs
[elpa] externals/ergoemacs-mode eaf2812 79/87: Suppress more warnings
branch: externals/ergoemacs-mode commit eaf281275311bea197df0b38ffed9c05add4c4f9 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Suppress more warnings --- ergoemacs-layouts.el | 14 -- ergoemacs-map.el | 5 ++--- 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/ergoemacs-layouts.el b/ergoemacs-layouts.el index dc3f913..db39808 100644 --- a/ergoemacs-layouts.el +++ b/ergoemacs-layouts.el @@ -69,6 +69,7 @@ ;; From Baptiste Fouques ;; changed to bepo because it breaks how I run things (unfortunately)... +(defvaralias 'ergoemacs-layout-bépo 'ergoemacs-layout-bepo) (defvar ergoemacs-layout-bepo '("" "$" "\"" "«" "»" "(" ")" "@" "+" "-" "/" "*" "=" "%" "" "" "" "b" "é" "p" "o" "è" "^" "v" "d" "l" "j" "z" "w" "" @@ -95,7 +96,6 @@ "" ">" "W" "X" "C" "V" "B" "N" "?" "." "/" "+" "" "" "") "Belgian AZERTY.") -(defvaralias 'ergoemacs-layout-bépo 'ergoemacs-layout-bepo) (defvar ergoemacs-layout-colemak '("" "`" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "-" "=" "" @@ -122,6 +122,7 @@ "Danish layout.") ;; From Thomas Rikl +(defvaralias 'ergoemacs-layout-ge 'ergoemacs-layout-de) (defvar ergoemacs-layout-de '("" "" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "ß" "" "" "" "" "q" "w" "e" "r" "t" "z" "u" "i" "o" "p" "ü" "+" "" @@ -146,6 +147,7 @@ "" "" "K" "Y" "Ö" "Ä" "Q" "J" "G" "W" "V" "Z" "" "" "") "German BU-TECK Layout. URL `http://www.adnw.de'.") +(defvaralias 'ergoemacs-layout-us_dvorak 'ergoemacs-layout-dv) (defvar ergoemacs-layout-dv '("" "`" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "[" "]" "" "" "" "'" "," "." "p" "y" "f" "g" "c" "r" "l" "/" "=" "\\" @@ -182,6 +184,8 @@ "" "" "Z" "Ĉ" "C" "V" "B" "N" "M" ";" ":" "?" "" "" "") "Esperanto (displaced semicolon and quote, obsolete) layout.") +(defvaralias 'ergoemacs-layout-sp 'ergoemacs-layout-es) + (defvar ergoemacs-layout-es '("" "°" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "'" "¡" "" "" "" "q" "w" "e" "r" "t" "y" "u" "i" "o" "p" "`" "+" "" @@ -255,7 +259,6 @@ "" "|" ":" "Q" "J" "K" "X" "B" "M" "W" "V" "Z" "" "" "") "UK Dvorak layout.") -(defvaralias 'ergoemacs-layout-ge 'ergoemacs-layout-de) (defvar ergoemacs-layout-it '("" "\\" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "'" "¡" "" @@ -293,6 +296,7 @@ "" ">" "Z" "X" "C" "V" "B" "N" "M" ";" ":" "_" "" "" "") "Norwegian layout.") + (defvar ergoemacs-layout-programmer-dv '("" "$" "&" "[" "{" "}" "(" "=" "*" ")" "+" "]" "!" "#" "" "" "" ";" "," "." "p" "y" "f" "g" "c" "r" "l" "/" "@" "\\" @@ -317,7 +321,6 @@ "" "»" "Y" "Ç" "J" "B" "K" "Q" "V" "G" "F" "Z" "" "" "") "PT Nativo layout URL `http://xahlee.info/kbd/pt-nativo_keyboard_layout.html'.") -(defvaralias 'ergoemacs-layout-sp 'ergoemacs-layout-es) (defvar ergoemacs-layout-sw '("" "½" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "+" "’" "" @@ -343,8 +346,6 @@ "" "" "Z" "X" "C" "V" "B" "N" "M" "<" ">" "?" "" "" "") "US English QWERTY layout.") -(defvaralias 'ergoemacs-layout-us_dvorak 'ergoemacs-layout-dv) - (defvar ergoemacs-layout-workman '("" "`" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "-" "=" "" "" "" "q" "d" "r" "w" "b" "j" "f" "u" "p" ";" "[" "]" "\\" @@ -369,6 +370,8 @@ "" "" "Z" "X" "M" "C" "V" "K" "L" "<" ">" "?" "" "" "") "US Workman layout. URL `http://www.workmanlayout.com/blog/'.") +(defvaralias 'ergoemacs-layout-jcuken 'ergoemacs-layout-ru) + (defvar ergoemacs-layout-ru '("" "" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "-" "=" "\\" "" "" "й" "ц" "у" "к" "е" "н" "г" "ш" "щ" "з" "х" "ъ" "" @@ -381,7 +384,6 @@ "" "" "Я" "Ч" "С" "М" "И" "Т" "Ь" "Б" "Ю" "," "" "" "") "Russian/Cryllic jcuken layout.") -(defvaralias 'ergoemacs-layout-jcuken 'ergoemacs-layout-ru) (require 'help-mode) (defvar quail-keyboard-layout-alist) diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 8702952..4ae7c22 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -60,6 +60,7 @@ (defvar ergoemacs-mode--fast-p) (defvar ergoemacs-remap-ignore) (defvar ergoemacs-component-struct--composed-hook-minibuffer) +(defvar term-raw-map) (declare-function ergoemacs-timing-- "ergoemacs-mode") @@ -1027,9 +1028,7 @@ When INI is non-nil, add conditional maps to `minor-mode-map-alist'." (if (not (eq major-mode 'term-mode)) (use-local-map (ergoemacs current-local-map)) (progn - (setq term-raw-map (ergoemacs term-raw-map)) - (use-local-map term-raw-map)) - ) + (use-local-map (ergoemacs term-raw-map (setq ergoemacs-map--breadcrumb "")) (when (and (minibufferp) ergoemacs-read-from-minibuffer-map) ;; Preserve bindings for space, such as when completing a filename
[elpa] externals/ergoemacs-mode 981ffb3 21/87: Fix Issue #437
branch: externals/ergoemacs-mode commit 981ffb305f4b62450dc8cd99ae6c4648cdf0a4d0 Author: Fidler Commit: Fidler Fix Issue #437 --- ergoemacs-mode.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el index 546d70d..d34cc0b 100644 --- a/ergoemacs-mode.el +++ b/ergoemacs-mode.el @@ -706,6 +706,8 @@ SYMBOL is the symbol to set, NEW-VALUE is it's value." (defvar ergoemacs-override-keymap (make-sparse-keymap) "ErgoEmacs override keymap.") +(ergoemacs :label ergoemacs-override-keymap) + (defvar ergoemacs-override-alist nil "ErgoEmacs override keymaps.")
[elpa] externals/ergoemacs-mode 3ce23bb 49/87: Merge branch 'master' of github.com:ergoemacs/ergoemacs-mode
branch: externals/ergoemacs-mode commit 3ce23bba3cb50562693860f87f3528c471d603ba Merge: dfb5a43 6231ee0 Author: Fidler Commit: Fidler Merge branch 'master' of github.com:ergoemacs/ergoemacs-mode --- ergoemacs-functions.el | 2 +- ergoemacs-map-properties.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 9edc59b..83ffe5c 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -2367,7 +2367,7 @@ exists and opens it in emacs, if possible." ;; Tilde (ñãõÑÃÕ) (?\361 . ?n)(?\343 . ?a)(?\365 . ?o)(?\321 . ?N)(?\303 . ?A)(?\325 . ?O) (?\337 . "ss") ; S-zed (Beta) (ß) -(?\253 . ?")(?\273 . ?"); Guillemets -> double quotes («») +(?\253 . ?\")(?\273 . ?\") ; Guillemets -> double quotes («») (?\346 . "ae")(?\306 . "AE"); ae, AE (æÆ) (?\370 . ?o)(?\330 . ?O); Slashed O (øØ) (?\260 . ?@)(?\345 . ?a)(?\305 . ?A) ; Angstrom (degree) (°åÅ) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index 93bc19e..87f4d0d 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -651,7 +651,7 @@ These keymaps are saved in `ergoemacs-map-properties--hook-map-hash'." (ergoemacs-timing ergoemacs-create-global (let* ((emacs-exe (ergoemacs-emacs-exe)) (default-directory (expand-file-name (file-name-directory (locate-library "ergoemacs-mode" - (cmd (format "%s -L %s --batch --load \"ergoemacs-mode\" -Q --eval \"(ergoemacs-map-properties--default-global-gen) (kill-emacs)\"" emacs-exe default-directory))) + (cmd (format "%s -L %s --batch --load \"ergoemacs-mode\" -Q --eval \"(progn (ergoemacs-map-properties--default-global-gen) (kill-emacs))\"" emacs-exe default-directory))) (message "%s" (shell-command-to-string cmd)) (ergoemacs-map-properties--get-original-global-map
[elpa] externals/ergoemacs-mode 5a7c4c6 20/87: Test for Issue #437
branch: externals/ergoemacs-mode commit 5a7c4c664ff991d6c983bb6e6afda2650651ce1c Author: Fidler Commit: Fidler Test for Issue #437 --- ergoemacs-test.el | 53 + 1 file changed, 49 insertions(+), 4 deletions(-) diff --git a/ergoemacs-test.el b/ergoemacs-test.el index b0680dd..2682d43 100644 --- a/ergoemacs-test.el +++ b/ergoemacs-test.el @@ -1,6 +1,6 @@ ;;; ergoemacs-test.el --- tests for ErgoEmacs issues -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2016 Free Software Foundation, Inc. ;; Maintainer: Matthew L. Fidler ;; Keywords: convenience @@ -895,8 +895,8 @@ Should test issue #142" (kill-buffer (current-buffer))) (setq input-decode-map (copy-keymap old-map))) (should ret))) -;;; Key inheritance +;;; Key inheritance (ert-deftest ergoemacs-key-inheitance-alt-up-and-down () "Test M-up and M-down keys make sure they are moving lines" (ergoemacs-require 'move-and-transpose-lines) @@ -1365,6 +1365,48 @@ Should test issue #142" (when (file-exists-p w-file) (delete-file w-file +(ert-deftest ergoemacs-test-issue-437 () + "Test windmove bindings should be set everywhere." + :tags '(:slow) + (let* ((emacs-exe (ergoemacs-emacs-exe)) + (w-file (expand-file-name "global-test" ergoemacs-dir)) + (temp-file (make-temp-file "ergoemacs-test" nil ".el"))) +(with-temp-file temp-file + (insert "(eval-when-compile (require 'ergoemacs-macros) (require 'cl))" + (or (and (boundp 'wait-for-me) + "(setq debug-on-error t debug-on-quit t)") "") + "(ergoemacs-package foo \n" + ":bind* ((\"\" . windmove-left)" + "(\"\" . windmove-right)" + "(\"\" . windmove-up)" + "(\"\" . windmove-down)))" + "(setq ergoemacs-mode--start-p t)" + "(ergoemacs-mode 1)\n" + "(when (and (eq (key-binding (kbd \"\")) 'windmove-left)\n" + " (eq (key-binding (kbd \"\")) 'windmove-right)\n" + " (eq (key-binding (kbd \"\")) 'windmove-up)\n" + " (eq (key-binding (kbd \"\")) 'windmove-down))\n" + "(with-temp-file \"" w-file "\")\n" + " (message \"Passed\")" + " (insert \"Found\"))\n" + (or (and (boundp 'wait-for-me) "") + "(kill-emacs)"))) +(byte-compile-file temp-file) +(message "%s" + (shell-command-to-string + (format "%s %s -Q -L %s -l %s -l %s" + emacs-exe (if (boundp 'wait-for-me) "-debug-init" "--batch") + (expand-file-name (file-name-directory (locate-library "ergoemacs-mode"))) + (expand-file-name (file-name-sans-extension (locate-library "ergoemacs-mode"))) + temp-file))) +(should (file-exists-p w-file)) +(when (file-exists-p temp-file) + (delete-file temp-file)) +(when (file-exists-p (concat temp-file "c")) + (delete-file (concat temp-file "c"))) +(when (file-exists-p w-file) + (delete-file w-file + ;;; Not sure why this doesn't actually use `ergoemacs-test-major-mode-map'. (define-derived-mode ergoemacs-test-major-mode fundamental-mode "ET" "Major mode for testing some issues with `ergoemacs-mode'. @@ -1779,8 +1821,10 @@ hash appropriaetly." (lambda() (throw 'found-key (mapcar (lambda(key) (if (consp key) (key-binding (eval key)) - (key-binding key))) ',keys) -,minibuffer-call) nil)) + (key-binding key))) + ',keys) +,minibuffer-call) + nil)) (ert-deftest ergoemacs-test-icy-407-minibuffer () "Test minibuffer keybindings for `icy-mode'. @@ -1800,6 +1844,7 @@ M-r = `kill-word'" '(previous-history-element next-history-element forward-word ergoemacs-move-cursor-next-pane kill-word) (icy-mode -1)) + (provide 'ergoemacs-test) ;; ;;; ergoemacs-test.el ends here
[elpa] externals/ergoemacs-mode fad3ed1 56/87: Fixed not removing visible selection when ergoemacs-keep-region-after-copy is set to true.
branch: externals/ergoemacs-mode commit fad3ed1602230cf68844e48f9d96c8f1d4910b19 Author: Sławomir Wójcik Commit: Sławomir Wójcik Fixed not removing visible selection when ergoemacs-keep-region-after-copy is set to true. --- ergoemacs-functions.el | 10 +- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 83ffe5c..a275253 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -404,6 +404,11 @@ If `narrow-to-region' is in effect, then cut that region only." :type 'boolean :group 'ergoemacs-mode) +(defun ergoemacs--keep-active () + (when (mark t) +(setq mark-active t + deactivate-mark nil))) + (defun ergoemacs-copy-line-or-region (&optional arg) "Copy current line, or current text selection. Pass prefix ARG to the respective copy functions." @@ -434,7 +439,10 @@ Pass prefix ARG to the respective copy functions." (call-interactively 'move-end-of-line))) (re-search-forward "\\=\n" nil t) ;; Include newline (point) - (unless ergoemacs-keep-region-after-copy + ;; (unless ergoemacs-keep-region-after-copy + ;; (deactivate-mark))) + (if ergoemacs-keep-region-after-copy + (ergoemacs--keep-active) (deactivate-mark))) (defun ergoemacs-cut-line-or-region (&optional arg)
[elpa] externals/ergoemacs-mode 3e6fea9 41/87: Possibly fix #453
branch: externals/ergoemacs-mode commit 3e6fea941af18415b520f2fabc45349c4a148a8f Author: Fidler Commit: Fidler Possibly fix #453 --- ergoemacs-component.el | 18 +- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/ergoemacs-component.el b/ergoemacs-component.el index 412f8ba..ed4a9d4 100644 --- a/ergoemacs-component.el +++ b/ergoemacs-component.el @@ -837,6 +837,9 @@ LAYOUT is the current keyboard layout. Defaults to (ergoemacs-component-struct-cond-maps obj)) hash + +(defvar ergoemacs-component-struct--unbound-maps nil) + (defun ergoemacs-component-struct--minor-mode-map-alist (&optional obj) "Get the ending maps for `minor-mode-map-alist' using the ergoemacs structures OBJ." (let (ret map parent) @@ -846,10 +849,23 @@ LAYOUT is the current keyboard layout. Defaults to map (make-sparse-keymap)) (ergoemacs map :label (list 'cond-map key (intern ergoemacs-keyboard-layout))) (set-keymap-parent map parent) - (push (cons key map) ret)) + (if (boundp key) + (push (cons key map) ret) + (push (cons key map) ergoemacs-component-struct--unbound-maps))) (ergoemacs-component-struct--minor-mode-map-alist-hash obj)) ret)) +(defun ergoemacs-component-struct--add-unbound (&rest _ignore) + "Add recently bound variables to `minor-mode-map-alist'." + (let (new) +(dolist (elt ergoemacs-component-struct--unbound-maps) + (if (boundp (car elt)) + (push elt minor-mode-map-alist) +(push elt new))) +(setq ergoemacs-component-struct--unbound-maps new))) + +(add-hook 'ergoemacs-mode-after-load-hook 'ergoemacs-component-struct--add-unbound) + (defun ergoemacs-component-struct--hooks (&optional obj ret) "Gets a list of hooks that need to be defined eor OBJ.
[elpa] externals/ergoemacs-mode 4710b5f 14/87: Fix eating of the variable
branch: externals/ergoemacs-mode commit 4710b5f883c4fcd4aeb862d8bfd8fc5ba7aa Author: Fidler Commit: Fidler Fix eating of the variable --- ergoemacs-command-loop.el | 1 - 1 file changed, 1 deletion(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 47ea3e6..43aa902 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1165,7 +1165,6 @@ is the :full command loop." unread-command-events ergoemacs-command-loop--eat-unread ergoemacs-command-loop--eat-unread nil) (ergoemacs-command-loop--prefix-timer - (define-key map ergoemacs-command-loop--eat fn) (define-key map [eroemacs-eat] fn) (define-key map (vconcat ergoemacs-command-loop--eat [eroemacs-eat]) fn) (setq overriding-terminal-local-map map
[elpa] externals/ergoemacs-mode 8ea44c2 18/87: Bug fix for modifiers
branch: externals/ergoemacs-mode commit 8ea44c2a806f439eaa806905012cc2c10bc6adfe Author: Fidler Commit: Fidler Bug fix for modifiers --- ergoemacs-translate.el | 1 + 1 file changed, 1 insertion(+) diff --git a/ergoemacs-translate.el b/ergoemacs-translate.el index d8e3b60..cf9272d 100644 --- a/ergoemacs-translate.el +++ b/ergoemacs-translate.el @@ -316,6 +316,7 @@ LAYOUT is the keyboard layout." ;; Add 'ergoemacs-gui to the modifiers (when (and (symbolp event) (setq tmp (symbol-name event)) + (>= (length tmp) 2) (char-equal (aref (substring tmp -2 -1) 0) ?-) (memq (aref (substring tmp -1) 0) (list ?\[ ?i ?m)))
[elpa] externals/ergoemacs-mode 4a6ba06 55/87: Merge pull request #488 from marlonrichert/macos
branch: externals/ergoemacs-mode commit 4a6ba06d9c618e9380d059fa25ed677b45d134a7 Merge: 7d36565 dc2f666 Author: Matthew Fidler Commit: GitHub Merge pull request #488 from marlonrichert/macos Add info on how to get system-wide Ergoemacs bindings in macOS --- ergoemacs-mode.info | 106 +--- 1 file changed, 76 insertions(+), 30 deletions(-) diff --git a/ergoemacs-mode.info b/ergoemacs-mode.info index 32e637f..da0e500 100644 --- a/ergoemacs-mode.info +++ b/ergoemacs-mode.info @@ -379,7 +379,14 @@ anything that enters the minibuffer removes the movement mode. - Any undefined key in the keymap (like 1) would exit the mode and insert the character - Shift and the key is the unshifted command. Therefore [Menu] [i] [i] [Shift+k] would be Page Up followed by down one -character. ## Layouts Supported ## Tips for adopting ErgoEmacs +character. + +1.5 Layouts Supported += + +1.6 Tips for adopting ErgoEmacs +=== + Keybindings If you are a long time emacs user, you may find it painful to adopt this setup. @@ -390,7 +397,7 @@ changing muscle memory. File: ergoemacs-mode.info, Node: Where Did My Command Go?, Next: Shortcut To Open Cheatsheet, Prev: Ergoemacs Key Chord Reduction, Up: Banish Key Chords -1.4.4 Where Did My Command Go? +1.6.1 Where Did My Command Go? -- The ergonomic-mode minor mode features the command @@ -401,16 +408,24 @@ Emacs, and the new shortcut for it under ErgoEmacs?. File: ergoemacs-mode.info, Node: Shortcut To Open Cheatsheet, Prev: Where Did My Command Go?, Up: Banish Key Chords -1.4.5 Shortcut To Open Cheatsheet +1.6.2 Shortcut To Open Cheatsheet - You can open a cheatsheet by pressing [Control+h] [']. On the first run, this will create a svg and (possibly) create a png based on the svg (if `ergoemacs-inkscape' points to the inkscape executable). Once these are created, the cheatsheet will be opened displaying all the -keys based on your layout. ### Gradual Adoption for an Emacs User -Here's some tips that may help you adopt. Level 1 If you find it -too painful to switch, don't use the whole package. Instead, start off +keys based on your layout. + +1.6.3 Gradual Adoption for an Emacs User + + +Here's some tips that may help you adopt. + +1.6.3.1 Level 1 +... + +If you find it too painful to switch, don't use the whole package. Instead, start off with just the arrow key movements. (setq ergoemacs-variant "lvl1") (ergoemacs-mode 1) @@ -437,7 +452,7 @@ adopt. File: ergoemacs-mode.info, Node: Level 2, Next: Level 3, Up: Shortcut To Open Cheatsheet -1.4.5.1 Level 2 +1.6.3.2 Level 2 ... Adding keys for moving around words and deleting words. @@ -447,7 +462,7 @@ Adding keys for moving around words and deleting words. File: ergoemacs-mode.info, Node: Level 3, Next: Full Ergoemacs Keys, Prev: Level 2, Up: Shortcut To Open Cheatsheet -1.4.5.2 Level 3 +1.6.3.3 Level 3 ... Full ergoemacs keyset without the unchorded keys. @@ -457,8 +472,8 @@ Full ergoemacs keyset without the unchorded keys. File: ergoemacs-mode.info, Node: Full Ergoemacs Keys, Next: Guru, Prev: Level 3, Up: Shortcut To Open Cheatsheet -1.4.5.3 Full Ergoemacs Keys -... +1.6.3.4 Full Ergoemacs Keys + Try to use the full ergoemacs mode. @@ -467,8 +482,8 @@ Try to use the full ergoemacs mode. File: ergoemacs-mode.info, Node: Guru, Next: Master, Prev: Full Ergoemacs Keys, Up: Shortcut To Open Cheatsheet -1.4.5.4 Guru - +1.6.3.5 Guru +. The guru variant takes away the arrow keys and page up/page down keys. @@ -477,7 +492,7 @@ The guru variant takes away the arrow keys and page up/page down keys. File: ergoemacs-mode.info, Node: Master, Prev: Guru, Up: Shortcut To Open Cheatsheet -1.4.5.5 Master +1.6.3.6 Master .. The Master variant takes away the backspace. This key is not @@ -490,7 +505,7 @@ everywhere. File: ergoemacs-mode.info, Node: Changing key layouts or adding variants, Next: Ergoemacs Keys System wide, Prev: Banish Key Chords, Up: Ergoemacs Keybindings -1.5 Changing key layouts or adding variants +1.7 Changing key layouts or adding variants === * Menu: @@ -500,17 +515,25 @@ File: ergoemacs-mode.info, Node: Changing key layouts or adding variants, Next File: ergoemacs-mode.info, Node: Globally defined keys, Up: Changing key layouts or adding variants -1.5.1 Globally defined keys +1.7.1 Globally defined keys --- These keys are defined on the global keymap and should be retained regardless of the variant or layout used. However, these keys will not show up on keyboard documentation generat
[elpa] externals/ergoemacs-mode 0a9e83e 37/87: Fix eurgoemacs to be ergoemacs. See Issue #453
branch: externals/ergoemacs-mode commit 0a9e83eeed126056084be8a31969805a041781b2 Author: Fidler Commit: Fidler Fix eurgoemacs to be ergoemacs. See Issue #453 --- ergoemacs-lib.el | 2 +- ergoemacs-theme-engine.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ergoemacs-lib.el b/ergoemacs-lib.el index 03f5bf8..8cd92a6 100644 --- a/ergoemacs-lib.el +++ b/ergoemacs-lib.el @@ -323,7 +323,7 @@ Tries to get the value from `ergoemacs-mode-names'. If not guess the language n "List of major-modes known to `ergoemacs-mode'.") (defun ergoemacs-menu--get-major-modes () - "Gets a list of language modes known to `eurgoemacs-mode'. + "Gets a list of language modes known to `ergoemacs-mode'. This gets all major modes known from the variables: - `interpreter-mode-alist'; - `magic-mode-alist' diff --git a/ergoemacs-theme-engine.el b/ergoemacs-theme-engine.el index 066cc7b..6933a07 100644 --- a/ergoemacs-theme-engine.el +++ b/ergoemacs-theme-engine.el @@ -914,7 +914,7 @@ See also `find-function-recenter-line' and `find-function-after-hook'." (let* ((lay (or layout ergoemacs-keyboard-layout)) (theme (or theme ergoemacs-theme)) (layout (symbol-value (ergoemacs :layout lay))) - (file-dir (expand-file-name "bindings" (expand-file-name "eurgoemacs-extras" user-emacs-directory))) + (file-dir (expand-file-name "bindings" (expand-file-name "ergoemacs-extras" user-emacs-directory))) (file-name (expand-file-name (concat theme "-" lay "-" (symbol-name (ergoemacs-map--hashkey ergoemacs--start-emacs-state-2)) ".svg") file-dir)) (reread reread) (old-theme ergoemacs-theme)
[elpa] externals/ergoemacs-mode d5d7e5b 26/87: Partial fix for C-c and C-x. See Issue #444
branch: externals/ergoemacs-mode commit d5d7e5b6a5537cdcfcc79efd43bbde138fc7863c Author: Fidler Commit: Fidler Partial fix for C-c and C-x. See Issue #444 --- ergoemacs-command-loop.el | 51 +++ 1 file changed, 43 insertions(+), 8 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 85e485c..a8ba7d8 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -785,18 +785,53 @@ KEYS is the keys information" (defvar ergoemacs-command--blink-on nil) (defvar ergoemacs-orig-echo-keystrokes nil) +(defvar ergoemacs-command--timeout-timer nil) +(defvar ergoemacs-command--timeout-keys nil) + +(defun ergoemacs-command--timer-timeout () + "Send the [ergoemacs-timeout] event (after timeout)." + (let ((keys (this-single-command-keys))) +(when ergoemacs-command--timeout-timer + (cancel-timer ergoemacs-command--timeout-timer) + (setq ergoemacs-command--timeout-timer nil) + (when (equal keys ergoemacs-command--timeout-keys) + (push 'ergoemacs-timeout unread-command-events)) + (setq ergoemacs-command--timeout-keys nil + (defun ergoemacs-command--echo-prefix () "Echos prefix keys in the ergoemacs-mode way." - (let ((keys (this-single-command-keys))) + (let ((keys (this-single-command-keys)) + ret timeout) +(when (and ergoemacs-command--timeout-timer + (not (equal keys ergoemacs-command--timeout-keys))) + (cancel-timer ergoemacs-command--timeout-timer) + (setq ergoemacs-command--timeout-keys nil + ergoemacs-command--timeout-timer nil)) (unless (or (equal [] keys) (ergoemacs-command-loop-p)) - (when (ergoemacs-keymapp (key-binding keys)) - (ergoemacs-command-loop--message -"%s" (ergoemacs-command-loop--key-msg - (setq ergoemacs-command--blink-on (not ergoemacs-command--blink-on)) - nil nil - (this-single-command-keys) - nil nil nil)) + (when (ergoemacs-keymapp (setq ret (key-binding keys))) + (when (setq timeout (key-binding (vconcat keys [ergoemacs-timeout]))) + (cond + ((eq ergoemacs-handle-ctl-c-or-ctl-x 'only-copy-cut) + (push 'ergoemacs-timeout unread-command-events)) + ((not (region-active-p))) ;; active + ((and this-command-keys-shift-translated + (eq ergoemacs-handle-ctl-c-or-ctl-x 'both))) + ((and (not ergoemacs-ctl-c-or-ctl-x-delay) ;; Immediate + (eq ergoemacs-handle-ctl-c-or-ctl-x 'both)) + (push 'ergoemacs-timeout unread-command-events)) + (t +(setq ergoemacs-command--timeout-keys keys + ergoemacs-command--timeout-timer + (run-at-time t ergoemacs-ctl-c-or-ctl-x-delay #'ergoemacs-command--timer-timeout))) + )) +(unless unread-command-events + (ergoemacs-command-loop--message + "%s" (ergoemacs-command-loop--key-msg +(setq ergoemacs-command--blink-on (not ergoemacs-command--blink-on)) +nil nil +(this-single-command-keys) +nil nil nil))) (defun ergoemacs-command--echo-timer () "Echo the keystrokes in the `ergoemacs-mode' way."
[elpa] externals/ergoemacs-mode 131b3fb 62/87: Fix command-loop errors
branch: externals/ergoemacs-mode commit 131b3fb409c79b66d6715608a71be884a0bde82f Author: Walter Landry Commit: Walter Landry Fix command-loop errors The problem was that mapkeymap was looking for a prefix in a keymap and assuming that the result was a list. This will fail when invoking 'term', because it has a keymap with a lot of elements specified as #^^[3 0 term-send-raw-meta term-send-raw-meta ... We now check explicitly for whether the result is a list. --- ergoemacs-mapkeymap.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/ergoemacs-mapkeymap.el b/ergoemacs-mapkeymap.el index cb08017..199329e 100644 --- a/ergoemacs-mapkeymap.el +++ b/ergoemacs-mapkeymap.el @@ -194,7 +194,9 @@ them to be masked when mapping over the keymap." (cond ((consp event) (ergoemacs-map-set-char-table-range -(or (and prefix (lookup-key flat-keymap prefix)) +(or (and prefix + (let ((prefix-lookup (lookup-key flat-keymap prefix))) + (if (listp prefix-lookup) prefix-lookup))) flat-keymap) event item)) (t (define-key flat-keymap key item)
[elpa] externals/ergoemacs-mode daec6a1 38/87: May Fix Issue #453
branch: externals/ergoemacs-mode commit daec6a1c4b261552b9678d5a1a021f3d49e28858 Author: Fidler Commit: Fidler May Fix Issue #453 --- ergoemacs-map.el | 6 -- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ergoemacs-map.el b/ergoemacs-map.el index c2a77a7..15a1040 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -240,12 +240,13 @@ save the infromationin the `ergoemacs-map--alist' hash." "Apply maps for ALISTS. SYMBOL is the symbol where this alist is located and is used to -save the infromationin the `ergoemacs-map--alist' hash." +save the information in the `ergoemacs-map--alist' hash." (let (old-len) ;; Only modify if the list has changed length. (if (and symbol (setq old-len (ergoemacs-gethash symbol ergoemacs-map--alist)) - (= (length alists) old-len)) alists + (= (length alists) old-len)) + alists (when symbol (puthash symbol (length alists) ergoemacs-map--alist) (setq ergoemacs-map--breadcrumb (format "%s:%s" ergoemacs-map--breadcrumb symbol))) @@ -254,6 +255,7 @@ save the infromationin the `ergoemacs-map--alist' hash." (cond ((consp elt) (ergoemacs-map--alist (list elt))) + ((not (boundp elt))) (t (set elt (ergoemacs-map--alist (symbol-value elt) elt)) elt)))
[elpa] externals/ergoemacs-mode d51ae7e 35/87: Merge remote-tracking branch 'origin/master'
branch: externals/ergoemacs-mode commit d51ae7e19218ed5a2e48be75eeb0bf85ffb8d7a9 Merge: 9acd205 7e31354 Author: Fidler Commit: Fidler Merge remote-tracking branch 'origin/master' --- ergoemacs-layouts.el | 13 + 1 file changed, 13 insertions(+) diff --git a/ergoemacs-layouts.el b/ergoemacs-layouts.el index 3aa0b95..84a78e1 100644 --- a/ergoemacs-layouts.el +++ b/ergoemacs-layouts.el @@ -30,6 +30,19 @@ (eval-when-compile (require 'ergoemacs-macros)) +(defvar ergoemacs-layout-pt + '("" "\\" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "'" "«" "" +"" "" "q" "w" "e" "r" "t" "y" "u" "i" "o" "p" "+" "´" "" +"" "" "a" "s" "d" "f" "g" "h" "j" "k" "l" "ç" "º" "~" "" +"" "<" "z" "x" "c" "v" "b" "n" "m" "," "." "-" "" "" "" +;; Shifted +"" "|" "!" "\"" "#" "$" "%" "&" "/" "(" ")" "=" "?" "»" "" +"" "" "Q" "W" "E" "R" "T" "Y" "U" "I" "O" "P" "*" "`" "" +"" "" "A" "S" "D" "F" "G" "H" "J" "K" "L" "Ç" "ª" "^" "" +"" ">" "Z" "X" "C" "V" "B" "N" "M" ";" ":" "_" "" "" "") + "Portuguese QWERTY. URL `https://en.wikipedia.org/wiki/Portuguese_keyboard_layout'.") + + (defvar ergoemacs-layout-asset '("" "`" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "-" "=" "" "" "" "q" "w" "j" "f" "g" "y" "p" "u" "l" ";" "[" "]" "\\"
[elpa] externals/ergoemacs-mode dc2f666 54/87: Add info on how to get system-wide Ergoemacs bindings in macOS
branch: externals/ergoemacs-mode commit dc2f666db5ae9f7a65a7cb8ca0f36ce5a82f4338 Author: Marlon Richert Commit: Marlon Richert Add info on how to get system-wide Ergoemacs bindings in macOS Also clean up and correctly renumber the section headings in ergoemacs-mode.info --- ergoemacs-mode.info | 106 +--- 1 file changed, 76 insertions(+), 30 deletions(-) diff --git a/ergoemacs-mode.info b/ergoemacs-mode.info index 32e637f..da0e500 100644 --- a/ergoemacs-mode.info +++ b/ergoemacs-mode.info @@ -379,7 +379,14 @@ anything that enters the minibuffer removes the movement mode. - Any undefined key in the keymap (like 1) would exit the mode and insert the character - Shift and the key is the unshifted command. Therefore [Menu] [i] [i] [Shift+k] would be Page Up followed by down one -character. ## Layouts Supported ## Tips for adopting ErgoEmacs +character. + +1.5 Layouts Supported += + +1.6 Tips for adopting ErgoEmacs +=== + Keybindings If you are a long time emacs user, you may find it painful to adopt this setup. @@ -390,7 +397,7 @@ changing muscle memory. File: ergoemacs-mode.info, Node: Where Did My Command Go?, Next: Shortcut To Open Cheatsheet, Prev: Ergoemacs Key Chord Reduction, Up: Banish Key Chords -1.4.4 Where Did My Command Go? +1.6.1 Where Did My Command Go? -- The ergonomic-mode minor mode features the command @@ -401,16 +408,24 @@ Emacs, and the new shortcut for it under ErgoEmacs?. File: ergoemacs-mode.info, Node: Shortcut To Open Cheatsheet, Prev: Where Did My Command Go?, Up: Banish Key Chords -1.4.5 Shortcut To Open Cheatsheet +1.6.2 Shortcut To Open Cheatsheet - You can open a cheatsheet by pressing [Control+h] [']. On the first run, this will create a svg and (possibly) create a png based on the svg (if `ergoemacs-inkscape' points to the inkscape executable). Once these are created, the cheatsheet will be opened displaying all the -keys based on your layout. ### Gradual Adoption for an Emacs User -Here's some tips that may help you adopt. Level 1 If you find it -too painful to switch, don't use the whole package. Instead, start off +keys based on your layout. + +1.6.3 Gradual Adoption for an Emacs User + + +Here's some tips that may help you adopt. + +1.6.3.1 Level 1 +... + +If you find it too painful to switch, don't use the whole package. Instead, start off with just the arrow key movements. (setq ergoemacs-variant "lvl1") (ergoemacs-mode 1) @@ -437,7 +452,7 @@ adopt. File: ergoemacs-mode.info, Node: Level 2, Next: Level 3, Up: Shortcut To Open Cheatsheet -1.4.5.1 Level 2 +1.6.3.2 Level 2 ... Adding keys for moving around words and deleting words. @@ -447,7 +462,7 @@ Adding keys for moving around words and deleting words. File: ergoemacs-mode.info, Node: Level 3, Next: Full Ergoemacs Keys, Prev: Level 2, Up: Shortcut To Open Cheatsheet -1.4.5.2 Level 3 +1.6.3.3 Level 3 ... Full ergoemacs keyset without the unchorded keys. @@ -457,8 +472,8 @@ Full ergoemacs keyset without the unchorded keys. File: ergoemacs-mode.info, Node: Full Ergoemacs Keys, Next: Guru, Prev: Level 3, Up: Shortcut To Open Cheatsheet -1.4.5.3 Full Ergoemacs Keys -... +1.6.3.4 Full Ergoemacs Keys + Try to use the full ergoemacs mode. @@ -467,8 +482,8 @@ Try to use the full ergoemacs mode. File: ergoemacs-mode.info, Node: Guru, Next: Master, Prev: Full Ergoemacs Keys, Up: Shortcut To Open Cheatsheet -1.4.5.4 Guru - +1.6.3.5 Guru +. The guru variant takes away the arrow keys and page up/page down keys. @@ -477,7 +492,7 @@ The guru variant takes away the arrow keys and page up/page down keys. File: ergoemacs-mode.info, Node: Master, Prev: Guru, Up: Shortcut To Open Cheatsheet -1.4.5.5 Master +1.6.3.6 Master .. The Master variant takes away the backspace. This key is not @@ -490,7 +505,7 @@ everywhere. File: ergoemacs-mode.info, Node: Changing key layouts or adding variants, Next: Ergoemacs Keys System wide, Prev: Banish Key Chords, Up: Ergoemacs Keybindings -1.5 Changing key layouts or adding variants +1.7 Changing key layouts or adding variants === * Menu: @@ -500,17 +515,25 @@ File: ergoemacs-mode.info, Node: Changing key layouts or adding variants, Next File: ergoemacs-mode.info, Node: Globally defined keys, Up: Changing key layouts or adding variants -1.5.1 Globally defined keys +1.7.1 Globally defined keys --- These keys are defined on the global keymap and should be retained regardless of the variant or layout used. However, these keys will not show up on keyboard
[elpa] externals/ergoemacs-mode 6231ee0 47/87: Merge pull request #468 from m00natic/emacs26-fixes
branch: externals/ergoemacs-mode commit 6231ee0ae7014bd8f8ef2a3adc13b4d3d403bf71 Merge: 7b06006 4e188fd Author: Matthew Fidler Commit: GitHub Merge pull request #468 from m00natic/emacs26-fixes Emacs26 fixes --- ergoemacs-functions.el | 2 +- ergoemacs-map-properties.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 9edc59b..83ffe5c 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -2367,7 +2367,7 @@ exists and opens it in emacs, if possible." ;; Tilde (ñãõÑÃÕ) (?\361 . ?n)(?\343 . ?a)(?\365 . ?o)(?\321 . ?N)(?\303 . ?A)(?\325 . ?O) (?\337 . "ss") ; S-zed (Beta) (ß) -(?\253 . ?")(?\273 . ?"); Guillemets -> double quotes («») +(?\253 . ?\")(?\273 . ?\") ; Guillemets -> double quotes («») (?\346 . "ae")(?\306 . "AE"); ae, AE (æÆ) (?\370 . ?o)(?\330 . ?O); Slashed O (øØ) (?\260 . ?@)(?\345 . ?a)(?\305 . ?A) ; Angstrom (degree) (°åÅ) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index 93bc19e..87f4d0d 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -651,7 +651,7 @@ These keymaps are saved in `ergoemacs-map-properties--hook-map-hash'." (ergoemacs-timing ergoemacs-create-global (let* ((emacs-exe (ergoemacs-emacs-exe)) (default-directory (expand-file-name (file-name-directory (locate-library "ergoemacs-mode" - (cmd (format "%s -L %s --batch --load \"ergoemacs-mode\" -Q --eval \"(ergoemacs-map-properties--default-global-gen) (kill-emacs)\"" emacs-exe default-directory))) + (cmd (format "%s -L %s --batch --load \"ergoemacs-mode\" -Q --eval \"(progn (ergoemacs-map-properties--default-global-gen) (kill-emacs))\"" emacs-exe default-directory))) (message "%s" (shell-command-to-string cmd)) (ergoemacs-map-properties--get-original-global-map
[elpa] externals/ergoemacs-mode 4e188fd 46/87: Escape quotes on use as characters in
branch: externals/ergoemacs-mode commit 4e188fdef55f62ee27521028613bac00c0d712ea Author: Andrey Kotlarski Commit: Andrey Kotlarski Escape quotes on use as characters in ergoemacs-reverse-iso-chars-alist. --- ergoemacs-functions.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 9edc59b..83ffe5c 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -2367,7 +2367,7 @@ exists and opens it in emacs, if possible." ;; Tilde (ñãõÑÃÕ) (?\361 . ?n)(?\343 . ?a)(?\365 . ?o)(?\321 . ?N)(?\303 . ?A)(?\325 . ?O) (?\337 . "ss") ; S-zed (Beta) (ß) -(?\253 . ?")(?\273 . ?"); Guillemets -> double quotes («») +(?\253 . ?\")(?\273 . ?\") ; Guillemets -> double quotes («») (?\346 . "ae")(?\306 . "AE"); ae, AE (æÆ) (?\370 . ?o)(?\330 . ?O); Slashed O (øØ) (?\260 . ?@)(?\345 . ?a)(?\305 . ?A) ; Angstrom (degree) (°åÅ)
[elpa] externals/ergoemacs-mode 2091646 65/87: Merge pull request #497 from wlandry/space_in_filenames
branch: externals/ergoemacs-mode commit 2091646676a31043512e4924f08aa68015190a70 Merge: f5aa0f7 10007d2 Author: Matthew Fidler Commit: GitHub Merge pull request #497 from wlandry/space_in_filenames Preserve the behavior of 'space' when rebinding inside a minibuffer --- ergoemacs-map.el | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 15a1040..1e758cd 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -1023,7 +1023,12 @@ When INI is non-nil, add conditional maps to `minor-mode-map-alist'." (use-local-map (ergoemacs current-local-map)) (setq ergoemacs-map--breadcrumb "")) (when (and (minibufferp) ergoemacs-read-from-minibuffer-map) -(use-local-map (ergoemacs ergoemacs-read-from-minibuffer-map)) + ;; Preserve bindings for space, such as when completing a filename + (if (and (equal (key-binding " ") 'self-insert-command)) + (use-local-map (list 'keymap + '(32 . self-insert-command) ;; space==32 + (ergoemacs ergoemacs-read-from-minibuffer-map))) + (use-local-map (ergoemacs ergoemacs-read-from-minibuffer-map))) (setq ergoemacs-read-from-minibuffer-map nil ergoemacs-map--breadcrumb "")) ;; Run deferred "hooks"
[elpa] externals/ergoemacs-mode 7d36565 53/87: Merge pull request #481 from TinaRussell/exclude-more-hooks
branch: externals/ergoemacs-mode commit 7d3656541a00cc04ba4cefa31c0d127adb5a260a Merge: cac7b56 aa649b2 Author: Matthew Fidler Commit: GitHub Merge pull request #481 from TinaRussell/exclude-more-hooks Add hooks to ergoemacs-map-properties--modify-run-mode-hooks-excluded --- ergoemacs-map-properties.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index f2d7e23..6793600 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -438,7 +438,8 @@ Save information about what HOOK is running function FN." (defvar ergoemacs-map-properties--modify-run-mode-hooks-excluded - '(font-lock-mode-hook emojify-emojify-mode-line mu4e-update-mail-and-index) + '(font-lock-mode-hook emojify-emojify-mode-line mu4e-update-mail-and-index +change-major-mode-hook after-change-major-mode-hook) "List of hooks where keymaps should not be modified.") (defun ergoemacs-map-properties--modify-run-mode-hooks-p (hook)
[elpa] externals/ergoemacs-mode 3ea0220 31/87: Add Qwidget for nomachine
branch: externals/ergoemacs-mode commit 3ea0220a9a98b55ab2e706a428018666d39dfe1e Author: Fidler Commit: Fidler Add Qwidget for nomachine --- ahk-us.ahk | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ahk-us.ahk b/ahk-us.ahk index 30c042b..b6085f7 100644 --- a/ahk-us.ahk +++ b/ahk-us.ahk @@ -851,6 +851,8 @@ IsExternalProgram(){ External = 1 } else if (WinActive("ahk_class Transparent Windows Client")){ External = 1 + } else if (WinActive("ahk_class QWidget")){ + External = 1 } Return External }
[elpa] externals/ergoemacs-mode 4769abe 61/87: Update Mac instructions to swap Command and Alt
branch: externals/ergoemacs-mode commit 4769abe4f20a677977cc40adef943c2174cf746b Author: Walter Landry Commit: Walter Landry Update Mac instructions to swap Command and Alt --- web.org | 20 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/web.org b/web.org index 6553a9d..a41664c 100644 --- a/web.org +++ b/web.org @@ -1853,14 +1853,26 @@ You have some options to get to copy and paste: #+END_SRC -*** I want to modify my modifiers to work differently on a mac -Ergoemacs-mode uses the option as an alt key because you can press it -with a thumb. If you want a different option, set: +*** I want to use the Command key as Meta on a mac +The default for Emacs on the mac maps the Alt key to Meta and +Command to Super. Because Ergoemacs-mode uses the Meta key so +extensively, you may want to swap this mapping. To swap them, set: #+BEGIN_SRC emacs-lisp -(setq ergoemacs-use-mac-command-as-meta nil) +(setq ns-command-modifier 'meta) +(setq ns-alternate-modifier 'super) #+END_SRC +Note that this can interfere with some global shortcuts. For example, +Ergoemacs-mode uses Meta-SPC to set the mark. However, typing Command-SPC +ordinarily brings up Spotlight. To disable this and allow Ergoemacs +to use this binding, go into + +``` +System Preferences -> Keyboard -> Shortcuts -> Spotlight +``` + +and disable that binding. * Tips ** Gradual Adoption :PROPERTIES:
[elpa] externals/ergoemacs-mode ad3ec45 73/87: Fix describe-ergoemacs-theme and consolidate menu items
branch: externals/ergoemacs-mode commit ad3ec45ebbfdfaca052253c550102fd665b3bd1b Author: Walter Landry Commit: Walter Landry Fix describe-ergoemacs-theme and consolidate menu items --- ergoemacs-functions.el | 7 --- ergoemacs-key-description.el | 6 +- ergoemacs-theme-engine.el| 10 +- ergoemacs-themes.el | 11 --- 4 files changed, 10 insertions(+), 24 deletions(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 62669c9..5c46645 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -61,7 +61,6 @@ (declare-function cua-cut-region "cua-base") (declare-function cua-paste "cua-base") (declare-function cua-set-rectangle-mark "cua-rect") -(declare-function describe-ergoemacs-theme "ergoemacs-theme-engine") (declare-function dired-get-marked-files "dired") (declare-function ergoemacs-map-- "ergoemacs-map") @@ -2343,12 +2342,6 @@ If arg is a negative prefix, copy file path only" :type 'string :group 'ergoemacs-mode) -(defun ergoemacs-display-current-theme () - "Generates the current ergoemacs layout, unless it already -exists and opens it in emacs, if possible." - (interactive) - (describe-ergoemacs-theme ergoemacs-theme)) - ;;; Unaccent region taken and modified from Drew Adam's unaccent.el (require 'strings nil t) ;; (no error if not found): region-description diff --git a/ergoemacs-key-description.el b/ergoemacs-key-description.el index 5d304f6..b910a73 100644 --- a/ergoemacs-key-description.el +++ b/ergoemacs-key-description.el @@ -197,7 +197,11 @@ MOD ar the modifiers applied to the key." (when (and ergoemacs-display-key-use-face-p (not ergoemacs-display-small-symbols-for-key-modifiers)) (add-text-properties 0 (length ret) - '(face ergoemacs-display-key-face) ret)) + '(face ergoemacs-display-key-face) + ;; Need to make a copy of ret because the + ;; (length ret) call makes it sometimes + ;; immutable + (copy-sequence ret))) ret)) (defun ergoemacs-key-description--modifier (mod) diff --git a/ergoemacs-theme-engine.el b/ergoemacs-theme-engine.el index 3ecdd73..e5c54f9 100644 --- a/ergoemacs-theme-engine.el +++ b/ergoemacs-theme-engine.el @@ -422,9 +422,7 @@ When AT-END is non-nil, append a $ to the regular expression." (ergoemacs-sep-menu "--") (ergoemacs-cheat menu-item "Generate/Open Key binding Cheat Sheet" - (lambda() - (interactive) - (call-interactively 'ergoemacs-display-current-theme))) + ergoemacs-describe-current-theme) (ergoemacs-save menu-item "Save Settings for Future Sessions" @@ -443,6 +441,10 @@ When AT-END is non-nil, append a $ to the regular expression." (lambda () (interactive) (customize-group 'ergoemacs-mode))) +(ergoemacs-mode-web-page + menu-item "Ergoemacs-mode web-page" + (lambda() (interactive) + (browse-url ergoemacs-mode-web-page-url))) (ergoemacs-mode-exit menu-item "Exit ergoemacs-mode" (lambda() (interactive) (ergoemacs-mode -1) @@ -630,8 +632,6 @@ See also `find-function-recenter-line' and `find-function-after-hook'." (ergoemacs-mode-reset))) (buffer-string)) -(defalias 'describe-ergoemacs-theme 'ergoemacs-theme-describe) - (defvar ergoemacs-theme-create-bash-functions '((backward-char) (forward-char) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index c9935ce..0763a2a 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -1864,17 +1864,6 @@ (man-dir menu-item "Unix Man Pages..." woman :help "Unix Manual entries (with WoMan)"))) - (separator-2 menu-item "--") - - (eroemacs-current-keybindings menu-item -"Current Ergoemacs Keybindings" - ergoemacs-describe-current-theme) - - (ergoemacs-mode-web-page menu-item - "Ergoemacs-mode web-page" - (lambda() (interactive) - (browse-url ergoemacs-mode-web-page-url)) - :help "Online help about ergoemacs.") (separator-3 menu-item "--") (send-bug-report menu-item "Send Emacs Bug Report"
[elpa] externals/ergoemacs-mode 19fea7e 77/87: Fix byte compile of ergoemacs-command-loop
branch: externals/ergoemacs-mode commit 19fea7ee63683ef9dd9ffb1b70221f187c38d994 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Fix byte compile of ergoemacs-command-loop --- ergoemacs-command-loop.el | 18 ++ ergoemacs-macros.el | 8 ++-- 2 files changed, 12 insertions(+), 14 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index e6f9f8e..a97e59c 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1,5 +1,4 @@ ;;; ergoemacs-command-loop.el --- Keyboard translation functions -*- lexical-binding: t -*- - ;; Copyright © 2013-2016 Free Software Foundation, Inc. ;; Filename: ergoemacs-command-loop.el @@ -219,13 +218,17 @@ Returns the mode-line text." (ergoemacs-mode-line) nil) +(defun ergoemacs-command-loop--match-buffer-name-p (reg) + "Determine if the REG is found in `buffer-name'." + (and (stringp (buffer-name)) + (string-match reg (buffer-name + (defun ergoemacs-command-loop--modal-p () "Determine if the command should be modal. If so return the translation." (if (not ergoemacs-command-loop--modal-stack) nil (let* ((translation (nth 0 ergoemacs-command-loop--modal-stack)) (always) - tmp ret) (when (ergoemacs-translation-struct-p translation) (setq always (ergoemacs-translation-struct-modal-always translation)) @@ -237,8 +240,8 @@ If so return the translation." ((and (not always) (catch 'match-modal (dolist (reg ergoemacs-modal-ignored-buffers) - ((when (and (setq tmp (buffer-name)) (stringp tmp) (string-match reg tmp)) - (throw 'match-modal t + (when (ergoemacs-command-loop--match-buffer-name-p reg) + (throw 'match-modal t))) nil))) (t (setq ret translation @@ -808,8 +811,7 @@ KEYS is the keys information" (defun ergoemacs-command--echo-prefix () "Echos prefix keys in the ergoemacs-mode way." - (let ((keys (this-single-command-keys)) - ret timeout) + (let ((keys (this-single-command-keys))) (when (and ergoemacs-command--timeout-timer (not (equal keys ergoemacs-command--timeout-keys))) (cancel-timer ergoemacs-command--timeout-timer) @@ -817,8 +819,8 @@ KEYS is the keys information" ergoemacs-command--timeout-timer nil)) (unless (or (equal [] keys) (ergoemacs-command-loop-p)) - (when (ergoemacs-keymapp (setq ret (key-binding keys))) - (when (setq timeout (key-binding (vconcat keys [ergoemacs-timeout]))) + (when (ergoemacs-keymapp (key-binding keys)) + (when (key-binding (vconcat keys [ergoemacs-timeout])) (cond ((eq ergoemacs-handle-ctl-c-or-ctl-x 'only-copy-cut) (push 'ergoemacs-timeout unread-command-events)) diff --git a/ergoemacs-macros.el b/ergoemacs-macros.el index 4cb1dda..b2f9d4a 100644 --- a/ergoemacs-macros.el +++ b/ergoemacs-macros.el @@ -853,17 +853,13 @@ When arg1 can be a property. The following properties are supported: (arg4 (nth 3 args))) (cond ((and arg1 (symbolp arg1) (eq arg1 :reset-prefix)) - (if (>= 25 emacs-major-version) + (if (<= 25 emacs-major-version) `(prefix-command-preserve-state) `(reset-this-command-lengths))) ((and arg1 (symbolp arg1) (eq arg1 :set-selection)) - (if (>= 25 emacs-major-version) + (if (<= 25 emacs-major-version) `(gui-set-selection ,@(cdr args)) `(x-set-selection ,@(cdr args - ((and arg1 (symbolp arg1) (eq arg1 :set-selection)) - (if (>= 25 emacs-major-version) - `(gui-set-selection ,@(cdr args)) - `(x-set-selection ,@(cdr args ((and arg1 (symbolp arg1) (eq arg1 :width)) `(ergoemacs-mode--eval-width ,arg2)) ((and arg1 (symbolp arg1) (eq arg1 :mode-if) arg2)
[elpa] externals/ergoemacs-mode a87fae7 45/87: Fix passing of multiple forms for evaluation on new emacs process
branch: externals/ergoemacs-mode commit a87fae7a2c413a6fd6b7d23dc8e159e400b10e8a Author: Andrey Kotlarski Commit: Andrey Kotlarski Fix passing of multiple forms for evaluation on new emacs process launch in ergoemacs-map-properties--get-original-global-map. --- ergoemacs-map-properties.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index 93bc19e..87f4d0d 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -651,7 +651,7 @@ These keymaps are saved in `ergoemacs-map-properties--hook-map-hash'." (ergoemacs-timing ergoemacs-create-global (let* ((emacs-exe (ergoemacs-emacs-exe)) (default-directory (expand-file-name (file-name-directory (locate-library "ergoemacs-mode" - (cmd (format "%s -L %s --batch --load \"ergoemacs-mode\" -Q --eval \"(ergoemacs-map-properties--default-global-gen) (kill-emacs)\"" emacs-exe default-directory))) + (cmd (format "%s -L %s --batch --load \"ergoemacs-mode\" -Q --eval \"(progn (ergoemacs-map-properties--default-global-gen) (kill-emacs))\"" emacs-exe default-directory))) (message "%s" (shell-command-to-string cmd)) (ergoemacs-map-properties--get-original-global-map
[elpa] externals/ergoemacs-mode 081fcbd 84/87: Fix #503
branch: externals/ergoemacs-mode commit 081fcbd911ca3e360fdca492736892c041867c51 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Fix #503 --- ergoemacs-command-loop.el | 4 ++-- ergoemacs-mode.el | 18 +- ergoemacs-test.el | 3 ++- ergoemacs-translate.el| 2 +- 4 files changed, 14 insertions(+), 13 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 697f62d..3213c8e 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -107,7 +107,7 @@ (defvar ergoemacs-command-loop--mark-active nil "Determines if mark was active before ergoemacs command loop.") -(define-obsolete-variable-alias 'ergoemacs-universal-fns 'ergoemacs-command-loop--universal-functions) +(define-obsolete-variable-alias 'ergoemacs-universal-fns 'ergoemacs-command-loop--universal-functions "Ergoemacs-v5.16") (defvar ergoemacs-command-loop--universal-functions '(universal-argument ergoemacs-universal-argument ergoemacs-command-loop--universal-argument) @@ -132,7 +132,7 @@ (defvar ergoemacs-command-loop--help-last-key nil) -(define-obsolete-variable-alias 'ergoemacs-read-key-delay 'ergoemacs-command-loop--decode-event-delay) +(define-obsolete-variable-alias 'ergoemacs-read-key-delay 'ergoemacs-command-loop--decode-event-delay "Ergoemacs-v5.16") (defvar ergoemacs-command-loop--decode-event-delay 0.01 "Timeout for `ergoemacs-command-loop--decode-event'. diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el index 6747029..96db5de 100644 --- a/ergoemacs-mode.el +++ b/ergoemacs-mode.el @@ -848,7 +848,7 @@ Valid values are: "Display Options for `ergoemacs-mode'." :group 'ergoemacs-mode) -(define-obsolete-variable-alias 'ergoemacs-use-unicode-char 'ergoemacs-display-unicode-characters) +(define-obsolete-variable-alias 'ergoemacs-use-unicode-char 'ergoemacs-display-unicode-characters "Ergoemacs-v5.16") (defcustom ergoemacs-display-unicode-characters t "Use unicode characters when available." @@ -866,7 +866,7 @@ Valid values are: :initialize #'custom-initialize-default :group 'ergoemacs-display) -(define-obsolete-variable-alias 'ergoemacs-use-unicode-brackets 'ergoemacs-display-use-unicode-brackets-around-keys) +(define-obsolete-variable-alias 'ergoemacs-use-unicode-brackets 'ergoemacs-display-use-unicode-brackets-around-keys "Ergoemacs-v5.16") (defcustom ergoemacs-display-use-unicode-brackets-around-keys t "Use unicode brackets." @@ -875,7 +875,7 @@ Valid values are: :initialize #'custom-initialize-default :group 'ergoemacs-display) -(define-obsolete-variable-alias 'ergoemacs-use-small-symbols 'ergoemacs-display-small-symbols-for-key-modifiers) +(define-obsolete-variable-alias 'ergoemacs-use-small-symbols 'ergoemacs-display-small-symbols-for-key-modifiers "Ergoemacs-v5.16") (defcustom ergoemacs-display-small-symbols-for-key-modifiers nil "Use small symbols to represent alt+ ctl+ on windows/linux." @@ -884,7 +884,7 @@ Valid values are: :initialize #'custom-initialize-default :group 'ergoemacs-display) -(define-obsolete-variable-alias 'ergoemacs-capitalize-keys 'ergoemacs-display-capitalize-keys) +(define-obsolete-variable-alias 'ergoemacs-capitalize-keys 'ergoemacs-display-capitalize-keys "Ergoemacs-v5.16") (defcustom ergoemacs-display-capitalize-keys 'with-modifiers "Capitalize keys like Ctrl+C. @@ -897,7 +897,7 @@ Valid values are: :initialize #'custom-initialize-default :group 'ergoemacs-display) -(define-obsolete-variable-alias 'ergoemacs-pretty-key-use-face 'ergoemacs-display-key-use-face-p) +(define-obsolete-variable-alias 'ergoemacs-pretty-key-use-face 'ergoemacs-display-key-use-face-p "Ergoemacs-v5.16") (defcustom ergoemacs-display-key-use-face-p t "Use a button face for keys." @@ -953,7 +953,7 @@ Valid values are: "Options for `ergoemacs-command-loop'." :group 'ergoemacs-mode) -(define-obsolete-variable-alias 'ergoemacs-read-blink 'ergoemacs-command-loop-blink-character) +(define-obsolete-variable-alias 'ergoemacs-read-blink 'ergoemacs-command-loop-blink-character "Ergoemacs-v5.16") (defcustom ergoemacs-command-loop-blink-character (ergoemacs :unicode-or-alt "•" "·" "-") "Blink character." @@ -962,14 +962,14 @@ Valid values are: (const :tag "No cursor" nil)) :group 'ergoemacs-command-loop) -(define-obsolete-variable-alias 'ergoemacs-read-blink-timeout 'ergoemacs-command-loop-blink-rate) +(define-obsolete-variable-alias 'ergoemacs-read-blink-timeout 'ergoemacs-command-loop-blink-rate "Ergoemacs-v5.16") (defcustom ergoemacs-command-loop-blink-rate 0.4 "Rate that the ergoemacs-command loop cursor blinks." :type 'number :group 'ergoemacs-command-loop) -(define-obsolete-variable-alias 'ergoemacs-read-swaps 'ergoemacs-command-loop-swap-translation) +(define-obsolete-variable-alias 'ergoemacs-read-swaps 'ergoemacs-comma
[elpa] externals/ergoemacs-mode 10007d2 64/87: Preserve the behavior of 'space' when rebinding inside a minibuffer
branch: externals/ergoemacs-mode commit 10007d278575e7156b6d74f5578170c8432166f2 Author: Walter Landry Commit: Walter Landry Preserve the behavior of 'space' when rebinding inside a minibuffer In minibuffers, the usual binding for 'space' is 'complete-word. When completing filenames, it is overriden to allow literal spaces. This fix preserves that override. Fixes #471 --- ergoemacs-map.el | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 15a1040..1e758cd 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -1023,7 +1023,12 @@ When INI is non-nil, add conditional maps to `minor-mode-map-alist'." (use-local-map (ergoemacs current-local-map)) (setq ergoemacs-map--breadcrumb "")) (when (and (minibufferp) ergoemacs-read-from-minibuffer-map) -(use-local-map (ergoemacs ergoemacs-read-from-minibuffer-map)) + ;; Preserve bindings for space, such as when completing a filename + (if (and (equal (key-binding " ") 'self-insert-command)) + (use-local-map (list 'keymap + '(32 . self-insert-command) ;; space==32 + (ergoemacs ergoemacs-read-from-minibuffer-map))) + (use-local-map (ergoemacs ergoemacs-read-from-minibuffer-map))) (setq ergoemacs-read-from-minibuffer-map nil ergoemacs-map--breadcrumb "")) ;; Run deferred "hooks"
[elpa] externals/ergoemacs-mode aa649b2 52/87: Add hooks to ergoemacs-map-properties--modify-run-mode-hooks-excluded
branch: externals/ergoemacs-mode commit aa649b231a39e21875668aa72eaba3c375591a77 Author: Tina Russell Commit: Tina Russell Add hooks to ergoemacs-map-properties--modify-run-mode-hooks-excluded Specifically, change-major-mode-hook after-change-major-mode-hook --- ergoemacs-map-properties.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index f2d7e23..6793600 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -438,7 +438,8 @@ Save information about what HOOK is running function FN." (defvar ergoemacs-map-properties--modify-run-mode-hooks-excluded - '(font-lock-mode-hook emojify-emojify-mode-line mu4e-update-mail-and-index) + '(font-lock-mode-hook emojify-emojify-mode-line mu4e-update-mail-and-index +change-major-mode-hook after-change-major-mode-hook) "List of hooks where keymaps should not be modified.") (defun ergoemacs-map-properties--modify-run-mode-hooks-p (hook)
[elpa] externals/ergoemacs-mode cac7b56 51/87: Fix (string-match-p error)
branch: externals/ergoemacs-mode commit cac7b5628d54fbce1b4e564fdfd36dc6b989c228 Author: Matthew L. Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew L. Fidler <514778+mattfid...@users.noreply.github.com> Fix (string-match-p error) --- ergoemacs-advice.el | 7 --- ergoemacs-command-loop.el | 14 +- ergoemacs-component.el | 6 +++--- ergoemacs-map-properties.el | 4 +++- ergoemacs-test.el | 2 +- ergoemacs-themes.el | 4 +--- 6 files changed, 21 insertions(+), 16 deletions(-) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index 0ba3770..e2320d3 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -320,6 +320,8 @@ command selected, instead of rerunning `smex' and :type :before (setq ergoemacs-command-loop--single-command-keys nil)) +(defvar ergoemacs-command-loop--history) + (defun ergoemacs-mode--undefined-advice (&optional type) "Advice for undefined. @@ -329,11 +331,10 @@ TYPE is the type of translation installed." (translation (ergoemacs-translate--get type)) (local-keymap (ergoemacs-translate--keymap translation)) (local-key (substring keys -1)) -modal-p -found) +modal-p) (when (setq modal-p (ergoemacs :modal-p)) (setq local-keymap (ergoemacs-translation-struct-keymap-modal modal-p))) -(if (setq found (lookup-key local-keymap local-key)) +(if (lookup-key local-keymap local-key) (let ((i 1)) ;; Setup history (setq ergoemacs-command-loop--history nil) (while (<= i (- (length keys) 1)) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 7cc5197..8628dbb 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -224,6 +224,7 @@ If so return the translation." (if (not ergoemacs-command-loop--modal-stack) nil (let* ((translation (nth 0 ergoemacs-command-loop--modal-stack)) (always) + tmp ret) (when (ergoemacs-translation-struct-p translation) (setq always (ergoemacs-translation-struct-modal-always translation)) @@ -235,8 +236,8 @@ If so return the translation." ((and (not always) (catch 'match-modal (dolist (reg ergoemacs-modal-ignored-buffers) - (when (string-match reg (buffer-name)) - (throw 'match-modal t))) + ((when (and (setq tmp (buffer-name)) (stringp tmp) (string-match reg tmp)) + (throw 'match-modal t nil))) (t (setq ret translation @@ -581,9 +582,11 @@ This is not done when the event is [ergoemacs-ignore]" (and (setq ergoemacs-command-loop--last-event-time (float-time)) 0))) (prompt (cond ((not prompt) nil) + ((not (stringp prompt))) ((not (string= "" ergoemacs-command-loop--read-key-prompt)) prompt) ((or (string= prompt " ") - (string-match-p prompt (concat " *" (ergoemacs :unicode-or-alt ergoemacs-command-loop-blink-character "-") " *"))) nil) + (string-match-p prompt (concat " *" (ergoemacs :unicode-or-alt ergoemacs-command-loop-blink-character "-") " *"))) + nil) (ergoemacs-command-loop--universal prompt) (ergoemacs-command-loop--echo-keystrokes-complete prompt) ((not (numberp ergoemacs-command-loop-echo-keystrokes)) prompt) @@ -1186,6 +1189,7 @@ appropriate value based on the COMMAND." (defun ergoemacs-command-loop-full-p (&optional type) "Determines if the full command loop should be run. + TYPE is the type of command loop to check for. By default this is the :full command loop." (and @@ -1407,8 +1411,8 @@ FN-ARG-P can be nil, :drop-rest or :rest" (strip-args (ergoemacs-command-loop--mouse-command-drop-first args)) (rest-p (ergoemacs-command-loop--mouse-command-drop-first args :rest)) (drop-rest (ergoemacs-command-loop--mouse-command-drop-first args :drop-rest)) - (select-window-p (and form (string-match-p "^[*^]*[@]" form))) - (event-p (and form (string-match-p "^[*@^]*e" form))) + (select-window-p (and (stringp form) (string-match-p "^[*^]*[@]" form))) + (event-p (and (stringp form) (string-match-p "^[*@^]*e" form))) (new-form (and form (or (and (not event-p) form) (and event-p (replace-regexp-in-string "^\\([*@^]*\\)e\n*\\(.*\\)" "\\1\\2" form)) diff --git a/ergoemacs-component.el b/ergoemacs-component.el index ed4a9d4..3740e57 100644 --- a/ergoemacs-component.el +++ b/ergoemacs-component.el @@ -368,8 +368,8 @@ OBJECT is the ergoemacs component object, and defaults to (t (let ((obj (or object ergoemacs-compo
[elpa] externals/ergoemacs-mode 823b73a 32/87: Added Portuguese QWERTY keyboard layout.
branch: externals/ergoemacs-mode commit 823b73a16b6a13cfcc09f5a03500633bae2071cc Author: Anibal Mendonça Commit: Anibal Mendonça Added Portuguese QWERTY keyboard layout. --- ergoemacs-layouts.el | 13 + 1 file changed, 13 insertions(+) diff --git a/ergoemacs-layouts.el b/ergoemacs-layouts.el index 3aa0b95..84a78e1 100644 --- a/ergoemacs-layouts.el +++ b/ergoemacs-layouts.el @@ -30,6 +30,19 @@ (eval-when-compile (require 'ergoemacs-macros)) +(defvar ergoemacs-layout-pt + '("" "\\" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "'" "«" "" +"" "" "q" "w" "e" "r" "t" "y" "u" "i" "o" "p" "+" "´" "" +"" "" "a" "s" "d" "f" "g" "h" "j" "k" "l" "ç" "º" "~" "" +"" "<" "z" "x" "c" "v" "b" "n" "m" "," "." "-" "" "" "" +;; Shifted +"" "|" "!" "\"" "#" "$" "%" "&" "/" "(" ")" "=" "?" "»" "" +"" "" "Q" "W" "E" "R" "T" "Y" "U" "I" "O" "P" "*" "`" "" +"" "" "A" "S" "D" "F" "G" "H" "J" "K" "L" "Ç" "ª" "^" "" +"" ">" "Z" "X" "C" "V" "B" "N" "M" ";" ":" "_" "" "" "") + "Portuguese QWERTY. URL `https://en.wikipedia.org/wiki/Portuguese_keyboard_layout'.") + + (defvar ergoemacs-layout-asset '("" "`" "1" "2" "3" "4" "5" "6" "7" "8" "9" "0" "-" "=" "" "" "" "q" "w" "j" "f" "g" "y" "p" "u" "l" ";" "[" "]" "\\"
[elpa] externals/ergoemacs-mode ade132c 67/87: Remap ergoemacs-paste to calc-yank in calc-mode
branch: externals/ergoemacs-mode commit ade132c5fd3221a9413964c9970f73ee0ab8ffc9 Author: Walter Landry Commit: Walter Landry Remap ergoemacs-paste to calc-yank in calc-mode --- ergoemacs-themes.el | 1 + 1 file changed, 1 insertion(+) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index fdc7a13..2c60a98 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -707,6 +707,7 @@ (define-key browse-kill-ring-mode-map [remap undo] 'browse-kill-ring-undo-other-window) (define-key browse-kill-ring-mode-map [remap undo-tree-undo] 'browse-kill-ring-undo-other-window) (define-key browse-kill-ring-mode-map [remap undo-tree-undo] 'browse-kill-ring-undo-other-window) + (define-key calc-mode-map [remap ergoemacs-paste] 'calc-yank) (define-key calc-mode-map [remap undo-tree-undo] 'calc-undo)) (ergoemacs-component search ()
[elpa] externals/ergoemacs-mode a5d4665 50/87: Remove emojify-emojify-mode-line mu4e-update-mail-and-index from modify
branch: externals/ergoemacs-mode commit a5d46653fd3a521276630c81bf75d3e8d224e5cb Author: Fidler Commit: Fidler Remove emojify-emojify-mode-line mu4e-update-mail-and-index from modify --- ergoemacs-map-properties.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index 87f4d0d..b8717e8 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -438,7 +438,7 @@ Save information about what HOOK is running function FN." (defvar ergoemacs-map-properties--modify-run-mode-hooks-excluded - '(font-lock-mode-hook) + '(font-lock-mode-hook emojify-emojify-mode-line mu4e-update-mail-and-index) "List of hooks where keymaps should not be modified.") (defun ergoemacs-map-properties--modify-run-mode-hooks-p (hook)
[elpa] externals/ergoemacs-mode 9a5b97f 57/87: Removed commented out code
branch: externals/ergoemacs-mode commit 9a5b97f6b77404a0a24550a37cf1d349469bb6d4 Author: Sławomir Wójcik Commit: Sławomir Wójcik Removed commented out code --- ergoemacs-functions.el | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index a275253..62669c9 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -404,7 +404,7 @@ If `narrow-to-region' is in effect, then cut that region only." :type 'boolean :group 'ergoemacs-mode) -(defun ergoemacs--keep-active () +(defun ergoemacs--keep-mark-active () (when (mark t) (setq mark-active t deactivate-mark nil))) @@ -439,10 +439,8 @@ Pass prefix ARG to the respective copy functions." (call-interactively 'move-end-of-line))) (re-search-forward "\\=\n" nil t) ;; Include newline (point) - ;; (unless ergoemacs-keep-region-after-copy - ;; (deactivate-mark))) (if ergoemacs-keep-region-after-copy - (ergoemacs--keep-active) + (ergoemacs--keep-mark-active) (deactivate-mark))) (defun ergoemacs-cut-line-or-region (&optional arg)
[elpa] externals/ergoemacs-mode 6ec72c0 86/87: Go back to ergoemacs-display-key-use-face (suggestion from emacs devs)
branch: externals/ergoemacs-mode commit 6ec72c02e241b8369c5958337c9560f420911a62 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Go back to ergoemacs-display-key-use-face (suggestion from emacs devs) --- ergoemacs-component.el | 9 + ergoemacs-functions.el | 4 ++-- ergoemacs-key-description.el | 24 ergoemacs-lib.el | 11 +++ ergoemacs-mode.el| 4 ++-- ergoemacs-theme-engine.el| 7 +++ ergoemacs-translate.el | 21 + 7 files changed, 40 insertions(+), 40 deletions(-) diff --git a/ergoemacs-component.el b/ergoemacs-component.el index 6d97251..8920885 100644 --- a/ergoemacs-component.el +++ b/ergoemacs-component.el @@ -44,7 +44,7 @@ (defvar ergoemacs--last-start-emacs-state-2) (defvar ergoemacs--start-emacs-state-2) (defvar ergoemacs-component-hash) -(defvar ergoemacs-display-key-use-face-p) +(defvar ergoemacs-display-key-use-face) (defvar ergoemacs-keyboard-layout) (defvar ergoemacs-keymap) (defvar ergoemacs-map-properties--known-maps) @@ -863,7 +863,7 @@ LAYOUT is the current keyboard layout. Defaults to (add-hook 'ergoemacs-mode-after-load-hook 'ergoemacs-component-struct--add-unbound) (defun ergoemacs-component-struct--hooks (&optional obj ret) - "Gets a list of hooks that need to be defined eor OBJ. + "Gets a list of hooks that need to be defined for OBJ. You can prespecify RET so that new hooks are pushed to the list." (let ((obj (ergoemacs-component-struct--lookup-hash (or obj (ergoemacs-theme-components @@ -984,7 +984,8 @@ OBJ is the current object being modified, passed to (ergoemacs-component-struct--composed-hook ',hook)) ;; (push ) (push ',hook ergoemacs-component-struct--create-hooks) - (add-hook ',hook #',(intern (concat "ergoemacs--" (symbol-name hook + (add-hook ',hook #',(intern (concat "ergoemacs--" (symbol-name hook)) +t)) (defun ergoemacs-component-struct--rm-hooks () "Remove hooks. @@ -1352,7 +1353,7 @@ AT-END will append a \"$\" to the end of the regular expression." (commandp tmp)) (help-xref-button 1 'help-function tmp)) ;; Add button properties back -(when (and tmp ergoemacs-display-key-use-face-p) +(when (and tmp ergoemacs-display-key-use-face) (setq tmp (point)) (beginning-of-line) (while (and (not (looking-at "Relative To:")) (re-search-forward "\\(.*?\\)[ +]" tmp t)) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 90692fa..258c8be 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -1323,7 +1323,7 @@ Based on the value of `major-mode' and (defun ergoemacs-camelize-method (s &optional char) "Convert under_score string S to CamelCase string." (mapconcat 'identity (ergoemacs-mapcar-head -'(lambda (word) (downcase word)) +#'downcase '(lambda (word) (capitalize (downcase word))) (split-string s (or char "_"))) "")) @@ -2431,7 +2431,7 @@ Guillemet -> quote, degree -> @, s-zed -> ss, upside-down ?! -> ?!." (defun ergoemacs-shell-here-directory-change-hook () "Renames buffer to reflect directory name." (let ((nbn (concat (cond - ((eq major-mode 'eshell-mode) "*eshell@") + ((derived-mode-p 'eshell-mode) "*eshell@") (t (replace-regexp-in-string "\\([*][^@]*[@]\\).*" "\\1" (buffer-name) t))) (if (eq system-type 'windows-nt) (ergoemacs :w32-long-file-name (abbreviate-file-name default-directory)) ;; Fix case issues diff --git a/ergoemacs-key-description.el b/ergoemacs-key-description.el index ed75875..41ebad3 100644 --- a/ergoemacs-key-description.el +++ b/ergoemacs-key-description.el @@ -51,7 +51,7 @@ (defvar ergoemacs-use-unicode-symbols) (defvar ergoemacs-display-unicode-characters) (defvar ergoemacs-display-capitalize-keys) -(defvar ergoemacs-display-key-use-face-p) +(defvar ergoemacs-display-key-use-face) (defvar ergoemacs-display-small-symbols-for-key-modifiers) (defvar ergoemacs-display-use-unicode-brackets-around-keys) (defvar ergoemacs-display-without-brackets nil @@ -194,10 +194,10 @@ MOD ar the modifiers applied to the key." (setq ret (upcase (symbol-name key (t (setq ret (format "%s" key -(setq ret (concat (copy-sequence ret) " ")) -(when (and ergoemacs-display-key-use-face-p +(setq ret (concat (copy-sequence ret) "")) +(when (and ergoemacs-display-key-use-face (not ergoemacs-display-small-symbols-for-key-modifiers)) - (add-text-properties 0 (- (length ret) 1) + (add-text-properties 0 (length ret) '(face ergoemacs-display-key-face)
[elpa] externals/ergoemacs-mode 8b437ad 70/87: Merge pull request #500 from wlandry/term_fixes
branch: externals/ergoemacs-mode commit 8b437adbd7f3e7794b2fdd6ec08b14a9184b8b07 Merge: 26c2150 c7907aa Author: Matthew Fidler Commit: GitHub Merge pull request #500 from wlandry/term_fixes In term-mode, modify both term-raw-map and current-local-map --- ergoemacs-map.el | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 1e758cd..8702952 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -1020,7 +1020,16 @@ When INI is non-nil, add conditional maps to `minor-mode-map-alist'." (setq ergoemacs-map--breadcrumb (format "%s" major-mode)) (when (eq major-mode 'ess-mode) (setq ergoemacs-map--breadcrumb (format "ess-mode-%s" ess-language))) -(use-local-map (ergoemacs current-local-map)) + ;; term-mode has a term-raw-map that it checks against + ;; current-local-map to see if it is in line-mode or + ;; char-mode. So we have to modify both term-raw-map and + ;; current-local-map to be able to switch. + (if (not (eq major-mode 'term-mode)) +(use-local-map (ergoemacs current-local-map)) + (progn + (setq term-raw-map (ergoemacs term-raw-map)) + (use-local-map term-raw-map)) + ) (setq ergoemacs-map--breadcrumb "")) (when (and (minibufferp) ergoemacs-read-from-minibuffer-map) ;; Preserve bindings for space, such as when completing a filename
[elpa] externals/ergoemacs-mode 7df155e 40/87: Don't refresh the package contents. See #452
branch: externals/ergoemacs-mode commit 7df155e52c86e1db5e69c16830643adfdf7cd1a8 Author: Fidler Commit: Fidler Don't refresh the package contents. See #452 --- ergoemacs-component.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-component.el b/ergoemacs-component.el index 4ad954f..412f8ba 100644 --- a/ergoemacs-component.el +++ b/ergoemacs-component.el @@ -152,7 +152,7 @@ (defvar ergoemacs-component-struct--define-key-current nil) -(defvar ergoemacs-component-struct--ensure-refreshed-p nil) +(defvar ergoemacs-component-struct--ensure-refreshed-p t) (defun ergoemacs-component-struct--ensure (package &optional defer autoloads) "Ensure PACKAGE is installed.
[elpa] externals/ergoemacs-mode fc097bd 82/87: Update copyright year
branch: externals/ergoemacs-mode commit fc097bd8bcd313beb9563b5d48a60bc1f4b621c7 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Update copyright year --- ergoemacs-advice.el | 2 +- ergoemacs-command-loop.el| 2 +- ergoemacs-debug.el | 2 +- ergoemacs-functions.el | 2 +- ergoemacs-key-description.el | 2 +- ergoemacs-layouts.el | 2 +- ergoemacs-lib.el | 2 +- ergoemacs-macros.el | 2 +- ergoemacs-map-properties.el | 2 +- ergoemacs-map.el | 2 +- ergoemacs-mapkeymap.el | 2 +- ergoemacs-mode.el| 2 +- ergoemacs-test.el| 2 +- ergoemacs-theme-engine.el| 2 +- ergoemacs-themes.el | 2 +- ergoemacs-translate.el | 2 +- 16 files changed, 16 insertions(+), 16 deletions(-) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index c5c9b89..2908bea 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -1,6 +1,6 @@ ;;; ergoemacs-advice.el --- Ergoemacs advices -*- lexical-binding: t -*- -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Filename: ergoemacs-advice.el ;; Description: diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 1077d77..697f62d 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1,5 +1,5 @@ ;;; ergoemacs-command-loop.el --- Keyboard translation functions -*- lexical-binding: t -*- -;; Copyright © 2013-2016 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Filename: ergoemacs-command-loop.el ;; Description: diff --git a/ergoemacs-debug.el b/ergoemacs-debug.el index 465e959..83c9062 100644 --- a/ergoemacs-debug.el +++ b/ergoemacs-debug.el @@ -1,6 +1,6 @@ ;;; ergoemacs-debug.el --- Ergoemacs map interface -*- lexical-binding: t -*- -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Filename: ergoemacs-debug.el ;; Description: diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 5ef76da..90692fa 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -1,6 +1,6 @@ ;;; ergoemacs-functions.el --- miscellaneous functions for ErgoEmacs -*- lexical-binding: t -*- -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Maintainer: Matthew L. Fidler ;; Authors: Xah Lee, Matthew Fidler, Drew Adams, Ting-Yu Lin, David diff --git a/ergoemacs-key-description.el b/ergoemacs-key-description.el index b910a73..a645bd1 100644 --- a/ergoemacs-key-description.el +++ b/ergoemacs-key-description.el @@ -1,6 +1,6 @@ ;;; ergoemacs-key-description.el --- Ergoemacs map interface -*- lexical-binding: t -*- -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Filename: ergoemacs-key-description.el ;; Description: diff --git a/ergoemacs-layouts.el b/ergoemacs-layouts.el index db39808..3ddd324 100644 --- a/ergoemacs-layouts.el +++ b/ergoemacs-layouts.el @@ -1,6 +1,6 @@ ;;; ergoemacs-layouts.el --- keyboard layouts for ErgoEmacs -* lexical-binding: t -*- -;; Copyright (C) 2013, 2014 Free Software Foundation, Inc. +;; Copyright (C) 2013-2021 Free Software Foundation, Inc. ;; Maintainer: Matthew L. Fidler ;; Keywords: convenience diff --git a/ergoemacs-lib.el b/ergoemacs-lib.el index 8cd92a6..cd15574 100644 --- a/ergoemacs-lib.el +++ b/ergoemacs-lib.el @@ -1,6 +1,6 @@ ;;; ergoemacs-lib.el --- Ergoemacs libraries -*- lexical-binding: t -*- -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Author: Matthew L. Fidler, Xah Lee ;; Maintainer: diff --git a/ergoemacs-macros.el b/ergoemacs-macros.el index 5c82e7b..9d87bee 100644 --- a/ergoemacs-macros.el +++ b/ergoemacs-macros.el @@ -1,6 +1,6 @@ ;;; ergoemacs-macros.el --- Macros for ergoemacs-mode -*- lexical-binding: t -*- -;; Copyright © 2013, 2014 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Maintainer: Matthew L. Fidler ;; Keywords: convenience diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index e6b6426..9d5bcc2 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -1,6 +1,6 @@ ;;; ergoemacs-map-properties.el --- Ergoemacs map interface -*- lexical-binding: t -*- -;; Copyright © 2013-2015 Free Software Foundation, Inc. +;; Copyright © 2013-2021 Free Software Foundation, Inc. ;; Filename: ergoemacs-map-properties.el ;; Description: diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 4ae7c22..1d48b59 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -1,6 +1,6 @@ ;;; ergoemacs-map.el --- Ergoemacs map interface -*- lexical-binding: t -*- -;; Copyrigh
[elpa] externals/ergoemacs-mode b61ece8 74/87: Merge remote-tracking branch 'elpa/externals/ergoemacs-mode'
branch: externals/ergoemacs-mode commit b61ece84cfbbe4f47de2e57ae42c0511068b8df3 Merge: ad3ec45 5450f4d Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Merge remote-tracking branch 'elpa/externals/ergoemacs-mode' --- .gitignore | 3 + ergoemacs-command-loop.el | 33 ++--- ergoemacs-component.el | 33 +++-- ergoemacs-functions.el | 43 --- ergoemacs-layouts.el| 34 ++--- ergoemacs-lib.el| 64 - ergoemacs-macros.el | 307 ++-- ergoemacs-map-properties.el | 25 ++-- ergoemacs-map.el| 12 +- ergoemacs-mode.el | 36 +++--- ergoemacs-test.el | 255 +--- ergoemacs-theme-engine.el | 12 +- ergoemacs-themes.el | 7 +- ergoemacs-translate.el | 32 +++-- 14 files changed, 446 insertions(+), 450 deletions(-) diff --git a/.gitignore b/.gitignore index be4d2c4..aa6f6df 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,9 @@ *~ ~* out/* +ChangeLog +*-autoloads.el +*-pkg.el *.elc \#*\# .\#* diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 8628dbb..ee39cc8 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1,6 +1,6 @@ ;;; ergoemacs-command-loop.el --- Keyboard translation functions -*- lexical-binding: t -*- -;; Copyright © 2013-2016 Free Software Foundation, Inc. +;; Copyright © 2013-2018 Free Software Foundation, Inc. ;; Filename: ergoemacs-command-loop.el ;; Description: @@ -106,11 +106,11 @@ "Determines if mark was active before ergoemacs command loop.") +(define-obsolete-variable-alias 'ergoemacs-universal-fns 'ergoemacs-command-loop--universal-functions "Ergoemacs-v5.16") + (defvar ergoemacs-command-loop--universal-functions '(universal-argument ergoemacs-universal-argument ergoemacs-command-loop--universal-argument) "List of `ergoemacs-mode' recognized functions.") -(define-obsolete-variable-alias 'ergoemacs-universal-fns 'ergoemacs-command-loop--universal-functions) - (defvar ergoemacs-command-loop--next-key-hash (let ((hash (make-hash-table))) (puthash 'event-apply-shift-modifier (list '(shift) :force) hash) @@ -129,14 +129,14 @@ (defvar ergoemacs-command-loop--help-last-key nil) +(define-obsolete-variable-alias 'ergoemacs-read-key-delay 'ergoemacs-command-loop--decode-event-delay "Ergoemacs-v5.16") + (defvar ergoemacs-command-loop--decode-event-delay 0.01 "Timeout for `ergoemacs-command-loop--decode-event'. This is to distinguish events in a terminal, like xterm. It needs to be less than `ergoemacs-command-loop-blink-rate'.") -(define-obsolete-variable-alias 'ergoemacs-read-key-delay 'ergoemacs-command-loop--decode-event-delay) - (defvar ergoemacs-command-loop--history nil "History of command loop locations.") @@ -369,7 +369,7 @@ Ergoemacs-mode sets up: :ctl-to-alt :unchorded :normal." (next-key-is-control-meta (control meta)) (next-key-is-meta-control (control meta)) (next-key-is-quoted nil))) - (eval (macroexpand-all + (eval (macroexpand-all;FIXME: Why macroexpand-all? `(progn (defun ,(intern (concat "ergoemacs-command-loop--" (symbol-name (nth 0 arg () ,(format "Ergoemacs function to allow %s to be the emacs modifiers" (nth 1 arg)) @@ -384,7 +384,8 @@ Ergoemacs-mode sets up: :ctl-to-alt :unchorded :normal." (message "Dummy Function for %s" (ergoemacs :modifier-desc ,(nth 1 arg (defalias ',(intern (concat "ergoemacs-read-key-force-" (symbol-name (nth 0 arg ',(intern (concat "ergoemacs-command-loop--force-" (symbol-name (nth 0 arg) (puthash ',(intern (concat "ergoemacs-command-loop--force-" (symbol-name (nth 0 arg '(,(nth 1 arg) :force) ergoemacs-command-loop--next-key-hash) -(puthash ',(intern (concat "ergoemacs-read-key-force-" (symbol-name (nth 0 arg '(,(nth 1 arg) :force) ergoemacs-command-loop--next-key-hash) +(puthash ',(intern (concat "ergoemacs-read-key-force-" (symbol-name (nth 0 arg '(,(nth 1 arg) :force) ergoemacs-command-loop--next-key-hash))) +t)) (defvar ergoemacs-last-command-event nil "`ergoemacs-mode' command loop last read command.") @@ -1647,10 +1648,10 @@ instead of `format'." (apply #'ergoemacs-command-loop--spinner-display args)) (setq ergoemacs-command-loop--spinner-display :max))) (when (eq ergoemacs-message-level ergoemacs-command-loop--spinner-display) - (let* ((string (or (and (listp string) - (eq (car string) 'quote) - (eval string)) - string)) + (let* ((string (if (and (listp string) + (eq (car st
[elpa] externals/ergoemacs-mode e6edcbe 15/87: Remove prefix switching to command loop.
branch: externals/ergoemacs-mode commit e6edcbeb2d97ed705da3e074c0be40a06b87ebbd Author: Fidler Commit: Fidler Remove prefix switching to command loop. --- ergoemacs-advice.el | 31 ++-- ergoemacs-command-loop.el | 194 +- ergoemacs-mode.el | 5 +- 3 files changed, 114 insertions(+), 116 deletions(-) diff --git a/ergoemacs-advice.el b/ergoemacs-advice.el index d935fef..91d34da 100644 --- a/ergoemacs-advice.el +++ b/ergoemacs-advice.el @@ -320,15 +320,30 @@ command selected, instead of rerunning `smex' and :type :before (setq ergoemacs-command-loop--single-command-keys nil)) -(defun ergoemacs-mode--undefined-advice () - "Advice for undefined." - (let ((keys (this-single-command-keys))) -(if (member (substring keys -1) '([apps] [menu])) -(progn - (setq ergoemacs-command-loop--eat nil) - (ergoemacs-command-loop keys)) +(defun ergoemacs-mode--undefined-advice (&optional type) + "Advice for undefined. + +TYPE is the type of translation installed." + (let* ((keys (this-single-command-keys)) +(type (or type :normal)) +(translation (ergoemacs-translate--get type)) +(local-keymap (ergoemacs-translate--keymap translation)) +(local-key (substring keys -1)) +modal-p +found) +(when (setq modal-p (ergoemacs :modal-p)) + (setq local-keymap (ergoemacs-translation-struct-keymap-modal modal-p))) +(if (setq found (lookup-key local-keymap local-key)) + (let ((i 1)) ;; Setup history + (setq ergoemacs-command-loop--history nil) + (while (<= i (- (length keys) 1)) + (push (list (substring keys 0 i) :normal nil + current-prefix-arg (aref (substring keys (- i 1) i) 0)) + ergoemacs-command-loop--history) + (setq i (+ 1 i))) + (ergoemacs-command-loop keys nil nil nil ergoemacs-command-loop--history)) (ding) - (ergoemacs-command-loop--temp-message "%s is undefined!" + (ergoemacs-command-loop--temp-message "%s does not do anything!" (ergoemacs-key-description (this-single-command-keys))) (setq defining-kbd-macro nil) (force-mode-line-update) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 43aa902..f9c66a2 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -745,9 +745,77 @@ return nil." (setq last-input input input (ergoemacs-command-loop--decode-event input key-translation-map current-key)) (unless (eq last-input input) - (setq binding (key-binding (ergoemacs :combine current-key input) t + (setq binding (key-binding (ergoemacs :combine current-key input) t input)) +(defun ergoemacs-command-loop--key-msg (blink-on universal text current-key unchorded trans keys) + "Key message. + +BLINK-ON is the flag for if the blink is on + +UNIVERSAL is if the prompt is in the universal argument. + +TEXT for prompting. + +CURRENT-KEY Current key. + +UNCHORDED is this a unchorded key? + +TRANS translation information. + +KEYS is the keys information" + (format + "%s" (concat + ergoemacs-command-loop--read-key-prompt + (ergoemacs-command-loop--read-key-help-text-prefix-argument blink-on universal) + text + (ergoemacs-key-description current-key) + unchorded + ;; Cursor + (or (and (string= ergoemacs-command-loop--read-key-prompt "") "") " ") + (or (and universal "") + (and ergoemacs-command-loop-blink-character + (or (and blink-on (ergoemacs :unicode-or-alt ergoemacs-command-loop-blink-character "-")) + " ")) + " ") + trans + keys))) + +(defvar erogemacs-command--echo-timer nil) +(defvar ergoemacs-command--blink-on nil) +(defvar ergoemacs-orig-echo-keystrokes nil) + +(defun ergoemacs-command--echo-prefix () + "Echos prefix keys in the ergoemacs-mode way." + (let ((keys (this-single-command-keys))) +(unless (or (equal [] keys) + (ergoemacs-command-loop-p)) + (ergoemacs-command-loop--message + "%s" (ergoemacs-command-loop--key-msg +(setq ergoemacs-command--blink-on (not ergoemacs-command--blink-on)) +nil nil +(this-single-command-keys) +nil nil nil) + +(defun ergoemacs-command--echo-timer () + "Echo the keystrokes in the `ergoemacs-mode' way." + (when (and (not ergoemacs-command-loop-type) +(not erogemacs-command--echo-timer)) +(unless ergoemacs-orig-echo-keystrokes + (setq ergoemacs-orig-echo-keystrokes echo-keystrokes)) +(setq echo-keystrokes 0) +(setq erogemacs-command--echo-timer + (run-at-time t ergoemacs-command-loop-blink-rate #'ergoemacs-command--echo-prefix + +(defun ergoemacs-command--echo-timer-off () + "Turn off the timer." + (s
[elpa] externals/ergoemacs-mode 26c2150 68/87: Merge pull request #498 from wlandry/calc_yank
branch: externals/ergoemacs-mode commit 26c21505103f2fdb6af2544da1f7ba6400b2ec14 Merge: 730306e ade132c Author: Matthew Fidler Commit: GitHub Merge pull request #498 from wlandry/calc_yank Remap ergoemacs-paste to calc-yank in calc-mode --- ergoemacs-themes.el | 1 + 1 file changed, 1 insertion(+) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index fdc7a13..2c60a98 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -707,6 +707,7 @@ (define-key browse-kill-ring-mode-map [remap undo] 'browse-kill-ring-undo-other-window) (define-key browse-kill-ring-mode-map [remap undo-tree-undo] 'browse-kill-ring-undo-other-window) (define-key browse-kill-ring-mode-map [remap undo-tree-undo] 'browse-kill-ring-undo-other-window) + (define-key calc-mode-map [remap ergoemacs-paste] 'calc-yank) (define-key calc-mode-map [remap undo-tree-undo] 'calc-undo)) (ergoemacs-component search ()
[elpa] externals/ergoemacs-mode dde41b4 81/87: Fix some more warnings and test icy stuff only when icy is there
branch: externals/ergoemacs-mode commit dde41b4262296ca8892fed1a0c8488128de282f7 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Fix some more warnings and test icy stuff only when icy is there --- ergoemacs-map-properties.el | 15 +--- ergoemacs-mode.el | 32 + ergoemacs-test.el | 164 +++- ergoemacs-theme-engine.el | 4 +- ergoemacs-themes.el | 2 +- ergoemacs-translate.el | 8 +-- 6 files changed, 111 insertions(+), 114 deletions(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index dda0928..e6b6426 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -908,7 +908,7 @@ When DROP is non-nil, drop any found maps from `ergoemacs-map-properties--known- ;; (message "%s" map-list) ergoemacs-map-properties--get-or-generate-map-key)) -(defun ergoemacs-map-properties--label (keymap &optional map-key struct) +(defun ergoemacs-map-properties--label (keymap &optional map-key struct-in) "Label an `ergoemacs-mode' touched KEYMAP. MAP-KEY is the identifier of the map name. STRUCT is the keymap structure for the current map." @@ -920,8 +920,7 @@ STRUCT is the keymap structure for the current map." (error "Will not label a composed map's members to %s" map-key)) (t (let* ((breadcrumb-base ergoemacs-map--breadcrumb) - (struct (or struct (ergoemacs-gethash map-key ergoemacs-map-properties--key-struct))) - (comp (plist-get struct :composed)) + (comp (plist-get (or struct-in (ergoemacs-gethash map-key ergoemacs-map-properties--key-struct)) :composed)) (comp-list (ergoemacs-map-properties--composed-list keymap)) from-prop-p (i 0)) @@ -946,14 +945,13 @@ STRUCT is the keymap structure for the current map." (t (let* ((map keymap) (map-key (or map-key - (plist-get struct :map-key) + (plist-get struct-in :map-key) (ergoemacs-map-properties--get-or-generate-map-key map))) char-table indirect-p old-plist (breadcrumb-base ergoemacs-map--breadcrumb) (parent (keymap-parent map)) -(struct (or struct (ergoemacs-gethash map-key ergoemacs-map-properties--key-struct))) label tmp1 tmp2) (unwind-protect (progn @@ -992,13 +990,6 @@ STRUCT is the keymap structure for the current map." (push char-table map)) (push 'keymap map))) (when parent - ;; (if (and breadcrumb-base (not (string= breadcrumb-base ""))) - ;; (setq ergoemacs-map--breadcrumb (concat breadcrumb-base "-parent")) - ;; (when (setq ergoemacs-map-properties--breadcrumb (gethash map-key ergoemacs-breadcrumb-hash)) - ;; (setq ergoemacs-map-properties--breadcrumb (format "%s-parent" ergoemacs-map-properties--breadcrumb)) - ;; ;; (message "Set %s!" ergoemacs-map-properties--breadcrumb) - ;; )) - ;; (ergoemacs :label parent nil (plist-get struct :parent)) (set-keymap-parent map parent) (setq ergoemacs-map--breadcrumb breadcrumb-base))) (if indirect-p diff --git a/ergoemacs-mode.el b/ergoemacs-mode.el index 001c343..16b0c2c 100644 --- a/ergoemacs-mode.el +++ b/ergoemacs-mode.el @@ -96,6 +96,9 @@ (declare-function ergoemacs-layouts--customization-type "ergoemacs-layouts") +(declare-function ergoemacs-map-properties--label "ergoemacs-map-properties") +(declare-function ergoemacs-map-- "ergoemacs-map") + (declare-function persistent-soft-fetch "persistent-soft") (declare-function persistent-soft-flush "persistent-soft") (declare-function persistent-soft-location-destroy "persistent-flush") @@ -169,6 +172,7 @@ Added beginning-of-buffer Alt+n (QWERTY notation) and end-of-buffer Alt+Shift+n" (defcustom ergoemacs-keyboard-mirror nil "Specifies which keyboard layout to mirror." + :type 'sexp :set #'ergoemacs-set-default :initialize #'custom-initialize-default :group 'ergoemacs-mode) @@ -628,6 +632,7 @@ When STORE-P is non-nil, save the tables." (dot ("⠁" "⠂" "⠄" "⡀" "⢀" "⠠" "⠐" "⠈")) (fish (">))'>" " >))'>" " >))'>" " >))'>" ">))'>" " <'((<" " <'((<" " <'((<"))) "Spinners for long commands with `ergoemacs-command-loop'." + :type 'sexp :group 'ergoemacs-command-loop) (defcustom ergoemacs-command-loop-spinner (or (and ergoemacs-use-unicode-symbols 'dots) 'standard) @@ -843,6 +848,8 @@ Valid values are: "Display Options for `ergoemacs-mode'." :group 'ergoemacs-mode) +(define-obsolete-variable-alias 'ergoemacs-use-unicode-char 'ergoemacs-display-unicode-characters) + (defcustom ergoemacs-display-unicode-c
[elpa] externals/ergoemacs-mode 72b0292 72/87: Make ergoemacs-handle-ctl-c-or-ctl-x==only-C-c-and-C-x work
branch: externals/ergoemacs-mode commit 72b0292e860b15ff2f8df367d9ed2114ebb60a6b Author: Walter Landry Commit: Walter Landry Make ergoemacs-handle-ctl-c-or-ctl-x==only-C-c-and-C-x work --- ergoemacs-themes.el | 33 + 1 file changed, 25 insertions(+), 8 deletions(-) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index 2c60a98..c9935ce 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -244,7 +244,10 @@ (global-set-key (kbd "C-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "M-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "") 'ergoemacs-cut-line-or-region) - (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) + (if (not (eq ergoemacs-handle-ctl-c-or-ctl-x 'only-C-c-and-C-x)) + (global-set-key (kbd "C-c ") + 'ergoemacs-copy-line-or-region) +) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "C-S-v") 'ergoemacs-paste-cycle) @@ -325,7 +328,9 @@ (global-set-key (kbd "C-x k") nil) (global-set-key (kbd "C-w") 'ergoemacs-close-current-buffer) - (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) + (if (not (eq ergoemacs-handle-ctl-c-or-ctl-x 'only-C-c-and-C-x)) + (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) +) (global-set-key (kbd "C-x C-b") 'ibuffer) (global-set-key (kbd "C-y") '(redo undo-tree-redo ergoemacs-redo) "↷ redo") @@ -367,7 +372,9 @@ (define-key isearch-mode-map (kbd "C-M-f") 'isearch-occur) (define-key isearch-mode-map (kbd "") 'ergoemacs-paste) (define-key isearch-mode-map (kbd "C-S-v") 'ergoemacs-paste-cycle) - (define-key isearch-mode-map (kbd "C-c") 'isearch-yank-word-or-char) + (if (not (eq ergoemacs-handle-ctl-c-or-ctl-x 'only-C-c-and-C-x)) + (define-key isearch-mode-map (kbd "C-c") 'isearch-yank-word-or-char) +) (define-key isearch-mode-map (kbd "M-c") 'isearch-yank-word-or-char) (define-key isearch-mode-map (kbd "M-v") 'ergoemacs-paste) (define-key isearch-mode-map (kbd "C-v") 'ergoemacs-paste)) @@ -687,15 +694,21 @@ (global-set-key (kbd "M-z") '("C-_" :emacs)) ;; Fixed Component; Note that is the actual function. - (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) - (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) + (if (not (eq ergoemacs-handle-ctl-c-or-ctl-x 'only-C-c-and-C-x)) + (progn +(global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) +(global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) +) +) (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "C-z") 'undo) (global-set-key (kbd "C-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "C-y") '(redo undo-tree-redo ergoemacs-redo)) ;; Mode specific changes - (define-key isearch-mode-map (kbd "C-c") 'isearch-yank-word-or-char) + (if (not (eq ergoemacs-handle-ctl-c-or-ctl-x 'only-C-c-and-C-x)) + (define-key isearch-mode-map (kbd "C-c") 'isearch-yank-word-or-char) +) (define-key isearch-mode-map (kbd "M-c") 'isearch-yank-word-or-char) (define-key isearch-mode-map (kbd "M-v") 'ergoemacs-paste) (define-key isearch-mode-map (kbd "M-V") 'ergoemacs-paste-cycle) @@ -1880,8 +1893,12 @@ (ergoemacs-theme lvl0 () "CUA-mode style" - (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) - (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) + (if (not (eq ergoemacs-handle-ctl-c-or-ctl-x 'only-C-c-and-C-x)) + (progn +(global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) +(global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) +) +) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "C-S-v") 'ergoemacs-paste-cycle)
[elpa] externals/ergoemacs-mode ea9b60f 71/87: Make the bash bindings work
branch: externals/ergoemacs-mode commit ea9b60fafd19fb1917116acc9c1c5c96d25c5508 Author: Walter Landry Commit: Walter Landry Make the bash bindings work --- ergoemacs-theme-engine.el | 39 +++ 1 file changed, 27 insertions(+), 12 deletions(-) diff --git a/ergoemacs-theme-engine.el b/ergoemacs-theme-engine.el index 6933a07..3ecdd73 100644 --- a/ergoemacs-theme-engine.el +++ b/ergoemacs-theme-engine.el @@ -635,16 +635,16 @@ See also `find-function-recenter-line' and `find-function-after-hook'." (defvar ergoemacs-theme-create-bash-functions '((backward-char) (forward-char) -(previous-history) -(next-history) -(beginning-of-line ergoemacs-beginning-of-line-or-what) -(end-of-line ergoemacs-end-of-line-or-what) -(backward-word subward-backward backward-sexp) -(forward-word subword-forward forward-sexp) -(kill-line ergoemacs-cut-line-or-region) +(previous-history previous-line) +(next-history next-line) +(beginning-of-line move-beginning-of-line) +(end-of-line move-end-of-line) +(backward-word) +(forward-word) +(kill-line) (backward-kill-word) (kill-word) -(backward-delete-char) +(backward-delete-char backward-delete-char-untabify) (delete-char) (undo undo-tree-undo) (kill-region ergoemacs-cut-line-or-region) @@ -663,14 +663,29 @@ See also `find-function-recenter-line' and `find-function-after-hook'." # place this file in your home dir. e.g. ~/.inputrc # restart your terminal. Then, bash's keybinding for editing # should be like ErgoEmacs. -# If no key works, try replace all \\e to \\M-. That's means change Esc to Meta key. +# If none of the keys work, try replacing all instances of \\e with \\M-. +# That's means changing Esc to Meta key. \nset editing-mode emacs") tmp) (with-temp-buffer (dolist (cmds ergoemacs-theme-create-bash-functions) (dolist (cmd cmds) - (when (setq tmp (where-is-internal cmd nil t)) -(setq ret (concat ret "\n\"\\" (key-description tmp) "\": " - (symbol-name (nth 0 cmds)) t)) + (dolist (key-cmd (where-is-internal cmd nil)) +(setq key-string (key-description key-cmd)) +;; Only set up the Meta bindings, not the regular arrow or +;; Control bindings. That would require more complicated +;; logic to get right. +(if (string-prefix-p "M-" key-string) +(setq ret (concat ret "\n\"\\" + (replace-regexp-in-string "M-" "e" key-string t) + "\": " + (symbol-name (nth 0 cmds)) + ) + ) + ) +) + ) +t) + ) (with-temp-file "~/.inputrc" (insert ret) (insert "\n"))
[elpa] externals/ergoemacs-mode 78e8d55 85/87: Fix regression with #503
branch: externals/ergoemacs-mode commit 78e8d55cf9c1e7287b869a66c500ff403199e92a Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Fix regression with #503 --- ergoemacs-command-loop.el | 4 ++-- ergoemacs-translate.el| 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index 3213c8e..2ec495f 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -376,7 +376,7 @@ Ergoemacs-mode sets up: :ctl-to-alt :unchorded :normal." (next-key-is-control-meta (control meta)) (next-key-is-meta-control (control meta)) (next-key-is-quoted nil))) - (eval (macroexpand-all + (eval (macroexpand-all;FIXME: Why macroexpand-all? `(progn (defun ,(intern (concat "ergoemacs-command-loop--" (symbol-name (nth 0 arg () ,(format "Ergoemacs function to allow %s to be the emacs modifiers" (nth 1 arg)) @@ -1656,7 +1656,7 @@ instead of `format'." (when (eq ergoemacs-message-level ergoemacs-command-loop--spinner-display) (let* ((string (or (and (listp string) (eq (car string) 'quote) - (eval string)) + (cadr string)) string)) (rest (or (and (listp string) (concat " " (apply #'format (apply #'ergoemacs-key-description--unicode-char string) args))) diff --git a/ergoemacs-translate.el b/ergoemacs-translate.el index cbb1dc6..d4fcc1e 100644 --- a/ergoemacs-translate.el +++ b/ergoemacs-translate.el @@ -751,8 +751,9 @@ When NAME is a symbol, setup the translation function for the symbol." ,(concat "Ergoemacs local map for translation :" name-str " while completing a key sequence.")) - (define-obsolete-variable-alias ',(intern (concat "ergoemacs-" name-str "-translation-local-map") "Ergoemacs-v5.16") - ',(intern (concat "ergoemacs-translate--" name-str "-map")) + (define-obsolete-variable-alias ',(intern (concat "ergoemacs-" name-str "-translation-local-map")) + ',(intern (concat "ergoemacs-translate--" name-str "-map")) +"Ergoemacs-v5.16" (ergoemacs-map-properties--label-map (intern (concat "ergoemacs-translate--" name-str "-map")) t) (ergoemacs (symbol-value (intern (concat "ergoemacs-translate--" name-str "-map"))) :only-local-modifications-p t) ;;
[elpa] externals/ergoemacs-mode f3f4bf0 75/87: Revert "Merge remote-tracking branch 'elpa/externals/ergoemacs-mode'"
branch: externals/ergoemacs-mode commit f3f4bf066d7453efa7b55b85fb46bd3aa4bab848 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Revert "Merge remote-tracking branch 'elpa/externals/ergoemacs-mode'" This reverts commit b61ece84cfbbe4f47de2e57ae42c0511068b8df3, reversing changes made to ad3ec45ebbfdfaca052253c550102fd665b3bd1b. --- .gitignore | 3 - ergoemacs-command-loop.el | 33 +++-- ergoemacs-component.el | 33 ++--- ergoemacs-functions.el | 43 +++ ergoemacs-layouts.el| 34 +++-- ergoemacs-lib.el| 64 + ergoemacs-macros.el | 307 ++-- ergoemacs-map-properties.el | 25 ++-- ergoemacs-map.el| 12 +- ergoemacs-mode.el | 36 +++--- ergoemacs-test.el | 255 +++- ergoemacs-theme-engine.el | 12 +- ergoemacs-themes.el | 7 +- ergoemacs-translate.el | 32 ++--- 14 files changed, 450 insertions(+), 446 deletions(-) diff --git a/.gitignore b/.gitignore index aa6f6df..be4d2c4 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,6 @@ *~ ~* out/* -ChangeLog -*-autoloads.el -*-pkg.el *.elc \#*\# .\#* diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index ee39cc8..8628dbb 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1,6 +1,6 @@ ;;; ergoemacs-command-loop.el --- Keyboard translation functions -*- lexical-binding: t -*- -;; Copyright © 2013-2018 Free Software Foundation, Inc. +;; Copyright © 2013-2016 Free Software Foundation, Inc. ;; Filename: ergoemacs-command-loop.el ;; Description: @@ -106,11 +106,11 @@ "Determines if mark was active before ergoemacs command loop.") -(define-obsolete-variable-alias 'ergoemacs-universal-fns 'ergoemacs-command-loop--universal-functions "Ergoemacs-v5.16") - (defvar ergoemacs-command-loop--universal-functions '(universal-argument ergoemacs-universal-argument ergoemacs-command-loop--universal-argument) "List of `ergoemacs-mode' recognized functions.") +(define-obsolete-variable-alias 'ergoemacs-universal-fns 'ergoemacs-command-loop--universal-functions) + (defvar ergoemacs-command-loop--next-key-hash (let ((hash (make-hash-table))) (puthash 'event-apply-shift-modifier (list '(shift) :force) hash) @@ -129,14 +129,14 @@ (defvar ergoemacs-command-loop--help-last-key nil) -(define-obsolete-variable-alias 'ergoemacs-read-key-delay 'ergoemacs-command-loop--decode-event-delay "Ergoemacs-v5.16") - (defvar ergoemacs-command-loop--decode-event-delay 0.01 "Timeout for `ergoemacs-command-loop--decode-event'. This is to distinguish events in a terminal, like xterm. It needs to be less than `ergoemacs-command-loop-blink-rate'.") +(define-obsolete-variable-alias 'ergoemacs-read-key-delay 'ergoemacs-command-loop--decode-event-delay) + (defvar ergoemacs-command-loop--history nil "History of command loop locations.") @@ -369,7 +369,7 @@ Ergoemacs-mode sets up: :ctl-to-alt :unchorded :normal." (next-key-is-control-meta (control meta)) (next-key-is-meta-control (control meta)) (next-key-is-quoted nil))) - (eval (macroexpand-all;FIXME: Why macroexpand-all? + (eval (macroexpand-all `(progn (defun ,(intern (concat "ergoemacs-command-loop--" (symbol-name (nth 0 arg () ,(format "Ergoemacs function to allow %s to be the emacs modifiers" (nth 1 arg)) @@ -384,8 +384,7 @@ Ergoemacs-mode sets up: :ctl-to-alt :unchorded :normal." (message "Dummy Function for %s" (ergoemacs :modifier-desc ,(nth 1 arg (defalias ',(intern (concat "ergoemacs-read-key-force-" (symbol-name (nth 0 arg ',(intern (concat "ergoemacs-command-loop--force-" (symbol-name (nth 0 arg) (puthash ',(intern (concat "ergoemacs-command-loop--force-" (symbol-name (nth 0 arg '(,(nth 1 arg) :force) ergoemacs-command-loop--next-key-hash) -(puthash ',(intern (concat "ergoemacs-read-key-force-" (symbol-name (nth 0 arg '(,(nth 1 arg) :force) ergoemacs-command-loop--next-key-hash))) -t)) +(puthash ',(intern (concat "ergoemacs-read-key-force-" (symbol-name (nth 0 arg '(,(nth 1 arg) :force) ergoemacs-command-loop--next-key-hash) (defvar ergoemacs-last-command-event nil "`ergoemacs-mode' command loop last read command.") @@ -1648,10 +1647,10 @@ instead of `format'." (apply #'ergoemacs-command-loop--spinner-display args)) (setq ergoemacs-command-loop--spinner-display :max))) (when (eq ergoemacs-message-level ergoemacs-command-loop--spinner-display) - (let* ((string (if (and (listp string) - (eq (car string) 'quote)) - (cadr string) -
[elpa] externals/ergoemacs-mode c7907aa 69/87: In term-mode, modify both term-raw-map and current-local-map
branch: externals/ergoemacs-mode commit c79075450a9453ab4149305b156412822ab2 Author: Walter Landry Commit: Walter Landry In term-mode, modify both term-raw-map and current-local-map Fixes #499 --- ergoemacs-map.el | 11 ++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/ergoemacs-map.el b/ergoemacs-map.el index 1e758cd..8702952 100644 --- a/ergoemacs-map.el +++ b/ergoemacs-map.el @@ -1020,7 +1020,16 @@ When INI is non-nil, add conditional maps to `minor-mode-map-alist'." (setq ergoemacs-map--breadcrumb (format "%s" major-mode)) (when (eq major-mode 'ess-mode) (setq ergoemacs-map--breadcrumb (format "ess-mode-%s" ess-language))) -(use-local-map (ergoemacs current-local-map)) + ;; term-mode has a term-raw-map that it checks against + ;; current-local-map to see if it is in line-mode or + ;; char-mode. So we have to modify both term-raw-map and + ;; current-local-map to be able to switch. + (if (not (eq major-mode 'term-mode)) +(use-local-map (ergoemacs current-local-map)) + (progn + (setq term-raw-map (ergoemacs term-raw-map)) + (use-local-map term-raw-map)) + ) (setq ergoemacs-map--breadcrumb "")) (when (and (minibufferp) ergoemacs-read-from-minibuffer-map) ;; Preserve bindings for space, such as when completing a filename
[elpa] externals/ergoemacs-mode f9d6e3f 87/87: Bring over some more emacs mainatiner fixes
branch: externals/ergoemacs-mode commit f9d6e3f7d99b877a63fa6f5ab61e6ba05a7075c8 Author: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Commit: Matthew Fidler <514778+mattfid...@users.noreply.github.com> Bring over some more emacs mainatiner fixes --- ergoemacs-macros.el | 26 +- ergoemacs-map-properties.el | 4 ++-- ergoemacs-mode.el | 2 +- ergoemacs-test.el | 2 +- ergoemacs-translate.el | 3 ++- 5 files changed, 19 insertions(+), 18 deletions(-) diff --git a/ergoemacs-macros.el b/ergoemacs-macros.el index 9d87bee..1305dba 100644 --- a/ergoemacs-macros.el +++ b/ergoemacs-macros.el @@ -852,29 +852,29 @@ When arg1 can be a property. The following properties are supported: (arg3 (nth 2 args)) (arg4 (nth 3 args))) (cond - ((and arg1 (symbolp arg1) (eq arg1 :w32-long-file-name)) + ((eq arg1 :w32-long-file-name) (if (fboundp 'w32-long-file-name) `(w32-long-file-name ,@(cdr args)) `nil)) - ((and arg1 (symbolp arg1) (eq arg1 :w32-shell-open-files)) + ((eq arg1 :w32-shell-open-files) (if (fboundp 'w32-shell-execute) `(dolist (f-path ,@(cdr args)) (w32-shell-execute "open" (replace-regexp-in-string "/" "\\" f-path t t))) `nil)) - ((and arg1 (symbolp arg1) (eq arg1 :w32-shell-execute)) + ((eq arg1 :w32-shell-execute) (if (fboundp 'w32-shell-execute) `(w32-shell-execute ,@(cdr args)) `nil)) - ((and arg1 (symbolp arg1) (eq arg1 :reset-prefix)) + ((eq arg1 :reset-prefix) (if (<= 25 emacs-major-version) `(prefix-command-preserve-state) `(reset-this-command-lengths))) - ((and arg1 (symbolp arg1) (eq arg1 :set-selection)) + ((eq arg1 :set-selection) (if (<= 25 emacs-major-version) `(gui-set-selection ,@(cdr args)) `(x-set-selection ,@(cdr args - ((and arg1 (symbolp arg1) (eq arg1 :width)) + ((eq arg1 :width) `(ergoemacs-mode--eval-width ,arg2)) ((and arg1 (symbolp arg1) (eq arg1 :mode-if) arg2) `(ergoemacs-mode-line--if ,arg2 ,arg3 ,arg4)) @@ -884,7 +884,7 @@ When arg1 can be a property. The following properties are supported: `(ergoemacs-mode-line--sep 'right ,@(cdr args))) ((and arg1 (symbolp arg1) (memq arg1 '(:sep-left :separator-left))) `(ergoemacs-mode-line--sep 'left ,@(cdr args))) - ((and arg1 (symbolp arg1) (eq arg1 :custom-p) (symbolp arg2)) + ((eq arg1 :custom-p) (symbolp arg2) (if (fboundp 'custom-variable-p) `(custom-variable-p ,arg2) `(user-variable-p ,arg2))) @@ -894,13 +894,13 @@ When arg1 can be a property. The following properties are supported: `(ergoemacs-command-loop--spinner-display ,@(cdr args))) ((and arg1 (symbolp arg1) (eq arg1 :define-key) arg2 arg3) `(ergoemacs-translate--define-key ,arg2 ,arg3 ,arg4)) - ((and arg1 (symbolp arg1) (eq arg1 :ignore-global-changes-p) (not arg2) (not arg3)) + ((eq arg1 :ignore-global-changes-p) (not arg2) (not arg3) `(ergoemacs-map-properties--ignore-global-changes-p)) - ((and arg1 (symbolp arg1) (eq arg1 :user-before) (not arg2) (not arg3)) + ((eq arg1 :user-before) (not arg2) (not arg3) `(ergoemacs-map-properties--before-ergoemacs)) - ((and arg1 (symbolp arg1) (eq arg1 :user-after) (not arg2) (not arg3)) + ((eq arg1 :user-after) (not arg2) (not arg3) `(ergoemacs-map-properties--before-ergoemacs t)) - ((and arg1 (symbolp arg1) (eq arg1 :modal-p)) + ((eq arg1 :modal-p) `(ergoemacs-command-loop--modal-p)) ((and arg1 (symbolp arg1) (eq arg1 :combine) arg2 arg3) `(ergoemacs-command-loop--combine ,arg2 ,arg3)) @@ -909,9 +909,9 @@ When arg1 can be a property. The following properties are supported: ((and arg1 (symbolp arg1) (eq arg1 :modifier-desc) arg2) `(mapconcat #'ergoemacs-key-description--modifier ,arg2 "")) - ((and arg1 (symbolp arg1) (eq arg1 :current-version)) + ((eq arg1 :current-version) `(ergoemacs-theme--get-version)) - ((and arg1 (symbolp arg1) (eq arg1 :current-theme)) + ((eq arg1 :current-theme) `(or (and ergoemacs-theme (stringp ergoemacs-theme) ergoemacs-theme) (and ergoemacs-theme (symbolp ergoemacs-theme) (symbol-name ergoemacs-theme)) "standard")) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index 9d5bcc2..bee84a5 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -561,7 +561,7 @@ These keymaps are saved in `ergoemacs-map-properties--hook-map-hash'." (unless (equal icicle-search-key-prefix "\M-s\M-s") (ergoemacs :define-key new-map icicle-search-key-prefix icicle-search-map)) (when (and (boundp 'icicle-top-level-key-bindings) (custom-variable-p 'icicle-top-level-key-bindings)) - (setq standard (
[elpa] externals/setup 7e3d025 05/25: Update documentation for :option and :local-set
branch: externals/setup commit 7e3d025823ae3c32ed39d06bb74462d3aed4158e Author: Philip K Commit: Philip K Update documentation for :option and :local-set --- setup.el | 29 + 1 file changed, 21 insertions(+), 8 deletions(-) diff --git a/setup.el b/setup.el index 8f0017b..1bcc501 100644 --- a/setup.el +++ b/setup.el @@ -346,10 +346,15 @@ the first FEATURE." `(customize-set-variable ',name ,val "Modified by `setup'")) :documentation "Set the option NAME to VAL. NAME may be a symbol, or a cons-cell. If NAME is a cons-cell, it -will use the car value to modify the behaviour. If NAME has the -form (append VAR), VAL is appended to VAR. If NAME has the -form (prepend VAR), VAL is prepended to VAR. If NAME has the -form (remove VAR), VAL is removed from VAR." +will use the car value to modify the behaviour. These forms are +supported: + +(append VAR)Assuming VAR designates a list, add VAL as its last +element, unless it is already member of the list. + +(prepend VAR) Assuming VAR designates a list, add VAL to the +beginning, unless it is already member of the +list." :debug '(sexp form) :repeatable t) @@ -385,10 +390,18 @@ form (remove VAR), VAL is removed from VAR." `(add-hook setup-hook (lambda () (setq-local ,name ,val :documentation "Set the value of NAME to VAL in buffers of the current mode. NAME may be a symbol, or a cons-cell. If NAME is a cons-cell, it -will use the car value to modify the behaviour. If NAME has the -form (append VAR), VAL is appended to VAR. If NAME has the -form (prepend VAR), VAL is prepended to VAR. If NAME has the -form (remove VAR), VAL is removed from VAR." +will use the car value to modify the behaviour. These forms are +supported: + +(append VAR)Assuming VAR designates a list, add VAL as its last +element, unless it is already member of the list. + +(prepend VAR) Assuming VAR designates a list, add VAL to the +beginning, unless it is already member of the +list. + +(remove VAR)Assuming VAR designates a list, remove all instances +of VAL." :debug '(sexp form) :repeatable t)
[elpa] externals/setup f764229 15/25: Explain how :with-feature sets an implicit mode
branch: externals/setup commit f764229a02526179bad6bc49c468c523f9cd7be5 Author: Philip K Commit: Philip K Explain how :with-feature sets an implicit mode --- setup.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/setup.el b/setup.el index 175c45c..16b2d27 100644 --- a/setup.el +++ b/setup.el @@ -215,7 +215,9 @@ If not given, it is assumed nothing is evaluated." (intern (format "%s-mode" feature))) ,@body)) `(progn ,@body))) - :documentation "Change the FEATURE that BODY is configuring." + :documentation "Change the FEATURE that BODY is configuring. +This macro also declares a current mode by appending \"-mode\" to +FEATURE, unless it already ends with \"-mode\"." :debug '(sexp setup) :indent 1)
[elpa] externals/setup 439b4a8 02/25: Raise an error if lexical binding is not enabled
branch: externals/setup commit 439b4a89c76c01d0127ee1cdcad9f9493804a525 Author: Philip K Commit: Philip K Raise an error if lexical binding is not enabled --- setup.el | 2 ++ 1 file changed, 2 insertions(+) diff --git a/setup.el b/setup.el index 7c67546..20b3c7c 100644 --- a/setup.el +++ b/setup.el @@ -106,6 +106,8 @@ will otherwise just be evaluated as is. NAME may also be a macro, if it can provide a symbol." (declare (debug (&rest &or [symbolp sexp] form)) (indent defun)) + (unless lexical-binding +(error "The `setup' macro requires lexical binding")) (when (consp name) (push name body) (let ((shorthand (get (car name) 'setup-shorthand)))
[elpa] externals/setup 7562f2f 12/25: Prevent :option values from being saved in the user theme
branch: externals/setup commit 7562f2fa38c64e0c22693de0edd8bf30631f13dc Author: Philip K Commit: Philip K Prevent :option values from being saved in the user theme This tells customize not to create a duplicate custom-set-variables block with the customized value. --- setup.el | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.el b/setup.el index c53a821..37f5670 100644 --- a/setup.el +++ b/setup.el @@ -363,7 +363,8 @@ the first FEATURE." ((error "Invalid option %S" name))) (macroexp-progn (append (and load-p `((custom-load-symbol ',name))) - `((customize-set-variable ',name ,val "Modified by `setup'")) + `((customize-set-variable ',name ,val "Modified by `setup'") + (custom-push-theme 'theme-value ',name 'user 'reset)) :documentation "Set the option NAME to VAL. NAME may be a symbol, or a cons-cell. If NAME is a cons-cell, it will use the car value to modify the behaviour. These forms are
[elpa] externals/setup updated (7a78f66 -> 2503ad0)
monnier pushed a change to branch externals/setup. from 7a78f66 Consistently use symbol-value instead of eval new 669f0fb Drop (remove ...) form for user options new 439b4a8 Raise an error if lexical binding is not enabled new a77d9f2 Don't apply kbd to symbols in :global, :bind, :unbind and :rebind new ec23802 Check for duplicate elements with append/remove new 7e3d025 Update documentation for :option and :local-set new 5e201d7 Use custom-load-symbol for modifying :option moderations new e1d51a3 Add (remove VAR) form for :option new 7699c78 Reindent commentary examples new ccf2ebf Copy commentary changes to README new c707965 Handle symbols in :global, :bind, :unbind and :rebind new 43092c2 Mention if no local macros are defined in setup docstring new 7562f2f Prevent :option values from being saved in the user theme new df6f6eb Add note on modifying option names new 9a67209 Always call custom-load-symbol before customizing an option new f764229 Explain how :with-feature sets an implicit mode new f7d5906 Replace customize-set-variable with the necessary parts new ea52eb1 Add note that :option does not manipulate user theme. new 5728369 Fix shell example in README and Commentary section new b7aa594 Allow :hook-into to also use hook names new d44d333 Add :load-from macro new 757de04 Replace yasnippet example with dired new 32e4f7f Fix syntax in examples new 22b5312 Add :file-match macro new bc0edb4 Handle argument list for :load-from properly new 2503ad0 Expand load path for :load-from Summary of changes: README.md | 39 +-- setup.el | 223 +++--- 2 files changed, 160 insertions(+), 102 deletions(-)
[elpa] externals/setup 669f0fb 01/25: Drop (remove ...) form for user options
branch: externals/setup commit 669f0fb0aa73b1ed39108564bfefd6708cda7325 Author: Philip K Commit: Philip K Drop (remove ...) form for user options --- setup.el | 6 -- 1 file changed, 6 deletions(-) diff --git a/setup.el b/setup.el index 9ffb1f5..7c67546 100644 --- a/setup.el +++ b/setup.el @@ -340,12 +340,6 @@ the first FEATURE." (funcall (or (get ',name 'custom-get) #'symbol-value) ',name - ((eq (car-safe name) 'remove) - (setq name (cadr name) - val `(remove ,val - (funcall (or (get ',name 'custom-get) - #'symbol-value) - ',name ((error "Invalid option %S" name))) `(customize-set-variable ',name ,val "Modified by `setup'")) :documentation "Set the option NAME to VAL.
[elpa] externals/setup 43092c2 11/25: Mention if no local macros are defined in setup docstring
branch: externals/setup commit 43092c20223605b0ef5b745f19e90e574f72f216 Author: Philip K Commit: Philip K Mention if no local macros are defined in setup docstring --- setup.el | 28 +++- 1 file changed, 15 insertions(+), 13 deletions(-) diff --git a/setup.el b/setup.el index b1a4724..c53a821 100644 --- a/setup.el +++ b/setup.el @@ -82,19 +82,21 @@ Do not modify this variable by hand. Instead use "Return a docstring for `setup'." (with-temp-buffer (insert (documentation (symbol-function 'setup) 'raw) -"\n\n" -"Within BODY, `setup' provides these local macros:") -(dolist (sym (sort (mapcar #'car setup-macros) #'string-lessp)) - (newline 2) - (let ((sig (mapcar - (lambda (arg) -(if (string-match "\\`&" (symbol-name arg)) -arg - (intern (upcase (symbol-name arg) - (get sym 'setup-signature -(insert (format " - %s\n\n" (cons sym sig)) -(or (get sym 'setup-documentation) -"No documentation." +"\n\n") +(if (null setup-macros) +(insert "No local macros are defined.") + (insert "Within BODY, `setup' provides these local macros:") + (dolist (sym (sort (mapcar #'car setup-macros) #'string-lessp)) +(newline 2) +(let ((sig (mapcar +(lambda (arg) + (if (string-match "\\`&" (symbol-name arg)) + arg +(intern (upcase (symbol-name arg) +(get sym 'setup-signature + (insert (format " - %s\n\n" (cons sym sig)) + (or (get sym 'setup-documentation) + "No documentation.") (buffer-string))) ;;;###autoload
[elpa] externals/setup ccf2ebf 09/25: Copy commentary changes to README
branch: externals/setup commit ccf2ebfcc38597111acdc9a4fa80be288ca2f426 Author: Philip K Commit: Philip K Copy commentary changes to README --- README.md | 12 ++-- 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 8cd4142..77f0135 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,8 @@ example, these macros: ~~~elisp (setup shell (let ((key "C-c s")) -(:global (key shell)) -(:bind (key bury-buffer +(:global key shell) +(:bind key bury-buffer))) (setup (:package paredit) (:hide-mode) @@ -18,7 +18,7 @@ example, these macros: (:with-mode yas-minor-mode (:rebind "" yas-expand) (:option yas-prompt-functions '(yas-completing-prompt) -yas-wrap-around-region t) + yas-wrap-around-region t) (:hook-into prog-mode))) ~~~ @@ -27,7 +27,7 @@ will be replaced with the functional equivalent of ~~~elisp (global-set-key (kbd "C-c s") #'shell) (with-eval-after-load 'shell - (define-key shell-mode-map (kbd "C-c s") #'bury-buffer)) + (define-key shell-mode-map (kbd "C-c s") #'bury-buffer)) (unless (package-install-p 'paredit) (package-install 'paredit)) @@ -42,9 +42,9 @@ will be replaced with the functional equivalent of (with-eval-after-load 'yasnippet (dolist (key (where-is-internal 'yas-expand yas-minor-mode-map)) (define-key yas-minor-mode-map key nil)) - (define-key yas-minor-mode-map "" #'yas-expand) + (define-key yas-minor-mode-map (kbd "") #'yas-expand)) (customize-set-variable 'yas-prompt-functions '(yas-completing-prompt)) -(customize-set-variable 'yas-wrap-around-region t)) +(customize-set-variable 'yas-wrap-around-region t) (add-hook 'prog-mode-hook #'yas-minor-mode) ~~~
[elpa] externals/setup ec23802 04/25: Check for duplicate elements with append/remove
branch: externals/setup commit ec23802d4c88a3f02ddf5660ee45a5db3e2c6b19 Author: Philip K Commit: Philip K Check for duplicate elements with append/remove --- setup.el | 36 ++-- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/setup.el b/setup.el index 07421f7..8f0017b 100644 --- a/setup.el +++ b/setup.el @@ -324,16 +324,24 @@ the first FEATURE." (cond ((symbolp name) t) ((eq (car-safe name) 'append) (setq name (cadr name) - val `(append (funcall (or (get ',name 'custom-get) - #'symbol-value) - ',name) - (list ,val + val (let ((sym (gensym))) + `(let ((,sym ,val) + (list (funcall (or (get ',name 'custom-get) + #'symbol-value) + ',name))) + (if (member ,sym list) + list +(append list (list ,sym))) ((eq (car-safe name) 'prepend) (setq name (cadr name) - val `(cons ,val -(funcall (or (get ',name 'custom-get) - #'symbol-value) - ',name + val (let ((sym (gensym))) + `(let ((,sym ,val) + (list (funcall (or (get ',name 'custom-get) + #'symbol-value) + ',name))) + (if (member ,sym list) + list +(cons ,sym list)) ((error "Invalid option %S" name))) `(customize-set-variable ',name ,val "Modified by `setup'")) :documentation "Set the option NAME to VAL. @@ -358,10 +366,18 @@ form (remove VAR), VAL is removed from VAR." (cond ((symbolp name) t) ((eq (car-safe name) 'append) (setq name (cadr name) - val `(append ,name (list val + val (let ((sym (gensym))) + `(let ((,sym ,val) (list ,name)) + (if (member ,sym list) + list +(append list (list ,sym))) ((eq (car-safe name) 'prepend) (setq name (cadr name) - val `(cons ,val ,name))) + val (let ((sym (gensym))) + `(let ((,sym ,val) (list ,name)) + (if (member ,sym list) + list +(cons ,sym list)) ((eq (car-safe name) 'remove) (setq name (cadr name) val `(remove ,val ,name)))
[elpa] externals/setup ea52eb1 17/25: Add note that :option does not manipulate user theme.
branch: externals/setup commit ea52eb1c3d0a030c5d3d03cf782fc827c9c27309 Author: Philip K Commit: Philip K Add note that :option does not manipulate user theme. --- setup.el | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/setup.el b/setup.el index 52d37ed..b460486 100644 --- a/setup.el +++ b/setup.el @@ -381,7 +381,9 @@ supported: Note that if the value of an option is modified partially by append, prepend, remove, one should ensure that the default value -has been loaded." +has been loaded. Also keep in mind that user options customized +with this macro are not added to the \"user\" theme, and will +therefore not be stored in `custom-set-variables' blocks." :debug '(sexp form) :repeatable t)
[elpa] externals/setup c707965 10/25: Handle symbols in :global, :bind, :unbind and :rebind
branch: externals/setup commit c7079651d6bc17192238d451648543a5a91f53ab Author: Philip K Commit: Philip K Handle symbols in :global, :bind, :unbind and :rebind --- setup.el | 16 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/setup.el b/setup.el index 82463cb..b1a4724 100644 --- a/setup.el +++ b/setup.el @@ -266,7 +266,9 @@ the first FEATURE." (setup-define :global (lambda (key command) `(global-set-key - ,(if (stringp key) (kbd key) key) + ,(cond ((stringp key) (kbd key)) + ((symbolp key) `(kbd ,key)) + (t key)) #',command)) :documentation "Globally bind KEY to COMMAND." :debug '(form sexp) @@ -275,7 +277,9 @@ the first FEATURE." (setup-define :bind (lambda (key command) `(define-key (symbol-value setup-map) - ,(if (stringp key) (kbd key) key) + ,(cond ((stringp key) (kbd key)) + ((symbolp key) `(kbd ,key)) + (t key)) #',command)) :documentation "Bind KEY to COMMAND in current map." :after-loaded t @@ -285,7 +289,9 @@ the first FEATURE." (setup-define :unbind (lambda (key) `(define-key (symbol-value setup-map) - ,(if (stringp key) (kbd key) key) + ,(cond ((stringp key) (kbd key)) + ((symbolp key) `(kbd ,key)) + (t key)) nil)) :documentation "Unbind KEY in current map." :after-loaded t @@ -298,7 +304,9 @@ the first FEATURE." (dolist (key (where-is-internal ',command (symbol-value setup-map))) (define-key (symbol-value setup-map) key nil)) (define-key (symbol-value setup-map) - ,(if (stringp key) (kbd key) key) + ,(cond ((stringp key) (kbd key)) +((symbolp key) `(kbd ,key)) +(t key)) #',command))) :documentation "Unbind the current key for COMMAND, and bind it to KEY." :after-loaded t
[elpa] externals/setup 9a67209 14/25: Always call custom-load-symbol before customizing an option
branch: externals/setup commit 9a67209396f36c2bfaf3009c25b27a413d4f4757 Author: Philip K Commit: Philip K Always call custom-load-symbol before customizing an option --- setup.el | 66 ++-- 1 file changed, 31 insertions(+), 35 deletions(-) diff --git a/setup.el b/setup.el index db937a5..175c45c 100644 --- a/setup.el +++ b/setup.el @@ -330,41 +330,37 @@ the first FEATURE." (setup-define :option (lambda (name val) -(let (load-p) - (cond ((symbolp name) t) -((eq (car-safe name) 'append) - (setq name (cadr name) - val (let ((sym (gensym))) - `(let ((,sym ,val) -(list (funcall (or (get ',name 'custom-get) - #'symbol-value) - ',name))) -(if (member ,sym list) -list - (append list (list ,sym) - load-p t)) -((eq (car-safe name) 'prepend) - (setq name (cadr name) - val (let ((sym (gensym))) - `(let ((,sym ,val) -(list (funcall (or (get ',name 'custom-get) - #'symbol-value) - ',name))) -(if (member ,sym list) -list - (cons ,sym list - load-p t)) -((eq (car-safe name) 'remove) - (setq name (cadr name) - val `(remove ,name (funcall (or (get ',name 'custom-get) - #'symbol-value) - ',name)) - load-p t)) -((error "Invalid option %S" name))) - (macroexp-progn - (append (and load-p `((custom-load-symbol ',name))) - `((customize-set-variable ',name ,val "Modified by `setup'") - (custom-push-theme 'theme-value ',name 'user 'reset)) +(cond ((symbolp name) t) + ((eq (car-safe name) 'append) + (setq name (cadr name) + val (let ((sym (gensym))) + `(let ((,sym ,val) + (list (funcall (or (get ',name 'custom-get) + #'symbol-value) + ',name))) + (if (member ,sym list) + list +(append list (list ,sym))) + ((eq (car-safe name) 'prepend) + (setq name (cadr name) + val (let ((sym (gensym))) + `(let ((,sym ,val) + (list (funcall (or (get ',name 'custom-get) + #'symbol-value) + ',name))) + (if (member ,sym list) + list +(cons ,sym list)) + ((eq (car-safe name) 'remove) + (setq name (cadr name) + val `(remove ,name (funcall (or (get ',name 'custom-get) + #'symbol-value) + ',name + ((error "Invalid option %S" name))) +`(progn + (custom-load-symbol ',name) + (customize-set-variable ',name ,val "Modified by `setup'") + (custom-push-theme 'theme-value ',name 'user 'reset))) :documentation "Set the option NAME to VAL. NAME may be a symbol, or a cons-cell. If NAME is a cons-cell, it will use the car value to modify the behaviour. These forms are
[elpa] externals/setup b7aa594 19/25: Allow :hook-into to also use hook names
branch: externals/setup commit b7aa594088c88b67de47d5b7a9e45d944a8465ff Author: Philip K Commit: Philip K Allow :hook-into to also use hook names --- setup.el | 5 - 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/setup.el b/setup.el index 779448a..29757bb 100644 --- a/setup.el +++ b/setup.el @@ -325,7 +325,10 @@ the first FEATURE." (setup-define :hook-into (lambda (mode) -`(add-hook ',(intern (concat (symbol-name mode) "-hook")) +`(add-hook ',(let ((name (symbol-name mode))) + (if (string-match-p "-hook\\'" name) + mode + (intern (concat name "-hook" setup-mode)) :documentation "Add current mode to HOOK." :repeatable t)
[elpa] externals/setup d44d333 20/25: Add :load-from macro
branch: externals/setup commit d44d3336daed8a31bfa03d28925e57b31bbf1e7e Author: Philip K Commit: Philip K Add :load-from macro --- setup.el | 8 1 file changed, 8 insertions(+) diff --git a/setup.el b/setup.el index 29757bb..18527ab 100644 --- a/setup.el +++ b/setup.el @@ -497,6 +497,14 @@ the first PACKAGE." :debug '(form) :repeatable t) +(setup-define :load-from + (lambda (path) +`(add-to-list 'load-path ,path)) + :documentation "Add PATH to load path. +This macro can be used as HEAD, and it will replace itself with +the nondirectory part of PATH." + :shorthand (lambda (path) (intern (file-name-nondirectory path + (setup-define :when-loaded (lambda (&rest body) `(progn ,@body)) :documentation "Evaluate BODY after the current feature has been loaded.
[elpa] externals/setup f7d5906 16/25: Replace customize-set-variable with the necessary parts
branch: externals/setup commit f7d5906b74ce20fa939e909a9fde76e906c6d617 Author: Philip K Commit: Philip K Replace customize-set-variable with the necessary parts --- setup.el | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/setup.el b/setup.el index 16b2d27..52d37ed 100644 --- a/setup.el +++ b/setup.el @@ -361,8 +361,9 @@ the first FEATURE." ((error "Invalid option %S" name))) `(progn (custom-load-symbol ',name) - (customize-set-variable ',name ,val "Modified by `setup'") - (custom-push-theme 'theme-value ',name 'user 'reset))) + (funcall (or (get ',name 'custom-set) #'set-default) +',name ,val) + (put ',name 'variable-comment "Modified by `setup'"))) :documentation "Set the option NAME to VAL. NAME may be a symbol, or a cons-cell. If NAME is a cons-cell, it will use the car value to modify the behaviour. These forms are
[elpa] externals/setup 22b5312 23/25: Add :file-match macro
branch: externals/setup commit 22b531263be38df9fedf83fd617c12f1f5b08ec2 Author: Philip K Commit: Philip K Add :file-match macro --- setup.el | 7 +++ 1 file changed, 7 insertions(+) diff --git a/setup.el b/setup.el index 75ad046..d2b786e 100644 --- a/setup.el +++ b/setup.el @@ -502,6 +502,13 @@ This macro can be used as HEAD, and it will replace itself with the nondirectory part of PATH." :shorthand (lambda (path) (intern (file-name-nondirectory path +(setup-define :file-match + (lambda (pat) +`(add-to-list 'auto-mode-alist (cons ,pat setup-mode))) + :documentation "Associate the current mode with files that match PAT." + :debug '(form) + :repeatable t) + (setup-define :when-loaded (lambda (&rest body) `(progn ,@body)) :documentation "Evaluate BODY after the current feature has been loaded.
[elpa] externals/setup 757de04 21/25: Replace yasnippet example with dired
branch: externals/setup commit 757de049f3272f206ee56bacd9bc973b9cc3e8ca Author: Philip K Commit: Philip K Replace yasnippet example with dired --- README.md | 31 ++- setup.el | 31 ++- 2 files changed, 28 insertions(+), 34 deletions(-) diff --git a/README.md b/README.md index a97a7ff..00e304a 100644 --- a/README.md +++ b/README.md @@ -10,16 +10,15 @@ example, these macros: (:global key shell) (:bind key bury-buffer))) +(setup dired + (:also-load dired-x) + (:option (prepend dired-guess-shell-alist-user) '("" "xdg-open") + dired-dwim-target t") + (:hook auto-revert-mode)) + (setup (:package paredit) (:hide-mode) (:hook-into scheme-mode lisp-mode)) - -(setup (:package yasnippet) - (:with-mode yas-minor-mode -(:rebind "" yas-expand) -(:option yas-prompt-functions '(yas-completing-prompt) - yas-wrap-around-region t) -(:hook-into prog-mode))) ~~~ will be replaced with the functional equivalent of @@ -29,6 +28,14 @@ will be replaced with the functional equivalent of (with-eval-after-load 'shell (define-key shell-mode-map (kbd "C-c s") #'bury-buffer)) +(with-eval-after-load 'dired + (require 'dired-x)) +(customize-set-variable 'dired-guess-shell-alist-user +(cons '("" "xdg-open") + dired-guess-shell-alist-user)) +(customize-set-variable 'dired-dwim-target t) +(add-hook 'dired-mode-hook #'auto-revert-mode) + (unless (package-install-p 'paredit) (package-install 'paredit)) (setq minor-mode-alist @@ -36,16 +43,6 @@ will be replaced with the functional equivalent of minor-mode-alist)) (add-hook 'scheme-mode-hook #'paredit-mode) (add-hook 'lisp-mode-hook #'paredit-mode) - -(unless (package-install-p 'yasnippet) - (package-install 'yasnippet)) -(with-eval-after-load 'yasnippet - (dolist (key (where-is-internal 'yas-expand yas-minor-mode-map)) -(define-key yas-minor-mode-map key nil)) - (define-key yas-minor-mode-map (kbd "") #'yas-expand)) -(customize-set-variable 'yas-prompt-functions '(yas-completing-prompt)) -(customize-set-variable 'yas-wrap-around-region t) -(add-hook 'prog-mode-hook #'yas-minor-mode) ~~~ Additional "keywords" can be defined using `setup-define`. All known diff --git a/setup.el b/setup.el index 18527ab..90cded2 100644 --- a/setup.el +++ b/setup.el @@ -32,16 +32,15 @@ ;;(:global key shell) ;;(:bind key bury-buffer))) ;; +;;(setup dired +;; (:also-load dired-x) +;; (:option (prepend dired-guess-shell-alist-user) '("" "xdg-open") +;; dired-dwim-target t") +;; (:hook auto-revert-mode)) +;; ;;(setup (:package paredit) ;; (:hide-mode) ;; (:hook-into scheme-mode lisp-mode)) -;; -;;(setup (:package yasnippet) -;; (:with-mode yas-minor-mode -;;(:rebind "" yas-expand) -;;(:option yas-prompt-functions '(yas-completing-prompt) -;; yas-wrap-around-region t) -;;(:hook-into prog-mode))) ;; will be replaced with the functional equivalent of @@ -49,6 +48,14 @@ ;;(with-eval-after-load 'shell ;; (define-key shell-mode-map (kbd "C-c s") #'bury-buffer)) ;; +;;(with-eval-after-load 'dired +;; (require 'dired-x)) +;;(customize-set-variable 'dired-guess-shell-alist-user +;;(cons '("" "xdg-open") +;; dired-guess-shell-alist-user)) +;;(customize-set-variable 'dired-dwim-target t) +;;(add-hook 'dired-mode-hook #'auto-revert-mode) +;; ;;(unless (package-install-p 'paredit) ;; (package-install 'paredit)) ;;(setq minor-mode-alist @@ -56,16 +63,6 @@ ;;minor-mode-alist)) ;;(add-hook 'scheme-mode-hook #'paredit-mode) ;;(add-hook 'lisp-mode-hook #'paredit-mode) -;; -;;(unless (package-install-p 'yasnippet) -;; (package-install 'yasnippet)) -;;(with-eval-after-load 'yasnippet -;; (dolist (key (where-is-internal 'yas-expand yas-minor-mode-map)) -;;(define-key yas-minor-mode-map key nil)) -;; (define-key yas-minor-mode-map (kbd "") #'yas-expand)) -;;(customize-set-variable 'yas-prompt-functions '(yas-completing-prompt)) -;;(customize-set-variable 'yas-wrap-around-region t) -;;(add-hook 'prog-mode-hook #'yas-minor-mode) ;; Additional "keywords" can be defined using `setup-define'. All ;; known keywords are documented in the docstring for `setup'.
[elpa] externals/setup 5728369 18/25: Fix shell example in README and Commentary section
branch: externals/setup commit 572836931b2b41a35db871ff576df8875142ba89 Author: Philip K Commit: Philip K Fix shell example in README and Commentary section --- README.md | 2 +- setup.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 77f0135..a97a7ff 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ example, these macros: ~~~elisp (setup shell - (let ((key "C-c s")) + (let ((key (kbd "C-c s"))) (:global key shell) (:bind key bury-buffer))) diff --git a/setup.el b/setup.el index b460486..779448a 100644 --- a/setup.el +++ b/setup.el @@ -28,7 +28,7 @@ ;; For example, these macros: ;;(setup shell -;; (let ((key "C-c s")) +;; (let ((key (kbd "C-c s"))) ;;(:global key shell) ;;(:bind key bury-buffer))) ;;
[elpa] externals/setup 2503ad0 25/25: Expand load path for :load-from
branch: externals/setup commit 2503ad033299f52e0ab11df3e446d2420dc445a0 Author: Philip K Commit: Philip K Expand load path for :load-from --- setup.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.el b/setup.el index 11babe7..8e46680 100644 --- a/setup.el +++ b/setup.el @@ -496,7 +496,7 @@ the first PACKAGE." (setup-define :load-from (lambda (path) -`(add-to-list 'load-path ,path)) +`(add-to-list 'load-path (expand-file-name ,path))) :documentation "Add PATH to load path. This macro can be used as HEAD, and it will replace itself with the nondirectory part of PATH."
[elpa] externals/setup 32e4f7f 22/25: Fix syntax in examples
branch: externals/setup commit 32e4f7fd0ff9821f6df19107e0cdb0c05b77f454 Author: Philip K Commit: Philip K Fix syntax in examples --- README.md | 2 +- setup.el | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 00e304a..81c5ab2 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ example, these macros: (setup dired (:also-load dired-x) (:option (prepend dired-guess-shell-alist-user) '("" "xdg-open") - dired-dwim-target t") + dired-dwim-target t) (:hook auto-revert-mode)) (setup (:package paredit) diff --git a/setup.el b/setup.el index 90cded2..75ad046 100644 --- a/setup.el +++ b/setup.el @@ -35,7 +35,7 @@ ;;(setup dired ;; (:also-load dired-x) ;; (:option (prepend dired-guess-shell-alist-user) '("" "xdg-open") -;; dired-dwim-target t") +;; dired-dwim-target t) ;; (:hook auto-revert-mode)) ;; ;;(setup (:package paredit)
[elpa] externals/ergoemacs-mode 7ba903e4 04/87: Don't grow mouse commands & set this-command before command is called
branch: externals/ergoemacs-mode commit 7ba903e479402bdee44092647a879e023165058a Author: Fidler Commit: Fidler Don't grow mouse commands & set this-command before command is called --- ergoemacs-command-loop.el | 10 +- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/ergoemacs-command-loop.el b/ergoemacs-command-loop.el index da97145..caa886a 100644 --- a/ergoemacs-command-loop.el +++ b/ergoemacs-command-loop.el @@ -1339,10 +1339,10 @@ FN-ARG-P can be nil, :drop-rest or :rest" `(interactive)) ,(when select-window-p '(select-window (posn-window (event-start last-command-event +(ergoemacs-command-loop--execute-modify-command-list ',command) (if ,rest-p (apply ',command last-command-event ,@strip-args) - (,command last-command-event ,@drop-rest)) -(ergoemacs-command-loop--execute-modify-command-list ',command))) + (,command last-command-event ,@drop-rest ((not rest-p) `(lambda ,fn-args @@ -1351,8 +1351,8 @@ FN-ARG-P can be nil, :drop-rest or :rest" `(interactive)) ,(when select-window-p '(select-window (posn-window (event-start last-command-event - (,command last-command-event ,@strip-args) -(ergoemacs-command-loop--execute-modify-command-list ',command)) +(ergoemacs-command-loop--execute-modify-command-list ',command) + (,command last-command-event ,@strip-args)) (defun ergoemacs-command-loop--call-mouse-command (command &optional record-flag keys) "Call a possible mouse COMMAND. @@ -1373,7 +1373,7 @@ The RECORD-FLAG and KEYS arguments are passed to (popup-menu command nil current-prefix-arg)) (t (ignore-errors - (ergoemacs-command-loop--grow-interactive (ergoemacs-command-loop--modify-mouse-command command) record-flag keys) + (call-interactively (ergoemacs-command-loop--modify-mouse-command command) record-flag keys) (defvar ergoemacs-command-loop-describe-key-functions '(describe-key describe-function)
[elpa] externals/ergoemacs-mode f12edbb 02/87: Maybe Fix issue #426
branch: externals/ergoemacs-mode commit f12edbb42f512ebeabcfb0a56e89924c21ddc529 Author: Matthew L. Fidler Commit: Matthew L. Fidler Maybe Fix issue #426 --- ergoemacs-functions.el | 7 --- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/ergoemacs-functions.el b/ergoemacs-functions.el index 310e570..1011215 100644 --- a/ergoemacs-functions.el +++ b/ergoemacs-functions.el @@ -1827,9 +1827,10 @@ level, like in `ido-find-file'. " "Allows return to expand a directory like in `ido-find-file'. This requires `ergoemacs-mode' to be non-nil and `ergoemacs-helm-ido-style-return' to be non-nil." - (let* ((follow (buffer-local-value - 'helm-follow-mode - (get-buffer-create helm-buffer))) + (let* ((follow (and (boundp 'helm-follow-mode) + (buffer-local-value + 'helm-follow-mode + (get-buffer-create helm-buffer (insert-in-minibuffer #'(lambda (fname) (with-selected-window (minibuffer-window)
[elpa] externals/ergoemacs-mode f3dd332 23/87: Revert set-map-list
branch: externals/ergoemacs-mode commit f3dd33289b7af09c34473e64d05bc5158d9cb9e2 Author: Fidler Commit: Fidler Revert set-map-list --- ergoemacs-map-properties.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ergoemacs-map-properties.el b/ergoemacs-map-properties.el index dde51f4..248a033 100644 --- a/ergoemacs-map-properties.el +++ b/ergoemacs-map-properties.el @@ -1317,7 +1317,7 @@ will unbind ergoemacs keys. (ergoemacs keymap :use-local-unbind-list-key local-unbind-list-p (t nil) -(defvar ergoemacs-map-properties--set-map-list '(isearch-mode-map ergoemacs-override-keymap) +(defvar ergoemacs-map-properties--set-map-list '(isearch-mode-map) "`ergoemacs-mode' modified maps. This is a list of maps that `ergoemacs-mode' modifies directly.")
[elpa] externals/ergoemacs-mode 98703c4 27/87: Add Swiper keys. Issue #445
branch: externals/ergoemacs-mode commit 98703c40824e73c69d7f9f48877fcd0290a118b4 Author: Fidler Commit: Fidler Add Swiper keys. Issue #445 --- ergoemacs-themes.el | 36 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/ergoemacs-themes.el b/ergoemacs-themes.el index 355843f..7ac044a 100644 --- a/ergoemacs-themes.el +++ b/ergoemacs-themes.el @@ -244,6 +244,7 @@ (global-set-key (kbd "C-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "") 'ergoemacs-cut-line-or-region) (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) + (global-set-key (kbd "C-S-c") ("C-c" :normal)) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "C-S-v") 'ergoemacs-paste-cycle) @@ -325,6 +326,7 @@ (global-set-key (kbd "C-x k") nil) (global-set-key (kbd "C-w") 'ergoemacs-close-current-buffer) (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) + (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "C-x C-b") 'ibuffer) (global-set-key (kbd "C-y") '(redo undo-tree-redo ergoemacs-redo) "↷ redo") @@ -686,7 +688,9 @@ ;; Fixed Component; Note that is the actual function. (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) + (global-set-key (kbd "C-S-c") ("C-c" :normal)) (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) + (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "C-z") 'undo) (global-set-key (kbd "C-S-z") '(redo undo-tree-redo ergoemacs-redo)) (global-set-key (kbd "C-y") '(redo undo-tree-redo ergoemacs-redo)) @@ -1086,8 +1090,6 @@ (global-set-key [remap ido-magic-forward-char] 'ido-next-match) (global-set-key [remap ido-magic-backward-char] 'ido-prev-match))) - - (ergoemacs-component ergoemacs-remaps () "Remaps for ergoemacs-mode" (when undo-tree-mode @@ -1110,6 +1112,28 @@ (global-set-key [remap ergoemacs-print-buffer-confirm] 'pr-interface))) +(ergoemacs-component ergoemacs-swiper () + "Swiper component" + (when ivy-mode +(setq ivy-use-virtual-buffers t) +(global-set-key [remap isearch-forward] 'swiper) +;; (global-set-key (kbd "C-c C-r") 'ivy-resume) +;; (global-set-key (kbd "") 'ivy-resume) +(global-set-key [remap execute-extended-command] 'counsel-M-x) +(global-set-key [remap find-file] 'counsel-find-file) +(global-set-key [remap describe-function] 'counsel-describe-function) +(global-set-key [remap describe-variable] 'counsel-describe-variable) +(global-set-key [remap find-library] 'counsel-find-library) +(global-set-key [remap info-lookup-symbol] 'counsel-info-lookup-symbol) +;; (global-set-key (kbd " u") 'counsel-unicode-char) +;; (global-set-key (kbd "C-c g") 'counsel-git) +(global-set-key [remap vc-git-grep] 'counsel-git-grep) +;; (global-set-key (kbd "C-c k") 'counsel-ag) +(global-set-key [remap locate] 'counsel-locate) +;; (global-set-key (kbd "C-S-o") 'counsel-rhythmbox) +;; (define-key read-expression-map (kbd "C-r") 'counsel-expression-history) +)) + (ergoemacs-component ergoemacs-banish-shift () "Banish Shift Combinations with SPC" :variable-reg "" @@ -1855,6 +1879,9 @@ (ergoemacs-theme lvl0 () "CUA-mode style" (global-set-key (kbd "C-c ") 'ergoemacs-copy-line-or-region) + (global-set-key (kbd "C-S-c") ("C-c" :normal)) + (global-set-key (kbd "C-x ") 'ergoemacs-cut-line-or-region) + (global-set-key (kbd "C-S-x") ("C-x" :normal)) (global-set-key (kbd "") 'ergoemacs-copy-line-or-region) (global-set-key (kbd "C-S-v") 'ergoemacs-paste-cycle) @@ -1977,11 +2004,12 @@ ido-prev-next-instead-of-left-right join-line save-options-on-exit - isearch-arrows) + isearch-arrows + ergoemacs-swiper) :options-menu '(("Menu/Apps Key" (apps apps-apps apps-punctuation apps-toggle)) ("Function Keys" (fn-keys f2-edit)) ("Helm Options" (helm-switch-sources helm-find-files)) - ("Remaps" (ido-remaps helm-remaps multiple-cursors-remaps icy-reclaim)) + ("Remaps" (ido-remaps helm-remaps multiple-cursors-remaps icy-reclaim ergoemacs-swiper)) ("Extreme ErgoEmacs" (guru no-backspace ergoemacs-banish-shift)) ("Standard Keys" (standard-fixed fixed-bold-italic quit move-and-transpose-lines alt-backspace-is-undo)) ("Keys during Key Sequence" (f2-edit apps-swap backspace-del-seq))