;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (require 'imenu) #@55 Regexp of files to exclude from `textmate-goto-file'. (defvar *textmate-gf-exclude* "/\\.|vendor|fixtures|tmp|log|build|\\.xcodeproj|\\.nib|\\.framework|\\.app|\\.pbproj|\\.pbxproj|\\.xcode|\\.xcodeproj|\\.bundle|\\.pyc" (#$ . 104)) #@75 The presence of any file/directory in this list indicates a project root. (defvar *textmate-project-roots* '(".git" ".hg" "Rakefile" "Makefile" "README" "build.xml") (#$ . 343)) #@58 Should `textmate-goto-file' keep a local cache of files? (defvar textmate-use-file-cache t (#$ . 527)) #@128 The library `textmade-goto-symbol' and `textmate-goto-file' should use for completing filenames and symbols (`ido' by default) (defvar textmate-completing-library 'ido (#$ . 637)) #@67 The function to call to read file names and symbols from the user (defvar *textmate-completing-function-alist* '((ido ido-completing-read) (icicles icicle-completing-read) (none completing-read)) (#$ . 823)) #@68 The list of functions to enable and disable completing minor modes (defvar *textmate-completing-minor-mode-alist* (byte-code "\300\301D\302\303D\304\305DE\207" [ido #[(a) "\302!\210\303\211\207" [a ido-enable-flex-matching ido-mode t] 2] icicles #[(a) "\301!\207" [a icy-mode] 2] none #[(a) "\300\207" [nil] 1]] 4) (#$ . 1037)) (defvar *textmate-mode-map* (byte-code "\303 \304\305!\203H\306\307\310#\210\306\311\312#\210\306\313\314#\210\306\315\316#\210\306\317\320#\210\306\321\322#\210\306\323\324#\210\306\325\326#\210\306\327\330#\210\306\331\332#\210\202\304\333!\203\227 \334=\203\227\n\203\227\306\335\310#\210\306\336\312#\210\306\337\314#\210\306\340\316#\210\306\341\320#\210\306\342\322#\210\306\343\324#\210\306\344\330#\210\306\345\326#\210\306\346\332#\210\202\304\347!\203\334\306\350\310#\210\306\351\312#\210\306\352\314#\210\306\353\316#\210\306\354\320#\210\306\355\322#\210\306\356\324#\210\306\357\330#\210\306\360\326#\210\306\361\332#\210\202\306\362\310#\210\306\363\312#\210\306\364\314#\210\306\365\320#\210\306\366\322#\210\306\367\324#\210\306\370\330#\210\306\371\326#\210\306\372\332#\210)\207" [map window-system mac-key-mode make-sparse-keymap featurep aquamacs define-key [A-return] textmate-next-line [138412148] textmate-clear-cache [138412125] align [138412123] indent-according-to-mode [4194397] textmate-shift-right [4194395] textmate-shift-left [4194351] comment-or-uncomment-region-or-line [4194380] textmate-select-line [4194420] textmate-goto-file [4194388] textmate-goto-symbol mac-carbon mac [(alt meta return)] [(alt meta t)] [(alt meta \])] [(alt meta \[)] [(alt \])] [(alt \[)] [(meta /)] [(alt t)] [(alt shift l)] [(alt shift t)] ns [(super meta return)] [(super meta t)] [(super meta \])] [(super meta \[)] [(super \])] [(super \[)] [(super /)] [(super t)] [(super shift l)] [(super shift t)] [(meta return)] [(control c) (control t)] [(control c) (control a)] [(control tab)] [(control shift tab)] [(control c) (control k)] [(meta t)] [(meta shift l)] [(meta shift t)]] 4)) #@44 Used internally to cache the project root. (defvar *textmate-project-root* nil (#$ . 3124)) #@50 Used internally to cache the files in a project. (defvar *textmate-project-files* nil (#$ . 3222)) #@34 Add up/down keybindings for ido. (defalias 'textmate-ido-fix #[nil "\301\302\303#\210\301\304\305#\207" [ido-completion-map define-key [up] ido-prev-match [down] ido-next-match] 4 (#$ . 3327)]) #@90 Uses `*textmate-completing-function-alist*' to call the appropriate completing function. (defalias 'textmate-completing-read #[(&rest args) "\304 \"A@\305\nK \")\207" [textmate-completing-library *textmate-completing-function-alist* reading-fn args assoc apply] 3 (#$ . 3529)]) (defalias 'allow-line-as-region-for-function '(macro . #[(orig-function) "\301\302\303!\304P!\305\306\307\"\310\311\312\313\314DD\315\316\317\320\313\314DD\257F\257\207" [orig-function defun intern symbol-name "-or-line" nil format "Like `%s', but acts on the current line if mark is not active." (interactive) if mark-active call-interactively function save-excursion (beginning-of-line) (set-mark (point)) (end-of-line)] 15])) #@57 Add or-line (un)comment function if not already defined (defalias 'textmate-define-comment-line #[nil "\300\301!?\205 \302\301\303\"\207" [fboundp comment-or-uncomment-region-or-line defalias #[nil "\203\301\302!\207\212\303 \210\304`!\210\305\210\301\302!)\207" [mark-active call-interactively comment-or-uncomment-region beginning-of-line set-mark nil] 2 "Like `comment-or-uncomment-region', but acts on the current line if mark is not active." nil]] 3 (#$ . 4250)]) #@79 Inserts an indented newline after the current line and moves the point to it. (defalias 'textmate-next-line #[nil "\300\210\301 \207" [nil newline-and-indent] 1 (#$ . 4730) nil]) #@130 If the mark is not active, select the current line. Otherwise, expand the current region to select the lines the region touches. (defalias 'textmate-select-line #[nil "\203:`\305 U\305 \306 \nb\210\307 \210\310`!\210 b\210\311\312!\204.\313\210`dW\203.\313u\210\314\211 \2058\315 +\207\307 \210\310`!\210\313\210`dW\203M\313u\210\314\211\211\207" [mark-active p2 p1 top transient-mark-mode region-beginning region-end beginning-of-line push-mark looking-back "\n" nil t exchange-point-and-mark] 4 (#$ . 4917) nil]) #@149 Update the imenu index and then use ido to select a symbol to navigate to. Symbols matching the text at point are put first in the completion list. (defalias 'textmate-goto-symbol #[nil "\306 \210\307\211\310\311K\312\216\311\nM\210\311\f!\210+\313\314!\211\203@\315 !\316P\317\307\320\321\"\"\211\203?\322\323\"\210\324\325\"\210*)\326\327\"\330 \"A\331!\203]\332!\202_b,\207" [symbol-names name-and-pos #1=#:vnew #2=#:old imenu--index-alist symbol-at-point imenu--make-index-alist nil #[(symbol-list) "<\205q\306\211\205p\n@\306\211 <\203&\307 !\203&\310 !\210\202A <\2034 @ A\202A ;\203A \311\312\313 # \203g\f\203g\f \235\204S\f B\f B\211\f \235\204f\f B )*\nA\211\204 \306*\207" [symbol-list symbol --dolist-tail-- position name symbol-names nil imenu--subalist-p addsymbols get-text-property 1 org-imenu-marker #3=#:x name-and-pos] 5] addsymbols #[nil "\301M\207" [#2# addsymbols] 2] thing-at-point symbol regexp-quote "$" delq mapcar #[(symbol) "\302 \"\205 \207" [regexp symbol string-match] 3] sort #[(a b) "G GV\207" [a b] 2] mapc #[(symbol) "\302 \"B\211\207" [symbol symbol-names delete] 4] ido-completing-read "Symbol? " assoc overlayp overlay-start regexp matching-symbols selected-symbol position] 6 (#$ . 5454) nil]) #@67 Uses your completing read to quickly jump to a file in a project. (defalias 'textmate-goto-file #[nil "\302 \211\204\303\304\305\306 \"\307Q!\210\310\311!\312\313\314\315!\"Q!)\207" [root *textmate-project-roots* textmate-project-root error "Can't find a suitable project root (" string-join " " ")" find-file expand-file-name "/" textmate-completing-read "Find file: " textmate-cached-project-files] 8 (#$ . 6763) nil]) #@74 Clears the project root and project files cache. Use after adding files. (defalias 'textmate-clear-cache #[nil "\302\211\303\304!\207" [*textmate-project-root* *textmate-project-files* nil message "textmate-mode cache cleared."] 3 (#$ . 7195) nil]) #@37 Finds all files in a given project. (defalias 'textmate-project-files #[(root) "\303\304\305\306 \307\n\310\260!\311\312#\207" [root *textmate-gf-exclude* *textmate-project-root* split-string shell-command-to-string "find " " -type f | grep -vE '" "' | sed 's:" "/::'" "\n" t] 9 (#$ . 7452)]) #@48 Finds and caches all files in a given project. (defalias 'textmate-cached-project-files #[(&optional root) "\204\303 !\207\304 \n@\232\203\nA\207 \303 !B\211A\207" [textmate-use-file-cache root *textmate-project-files* textmate-project-files textmate-project-root] 3 (#$ . 7754)]) #@35 Returns the current project root. (defalias 'textmate-project-root #[nil "\203 \303 \"\204\304 \211\203\305\n\306P!\202\307)\207" [*textmate-project-root* default-directory root string-match textmate-find-project-root expand-file-name "/" nil] 4 (#$ . 8047)]) (defalias 'root-match #[(root names) "@\302 !\235\207" [names root directory-files] 3]) (defalias 'root-matches #[(root names) "\302 \"\203\f\302 \"\207 AG\303=?\205\304 A\"\207" [root names root-match 0 root-matches] 3]) #@80 Determines the current project root by recursively searching for an indicator. (defalias 'textmate-find-project-root #[(&optional root) "\204 \303\n\"\203\304!\207\304!\305\232\203\306\207\307\310!\311P!\207" [root default-directory *textmate-project-roots* root-matches expand-file-name "/" nil textmate-find-project-root file-name-as-directory ".."] 3 (#$ . 8555)]) #@112 Shift the line or region to the ARG places to the right. A place is considered `tab-width' character columns. (defalias 'textmate-shift-right #[(&optional arg) "\306\203\n\307 \206\f\310 \203\311 \206\312 \313\n \f\206\"\314 _#+\207" [mark-active end beg deactivate-mark arg tab-width nil region-beginning line-beginning-position region-end line-end-position indent-rigidly 1] 5 (#$ . 8942) nil]) #@57 Shift the line or region to the ARG places to the left. (defalias 'textmate-shift-left #[(&optional arg) "\301\302\206\303_!\207" [arg textmate-shift-right -1 1] 3 (#$ . 9358) nil]) #@260 Non-nil if Textmate mode is enabled. See the `textmate-mode' command for a description of this minor mode. Setting this variable directly does not take effect; either customize it (see the info node `Easy Customization') or call the function `textmate-mode'. (custom-declare-variable 'textmate-mode nil '(#$ . 9550) :set 'custom-set-minor-mode :initialize 'custom-initialize-default :type 'boolean) #@578 TextMate Emulation Minor Mode This is a minor mode. If called interactively, toggle the `Textmate mode' mode. If the prefix argument is positive, enable the mode, and if it is zero or negative, disable the mode. If called from Lisp, toggle the mode if ARG is `toggle'. Enable the mode if ARG is nil, omitted, or is a positive number. Disable the mode if ARG is a negative number. To check whether the minor mode is enabled in the current buffer, evaluate `(default-value 'textmate-mode)'. The mode's hook is called both when the mode is enabled and when it is disabled. (defalias 'textmate-mode #[(&optional arg) "\306 \307\310 \311=\203\312\310!?\202\" \247\203! \313W\203!\314\202\"\315\"\210\316\302!\2039\317\310\n\"\312\310!\2039\310\nB\320\321\322\"\210\323 \210 \314\211\203w @\211@$=\203]\fA@\315!\210\202p\324\325\f@%\"A@!\203p\fA@\326!\210 A\211\204I*\327\330\312\310!\203\204\331\202\205\332\"\210\333\334!\203\262\335\310!\210\306 \203\235\306 \232\203\262\336&\337\340\312\310!\203\254\341\202\255\342&#\210))\343 \210\312\310!\207" [#1=#:last-message arg global-minor-modes *textmate-completing-minor-mode-alist* mode --dolist-tail-- current-message set-default textmate-mode toggle default-value 1 nil t boundp delq add-hook ido-setup-hook textmate-ido-fix textmate-define-comment-line fboundp assoc -1 run-hooks textmate-mode-hook textmate-mode-on-hook textmate-mode-off-hook called-interactively-p any customize-mark-as-set "" message "Textmate mode %sabled%s" "en" "dis" force-mode-line-update textmate-completing-library *textmate-completing-function-alist* local] 5 (#$ . 9956) (list (if current-prefix-arg (prefix-numeric-value current-prefix-arg) 'toggle))]) (defvar textmate-mode-hook nil) (byte-code "\301\302N\204\f\303\301\302\304#\210\303\301\305\306#\210\303\301\307\310C#\210\311\312\313\310\211%\210\314\315!\207" [*textmate-mode-map* textmate-mode-hook variable-documentation put "Hook run after entering or leaving `textmate-mode'.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" custom-type hook standard-value nil add-minor-mode textmate-mode " mate" provide textmate] 6)