;ELC ;;; Compiled ;;; in Emacs version 26.3 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (require 'expand-region-core) (defvar er--python-string-delimiter "'\"") (defalias 'py-goto-beyond-clause 'py-end-of-clause-bol) #@60 Marks region outside a (possibly multi-line) Python string (defalias 'er/mark-outside-python-string #[nil "\301 \211\205b\210\302`!\210\303 \210\304 )\207" [string-beginning py-in-string-p set-mark forward-sexp exchange-point-and-mark] 3 (#$ . 537) nil]) #@59 Marks region inside a (possibly multi-line) Python string (defalias 'er/mark-inside-python-string #[nil "\302 \211\205b\210\303 \210 \304x\210\305`!\210b\210 \304w)\207" [string-beginning er--python-string-delimiter py-in-string-p forward-sexp nil set-mark] 3 (#$ . 802) nil]) #@281 Assumes that point is in a python block that is surrounded by another that is not the entire module. Uses `py-indent-offset' to find the beginning of the surrounding block because `py-beginning-of-block-position' just looks for the previous block-starting key word syntactically. (defalias 'er--move-to-beginning-of-outer-python-block #[(start-column) "i ZV\205\302y\210\303 \210\202\207" [start-column py-indent-offset -1 py-beginning-of-block] 3 (#$ . 1091)]) #@106 Attempts to mark a surrounding block by moving to the previous line and selecting the surrounding block. (defalias 'er/mark-outer-python-block #[nil "i\211\302V\205\303!\210`\304 \210\305`!\210 b))\207" [start-column block-beginning 0 er--move-to-beginning-of-outer-python-block py-end-of-block set-mark] 3 (#$ . 1565) nil]) #@76 Mark the current compound statement (if, while, for, try) and all clauses. (defalias 'er/mark-x-python-compound-statement #[nil "\212\302 \210\303\304!\203\305\202\303\306!\205\307)\310\211\205j\302 \210i\303 !\203=\311y\210\312 \210iV\203\"\311y\210\312 \210\202.\313`!\210\314 \210\310y\210\312 \210\303 !\203biY\203b\314 \210\310y\210\312 \210\202J\311y\210\310\210\315 *\207" [start-col secondary-re py-mark-block-or-clause looking-at "if\\|for\\|while\\|else\\|elif" "else\\|elif" "try\\|except\\|finally" "except\\|finally" nil -1 back-to-indentation set-mark py-end-of-clause-bol exchange-point-and-mark] 3 (#$ . 1901) nil]) #@65 Adds python-mode-specific expansions for buffers in python-mode (defalias 'er/add-python-mode-expansions #[nil "\303\304\301!\210\305\304\302!\210\306\307\306\310\311\n\"\"\"\211)\207" [try-expand-list-additions expand-region-skip-whitespace er/try-expand-list (er/mark-inside-python-string er/mark-outside-python-string py-mark-expression py-mark-statement py-mark-block py-mark-def py-mark-clause er/mark-x-python-compound-statement er/mark-outer-python-block py-mark-class) make-local-variable nil remove er/mark-inside-quotes er/mark-outside-quotes append] 7 (#$ . 2558)]) (byte-code "\300\301\302\"\210\303\304!\207" [er/enable-mode-expansions python-mode er/add-python-mode-expansions provide python-mode-expansions] 3)