From 7f66258a6c1fdcd9dfa4b28f72ed04a83882244b Mon Sep 17 00:00:00 2001 From: Andreas Gerler Date: Fri, 2 Sep 2022 08:58:39 +0200 Subject: [PATCH] update expand-region Signed-off-by: Andreas Gerler --- bba.org | 2 +- .../expand-region-pkg.el | 4 - .../cc-mode-expansions.el | 0 .../clojure-mode-expansions.el | 0 .../cperl-mode-expansions.el | 0 .../css-mode-expansions.el | 0 .../enh-ruby-mode-expansions.el | 0 .../er-basic-expansions.el | 6 +- .../erlang-mode-expansions.el | 0 .../expand-region-autoloads.el | 62 +++--- .../expand-region-core.el | 6 +- .../expand-region-custom.el | 5 + .../expand-region-pkg.el | 9 + .../expand-region.el | 3 +- .../feature-mode-expansions.el | 0 .../html-mode-expansions.el | 0 .../js-mode-expansions.el | 0 .../js2-mode-expansions.el | 0 .../jsp-expansions.el | 0 .../latex-mode-expansions.el | 0 .../nxml-mode-expansions.el | 0 .../octave-expansions.el | 0 .../python-el-expansions.el | 0 .../python-el-fgallina-expansions.el | 0 .../python-mode-expansions.el | 0 .../ruby-mode-expansions.el | 24 +-- .../sml-mode-expansions.el | 0 .../subword-mode-expansions.el | 0 .../text-mode-expansions.el | 0 .../the-org-mode-expansions.el | 1 + .../web-mode-expansions.el | 0 .../yaml-mode-expansions.el | 190 ++++++++++++++++++ 32 files changed, 261 insertions(+), 51 deletions(-) delete mode 100644 elpa/expand-region-20200106.2058/expand-region-pkg.el rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/cc-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/clojure-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/cperl-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/css-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/enh-ruby-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/er-basic-expansions.el (98%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/erlang-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/expand-region-autoloads.el (70%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/expand-region-core.el (98%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/expand-region-custom.el (96%) create mode 100644 elpa/expand-region-20220729.659/expand-region-pkg.el rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/expand-region.el (98%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/feature-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/html-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/js-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/js2-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/jsp-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/latex-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/nxml-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/octave-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/python-el-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/python-el-fgallina-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/python-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/ruby-mode-expansions.el (93%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/sml-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/subword-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/text-mode-expansions.el (100%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/the-org-mode-expansions.el (99%) rename elpa/{expand-region-20200106.2058 => expand-region-20220729.659}/web-mode-expansions.el (100%) create mode 100644 elpa/expand-region-20220729.659/yaml-mode-expansions.el diff --git a/bba.org b/bba.org index 985b2d79..19046ff6 100644 --- a/bba.org +++ b/bba.org @@ -597,7 +597,7 @@ search the web on your fingertips. C-c /. #+BEGIN_SRC emacs-lisp (if (>= emacs-major-version 24) (progn - (add-to-list 'load-path "~/.emacs.d/elpa/expand-region-20200106.2058") + (add-to-list 'load-path "~/.emacs.d/elpa/expand-region-20220729.659") (require 'expand-region) (define-key global-map (kbd "C-c C-") 'er/contract-region ) (define-key global-map (kbd "C-c ") 'er/expand-region ) diff --git a/elpa/expand-region-20200106.2058/expand-region-pkg.el b/elpa/expand-region-20200106.2058/expand-region-pkg.el deleted file mode 100644 index b5cf20c4..00000000 --- a/elpa/expand-region-20200106.2058/expand-region-pkg.el +++ /dev/null @@ -1,4 +0,0 @@ -(define-package "expand-region" "20200106.2058" "Increase selected region by semantic units." 'nil) -;; Local Variables: -;; no-byte-compile: t -;; End: diff --git a/elpa/expand-region-20200106.2058/cc-mode-expansions.el b/elpa/expand-region-20220729.659/cc-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/cc-mode-expansions.el rename to elpa/expand-region-20220729.659/cc-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/clojure-mode-expansions.el b/elpa/expand-region-20220729.659/clojure-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/clojure-mode-expansions.el rename to elpa/expand-region-20220729.659/clojure-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/cperl-mode-expansions.el b/elpa/expand-region-20220729.659/cperl-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/cperl-mode-expansions.el rename to elpa/expand-region-20220729.659/cperl-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/css-mode-expansions.el b/elpa/expand-region-20220729.659/css-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/css-mode-expansions.el rename to elpa/expand-region-20220729.659/css-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/enh-ruby-mode-expansions.el b/elpa/expand-region-20220729.659/enh-ruby-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/enh-ruby-mode-expansions.el rename to elpa/expand-region-20220729.659/enh-ruby-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/er-basic-expansions.el b/elpa/expand-region-20220729.659/er-basic-expansions.el similarity index 98% rename from elpa/expand-region-20200106.2058/er-basic-expansions.el rename to elpa/expand-region-20220729.659/er-basic-expansions.el index 836d7372..3c4ef6ba 100644 --- a/elpa/expand-region-20200106.2058/er-basic-expansions.el +++ b/elpa/expand-region-20220729.659/er-basic-expansions.el @@ -101,14 +101,14 @@ period and marks next symbol." (interactive) (when (er--point-is-in-comment-p) (let ((p (point))) - (while (er--point-is-in-comment-p) + (while (and (er--point-is-in-comment-p) (not (eobp))) (forward-char 1)) - (skip-chars-backward " \n\t\r") + (skip-chars-backward "\n\r") (set-mark (point)) (goto-char p) (while (er--point-is-in-comment-p) (forward-char -1)) - (skip-chars-forward " \n\t\r")))) + (forward-char 1)))) ;; Quotes diff --git a/elpa/expand-region-20200106.2058/erlang-mode-expansions.el b/elpa/expand-region-20220729.659/erlang-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/erlang-mode-expansions.el rename to elpa/expand-region-20220729.659/erlang-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/expand-region-autoloads.el b/elpa/expand-region-20220729.659/expand-region-autoloads.el similarity index 70% rename from elpa/expand-region-20200106.2058/expand-region-autoloads.el rename to elpa/expand-region-20220729.659/expand-region-autoloads.el index 616c970c..ea7bdf21 100644 --- a/elpa/expand-region-20200106.2058/expand-region-autoloads.el +++ b/elpa/expand-region-20220729.659/expand-region-autoloads.el @@ -1,4 +1,4 @@ -;;; expand-region-autoloads.el --- automatically extracted autoloads +;;; expand-region-autoloads.el --- automatically extracted autoloads -*- lexical-binding: t -*- ;; ;;; Code: @@ -10,7 +10,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from cc-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "cc-mode-expansions" '("er/"))) +(register-definition-prefixes "cc-mode-expansions" '("er/")) ;;;*** @@ -18,7 +18,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from clojure-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "clojure-mode-expansions" '("er/"))) +(register-definition-prefixes "clojure-mode-expansions" '("er/")) ;;;*** @@ -26,7 +26,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from cperl-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "cperl-mode-expansions" '("er/"))) +(register-definition-prefixes "cperl-mode-expansions" '("er/")) ;;;*** @@ -34,7 +34,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from css-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "css-mode-expansions" '("er/"))) +(register-definition-prefixes "css-mode-expansions" '("er/")) ;;;*** @@ -42,7 +42,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from enh-ruby-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "enh-ruby-mode-expansions" '("er/add-enh-ruby-mode-expansions"))) +(register-definition-prefixes "enh-ruby-mode-expansions" '("er/add-enh-ruby-mode-expansions")) ;;;*** @@ -50,7 +50,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from er-basic-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "er-basic-expansions" '("er--" "er/mark-"))) +(register-definition-prefixes "er-basic-expansions" '("er--" "er/mark-")) ;;;*** @@ -58,7 +58,7 @@ ;;;;;; (0 0 0 0)) ;;; Generated autoloads from erlang-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "erlang-mode-expansions" '("er/add-erlang-mode-expansions"))) +(register-definition-prefixes "erlang-mode-expansions" '("er/add-erlang-mode-expansions")) ;;;*** @@ -81,7 +81,7 @@ before calling `er/expand-region' for the first time. ;;;;;; (0 0 0 0)) ;;; Generated autoloads from expand-region-core.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "expand-region-core" '("er--" "er/"))) +(register-definition-prefixes "expand-region-core" '("er--" "er/")) ;;;*** @@ -150,7 +150,7 @@ Whether expand-region should use subword expansions.") (custom-autoload 'expand-region-subword-enabled "expand-region-custom" t) -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "expand-region-custom" '("expand-region-guess-python-mode"))) +(register-definition-prefixes "expand-region-custom" '("expand-region-")) ;;;*** @@ -158,7 +158,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from feature-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "feature-mode-expansions" '("er--block-between-keywords" "er/"))) +(register-definition-prefixes "feature-mode-expansions" '("er--block-between-keywords" "er/")) ;;;*** @@ -166,7 +166,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from html-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "html-mode-expansions" '("er--" "er/"))) +(register-definition-prefixes "html-mode-expansions" '("er--" "er/")) ;;;*** @@ -174,7 +174,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from js-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "js-mode-expansions" '("er/"))) +(register-definition-prefixes "js-mode-expansions" '("er/")) ;;;*** @@ -182,7 +182,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from js2-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "js2-mode-expansions" '("er/add-js2-mode-expansions" "js2-mark-parent-statement"))) +(register-definition-prefixes "js2-mode-expansions" '("er/add-js2-mode-expansions" "js2-mark-parent-statement")) ;;;*** @@ -190,7 +190,7 @@ Whether expand-region should use subword expansions.") ;;;;;; 0)) ;;; Generated autoloads from jsp-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "jsp-expansions" '("er/"))) +(register-definition-prefixes "jsp-expansions" '("er/")) ;;;*** @@ -198,7 +198,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from latex-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "latex-mode-expansions" '("er/"))) +(register-definition-prefixes "latex-mode-expansions" '("er/")) ;;;*** @@ -206,7 +206,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from nxml-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "nxml-mode-expansions" '("er/"))) +(register-definition-prefixes "nxml-mode-expansions" '("er/")) ;;;*** @@ -214,7 +214,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from octave-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "octave-expansions" '("er/"))) +(register-definition-prefixes "octave-expansions" '("er/")) ;;;*** @@ -222,7 +222,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from python-el-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "python-el-expansions" '("er--python-string-delimiter" "er/"))) +(register-definition-prefixes "python-el-expansions" '("er--python-string-delimiter" "er/")) ;;;*** @@ -230,7 +230,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from python-el-fgallina-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "python-el-fgallina-expansions" '("er--python-" "er/"))) +(register-definition-prefixes "python-el-fgallina-expansions" '("er--python-" "er/")) ;;;*** @@ -238,7 +238,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from python-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "python-mode-expansions" '("er--" "er/" "py-goto-beyond-clause"))) +(register-definition-prefixes "python-mode-expansions" '("er--" "er/" "py-goto-beyond-clause")) ;;;*** @@ -246,7 +246,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from ruby-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "ruby-mode-expansions" '("er/"))) +(register-definition-prefixes "ruby-mode-expansions" '("er/")) ;;;*** @@ -254,7 +254,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from sml-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "sml-mode-expansions" '("er/"))) +(register-definition-prefixes "sml-mode-expansions" '("er/")) ;;;*** @@ -262,7 +262,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from subword-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "subword-mode-expansions" '("er/"))) +(register-definition-prefixes "subword-mode-expansions" '("er/")) ;;;*** @@ -270,7 +270,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from text-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "text-mode-expansions" '("er/"))) +(register-definition-prefixes "text-mode-expansions" '("er/")) ;;;*** @@ -278,7 +278,7 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from the-org-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "the-org-mode-expansions" '("er/"))) +(register-definition-prefixes "the-org-mode-expansions" '("er/")) ;;;*** @@ -286,7 +286,15 @@ Whether expand-region should use subword expansions.") ;;;;;; (0 0 0 0)) ;;; Generated autoloads from web-mode-expansions.el -(if (fboundp 'register-definition-prefixes) (register-definition-prefixes "web-mode-expansions" '("er/add-web-mode-expansions"))) +(register-definition-prefixes "web-mode-expansions" '("er/add-web-mode-expansions")) + +;;;*** + +;;;### (autoloads nil "yaml-mode-expansions" "yaml-mode-expansions.el" +;;;;;; (0 0 0 0)) +;;; Generated autoloads from yaml-mode-expansions.el + +(register-definition-prefixes "yaml-mode-expansions" '("er--" "er/" "yaml-indent")) ;;;*** diff --git a/elpa/expand-region-20200106.2058/expand-region-core.el b/elpa/expand-region-20220729.659/expand-region-core.el similarity index 98% rename from elpa/expand-region-20200106.2058/expand-region-core.el rename to elpa/expand-region-20220729.659/expand-region-core.el index 2864b9a9..c13b9bc2 100644 --- a/elpa/expand-region-20200106.2058/expand-region-core.el +++ b/elpa/expand-region-20220729.659/expand-region-core.el @@ -26,7 +26,7 @@ ;;; Code: -(eval-when-compile (require 'cl)) +(eval-when-compile (require 'cl-lib)) (require 'expand-region-custom) (declare-function er/expand-region "expand-region") @@ -210,10 +210,10 @@ before calling `er/expand-region' for the first time." `(lambda () (interactive) (setq this-command `,(cadr ',binding)) - (or (minibufferp) (message "%s" ,msg)) + (or (not expand-region-show-usage-message) (minibufferp) (message "%s" ,msg)) (eval `,(cdr ',binding)))))) t) - (or (minibufferp) (message "%s" msg))))) + (or (not expand-region-show-usage-message) (minibufferp) (message "%s" msg))))) (if (fboundp 'set-temporary-overlay-map) (fset 'er/set-temporary-overlay-map 'set-temporary-overlay-map) diff --git a/elpa/expand-region-20200106.2058/expand-region-custom.el b/elpa/expand-region-20220729.659/expand-region-custom.el similarity index 96% rename from elpa/expand-region-20200106.2058/expand-region-custom.el rename to elpa/expand-region-20220729.659/expand-region-custom.el index 6d01bd2d..a6a5d156 100644 --- a/elpa/expand-region-20200106.2058/expand-region-custom.el +++ b/elpa/expand-region-20220729.659/expand-region-custom.el @@ -115,6 +115,11 @@ If set to nil, always place the cursor at the beginning of the region." :type '(choice (const :tag "Enable subword expansions" t) (const :tag "Disable subword expansions" nil))) +(defcustom expand-region-show-usage-message t + "Whether expand-region should show usage message." + :group 'expand-region + :type 'boolean) + (provide 'expand-region-custom) ;;; expand-region-custom.el ends here diff --git a/elpa/expand-region-20220729.659/expand-region-pkg.el b/elpa/expand-region-20220729.659/expand-region-pkg.el new file mode 100644 index 00000000..7fc49daa --- /dev/null +++ b/elpa/expand-region-20220729.659/expand-region-pkg.el @@ -0,0 +1,9 @@ +(define-package "expand-region" "20220729.659" "Increase selected region by semantic units." 'nil :commit "c5c4362741deebb0985a8a29f9b8b0e25160764a" :authors + '(("Magnar Sveen" . "magnars@gmail.com")) + :maintainer + '("Magnar Sveen" . "magnars@gmail.com") + :keywords + '("marking" "region")) +;; Local Variables: +;; no-byte-compile: t +;; End: diff --git a/elpa/expand-region-20200106.2058/expand-region.el b/elpa/expand-region-20220729.659/expand-region.el similarity index 98% rename from elpa/expand-region-20200106.2058/expand-region.el rename to elpa/expand-region-20220729.659/expand-region.el index 1c6d4b44..b4e3b341 100644 --- a/elpa/expand-region-20200106.2058/expand-region.el +++ b/elpa/expand-region-20220729.659/expand-region.el @@ -185,11 +185,12 @@ before calling `er/expand-region' for the first time." (eval-after-load 'ruby-mode '(require 'ruby-mode-expansions)) (eval-after-load 'org '(require 'the-org-mode-expansions)) (eval-after-load 'cc-mode '(require 'cc-mode-expansions)) -(eval-after-load "text-mode" '(require 'text-mode-expansions)) +(eval-after-load 'text-mode '(require 'text-mode-expansions)) (eval-after-load 'cperl-mode '(require 'cperl-mode-expansions)) (eval-after-load 'sml-mode '(require 'sml-mode-expansions)) (eval-after-load 'enh-ruby-mode '(require 'enh-ruby-mode-expansions)) (eval-after-load 'subword '(require 'subword-mode-expansions)) +(eval-after-load 'yaml-mode '(require 'yaml-mode-expansions)) (provide 'expand-region) diff --git a/elpa/expand-region-20200106.2058/feature-mode-expansions.el b/elpa/expand-region-20220729.659/feature-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/feature-mode-expansions.el rename to elpa/expand-region-20220729.659/feature-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/html-mode-expansions.el b/elpa/expand-region-20220729.659/html-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/html-mode-expansions.el rename to elpa/expand-region-20220729.659/html-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/js-mode-expansions.el b/elpa/expand-region-20220729.659/js-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/js-mode-expansions.el rename to elpa/expand-region-20220729.659/js-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/js2-mode-expansions.el b/elpa/expand-region-20220729.659/js2-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/js2-mode-expansions.el rename to elpa/expand-region-20220729.659/js2-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/jsp-expansions.el b/elpa/expand-region-20220729.659/jsp-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/jsp-expansions.el rename to elpa/expand-region-20220729.659/jsp-expansions.el diff --git a/elpa/expand-region-20200106.2058/latex-mode-expansions.el b/elpa/expand-region-20220729.659/latex-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/latex-mode-expansions.el rename to elpa/expand-region-20220729.659/latex-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/nxml-mode-expansions.el b/elpa/expand-region-20220729.659/nxml-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/nxml-mode-expansions.el rename to elpa/expand-region-20220729.659/nxml-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/octave-expansions.el b/elpa/expand-region-20220729.659/octave-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/octave-expansions.el rename to elpa/expand-region-20220729.659/octave-expansions.el diff --git a/elpa/expand-region-20200106.2058/python-el-expansions.el b/elpa/expand-region-20220729.659/python-el-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/python-el-expansions.el rename to elpa/expand-region-20220729.659/python-el-expansions.el diff --git a/elpa/expand-region-20200106.2058/python-el-fgallina-expansions.el b/elpa/expand-region-20220729.659/python-el-fgallina-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/python-el-fgallina-expansions.el rename to elpa/expand-region-20220729.659/python-el-fgallina-expansions.el diff --git a/elpa/expand-region-20200106.2058/python-mode-expansions.el b/elpa/expand-region-20220729.659/python-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/python-mode-expansions.el rename to elpa/expand-region-20220729.659/python-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/ruby-mode-expansions.el b/elpa/expand-region-20220729.659/ruby-mode-expansions.el similarity index 93% rename from elpa/expand-region-20200106.2058/ruby-mode-expansions.el rename to elpa/expand-region-20220729.659/ruby-mode-expansions.el index 27260eea..32067bad 100644 --- a/elpa/expand-region-20200106.2058/ruby-mode-expansions.el +++ b/elpa/expand-region-20220729.659/ruby-mode-expansions.el @@ -83,18 +83,18 @@ This moves point to the next line to include the end of the block" (ruby-beginning-of-block) ;; "Block beginning" is often not at indentation in Emacs 24. (< (er/point-at-indentation) orig-point)) - (loop do - (ruby-beginning-of-block) - (setq progress-beg (point)) - (when (= (point) (point-min)) - (return)) - (ruby-end-of-block) - (setq progress-end (if (looking-at-p er/ruby-block-end-re) - (point-at-bol 0) - (point-at-bol 1))) - (goto-char progress-beg) - (when (> progress-end orig-point) - (return)))))) + (cl-loop + (ruby-beginning-of-block) + (setq progress-beg (point)) + (when (= (point) (point-min)) + (cl-return)) + (ruby-end-of-block) + (setq progress-end (if (looking-at-p er/ruby-block-end-re) + (point-at-bol 0) + (point-at-bol 1))) + (goto-char progress-beg) + (when (> progress-end orig-point) + (cl-return)))))) ;;; This command isn't used here explicitly, but it's symmetrical with ;;; `er/ruby-backward-up', and nifty for interactive use. diff --git a/elpa/expand-region-20200106.2058/sml-mode-expansions.el b/elpa/expand-region-20220729.659/sml-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/sml-mode-expansions.el rename to elpa/expand-region-20220729.659/sml-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/subword-mode-expansions.el b/elpa/expand-region-20220729.659/subword-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/subword-mode-expansions.el rename to elpa/expand-region-20220729.659/subword-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/text-mode-expansions.el b/elpa/expand-region-20220729.659/text-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/text-mode-expansions.el rename to elpa/expand-region-20220729.659/text-mode-expansions.el diff --git a/elpa/expand-region-20200106.2058/the-org-mode-expansions.el b/elpa/expand-region-20220729.659/the-org-mode-expansions.el similarity index 99% rename from elpa/expand-region-20200106.2058/the-org-mode-expansions.el rename to elpa/expand-region-20220729.659/the-org-mode-expansions.el index 35237a2a..571bc3d9 100644 --- a/elpa/expand-region-20200106.2058/the-org-mode-expansions.el +++ b/elpa/expand-region-20220729.659/the-org-mode-expansions.el @@ -33,6 +33,7 @@ (require 'expand-region-core) (require 'org-macs) +(require 'org-element) (declare-function org-up-element "org") (declare-function org-mark-subtree "org") diff --git a/elpa/expand-region-20200106.2058/web-mode-expansions.el b/elpa/expand-region-20220729.659/web-mode-expansions.el similarity index 100% rename from elpa/expand-region-20200106.2058/web-mode-expansions.el rename to elpa/expand-region-20220729.659/web-mode-expansions.el diff --git a/elpa/expand-region-20220729.659/yaml-mode-expansions.el b/elpa/expand-region-20220729.659/yaml-mode-expansions.el new file mode 100644 index 00000000..902285f1 --- /dev/null +++ b/elpa/expand-region-20220729.659/yaml-mode-expansions.el @@ -0,0 +1,190 @@ +;;; yaml-mode-expansions.el --- expansions for yaml mode + +;; Copyright (C) 2021 Aaron Gonzales + +;; Author: Aaron Gonzales +;; Keywords: marking region yaml YAML expand + +;; This program is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation, either version 3 of the License, or +;; (at your option) any later version. + +;; This program is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with this program. If not, see . + +;;; Commentary: +;; +;; - Additions implemented here: +;; - er/mark-yaml-key-value +;; - er/mark-yaml-list-item +;; - er/mark-yaml-block +;; - er/mark-yaml-outer-block +;; - er/mark-yaml-inner-block + + +;;; Code: + +(require 'expand-region-core) + +(defconst yaml-indent 2) + +(unless (fboundp 'yaml-indent-offset) + (defalias 'yaml-indent-offset 'yaml-indent)) + +(defvar er--yaml-key-value-regex + (rx (one-or-more + (any "0-9A-Za-z")) + ":" + (zero-or-more " ") + (one-or-more + (any "0-9A-Za-z" " '_-")))) + +(defvar er--yaml-list-item-regex + (rx (seq "- " + (one-or-more + (any "0-9A-Za-z" "\"':=_-"))))) + +(defvar er--yaml-block-regex + (rx (seq (zero-or-more + (any " -")) + (one-or-more + (any "0-9A-Za-z" " '_-")) + ":\n"))) + +(defun er--get-regex-indentation-level (regex) + "Return the indentation level of the code with respect to the REGEX passed." + (when (looking-at regex) + ;; Block start means that the next level is deeper. + (+ (current-indentation) yaml-indent-offset) + ;; Assuming we're inside the block that we want to mark + (current-indentation))) + +(defun er/mark-yaml-line-base (regex) + "Mark line of yaml file based on simple REGEX." + (back-to-indentation) + (when (looking-at regex) + (set-mark (line-end-position)))) + +(defun er/mark-yaml-block-static-base (regex) + "Mark yaml block based on REGEX passed. NEXT-INDENT-LEVEL can be used to search outer blocks when necessary." + ;; go bac to indentation so always can get regexp + (back-to-indentation) + ;; make sure the cursor is set inside the block + ;; mark point at this higher code block + (set-mark (point)) + ;; save level of this blocks indentation + (let ((block-indentation (current-indentation))) + (forward-line 1) + (while (and + ;; No need to go beyond the end of the buffer. Can't use + ;; eobp as the loop places the point at the beginning of + ;; line, but eob might be at the end of the line. + (not (= (point-max) (point-at-eol))) + ;; Proceed if: indentation is too deep + (or (> (current-indentation) block-indentation) + ;; Looking at an empty line + (looking-at (rx line-start (* whitespace) line-end)) + ;; We're not looking at the start of a YAML block + ;; and the indent is deeper than the block's indent + (and (not (looking-at regex)) + (> (current-indentation) block-indentation)))) + (forward-line 1) + (back-to-indentation)) + ;; Find the end of the block by skipping comments backwards + (python-util-forward-comment -1) + (exchange-point-and-mark)) + (back-to-indentation)) + +(defun er/mark-yaml-block-base (regex &optional next-indent-level) + "Mark yaml block based on REGEX passed. NEXT-INDENT-LEVEL can be used to search outer blocks when necessary." + ;; go bac to indentation so always can get regexp + (back-to-indentation) + ;; make sure the cursor is set inside the block + (let ((next-indent-level + (or + ;; Use the given level + next-indent-level + ;; used to mark current block + (er--get-regex-indentation-level regex)))) + ;; if true then at start of block and wanna mark itself + ;; else were are inside the block already and will mark it))) + ;; move up the code unti a parent code block is reached + (while (and (>= (current-indentation) next-indent-level) + (not (eq (current-indentation) 0))) + (re-search-backward regex (point-min) t) + (back-to-indentation)) + ;; mark point at this higher code block + (set-mark (point)) + ;; save level of this blocks indentation + (let ((block-indentation (current-indentation))) + (forward-line 1) + (while (and + ;; No need to go beyond the end of the buffer. Can't use + ;; eobp as the loop places the point at the beginning of + ;; line, but eob might be at the end of the line. + (not (= (point-max) (point-at-eol))) + ;; Proceed if: indentation is too deep + (or (> (current-indentation) block-indentation) + ;; Looking at an empty line + (looking-at (rx line-start (* whitespace) line-end)) + ;; We're not looking at the start of a YAML block + ;; and the indent is deeper than the block's indent + (and (not (looking-at regex)) + (> (current-indentation) block-indentation)))) + (forward-line 1) + (back-to-indentation)) + ;; Find the end of the block by skipping comments backwards + (python-util-forward-comment -1) + (exchange-point-and-mark))) + (back-to-indentation)) + +(defun er/mark-yaml-key-value () + "Mark a yaml key-value pair." + (interactive) + (er/mark-yaml-line-base er--yaml-key-value-regex)) + +(defun er/mark-yaml-list-item () + "Mark a yaml list item." + (interactive) + (er/mark-yaml-line-base er--yaml-list-item-regex)) + +(defun er/mark-yaml-inner-block () + "Mark the yaml contents of the block at point. Command that wraps `er/mark-yaml-block-base'." + (interactive) + (er/mark-yaml-block-base er--yaml-block-regex (current-indentation)) + (forward-line) + (back-to-indentation)) + +(defun er/mark-yaml-block () + "Mark the yaml block that point is currently at the top of. Command that wraps `er/mark-yaml-block-base'." + (interactive) + (er/mark-yaml-block-static-base er--yaml-block-regex)) + +(defun er/mark-yaml-outer-block () + "Mark the outer yaml block that surrounds the block around point. Command that wraps `er/mark-yaml-block-base'." + (interactive) + (er/mark-yaml-block-base er--yaml-block-regex (current-indentation))) + +(defun er/add-yaml-mode-expansions () + "Add yaml-mode-specific expansions for buffers in yaml-mode." + (let ((try-expand-list-additions '(er/mark-symbol + er/mark-outside-quotes + er/mark-yaml-list-item + er/mark-yaml-key-value + er/mark-yaml-block + er/mark-yaml-outer-block + er/mark-yaml-inner-block))) + (set (make-local-variable 'expand-region-skip-whitespace) nil) + (set (make-local-variable 'er/try-expand-list) try-expand-list-additions))) + +(er/enable-mode-expansions 'yaml-mode 'er/add-yaml-mode-expansions) + +(provide 'yaml-mode-expansions) + +;;; yaml-mode-expansions.el ends here -- 2.47.3