;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\210\300\307!\210\300\310!\210\300\311!\210\300\312!\210\300\313!\210\300\314!\210\315\316\317\"\207" [require eldoc s treemacs-interface treemacs-customization treemacs-faces treemacs-core-utils treemacs-icons treemacs-scope treemacs-persistence treemacs-dom treemacs-workspaces treemacs-visuals eval-after-load bookmark #[0 "\300\301!\207" [require treemacs-bookmarks] 2]] 3) #@94 Message to be output by `treemacs--eldoc-function'. Will be set by `treemacs--post-command'. (defvar treemacs--eldoc-msg nil (#$ . 551)) (make-variable-buffer-local 'treemacs--eldoc-msg) #@30 Treemacs' own eldoc obarray. (defconst treemacs--eldoc-obarray (byte-code "\301\302\303\"\304\305\306\"\"\210\307\211\203#\211@\310\311!\"\312L\210A\266\202\202 \210\207" [eldoc-message-commands make-vector 59 0 mapatoms make-closure #[257 "\301\302!\300\"\303L\207" [V0 intern symbol-name t] 4 "\n\n(fn CMD)"] (treemacs-next-line treemacs-previous-line treemacs-next-neighbour treemacs-previous-neighbour treemacs-next-project treemacs-previous-project treemacs-goto-parent-node treemacs-TAB-action treemacs-select-window treemacs-leftclick-action) intern symbol-name t] 6) (#$ . 744)) #@57 Keymap for project-related commands in `treemacs-mode'. (defvar treemacs-project-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\207" [make-sparse-keymap define-key "r" treemacs-rename-project "a" treemacs-add-project-to-workspace "d" treemacs-remove-project-from-workspace "cc" treemacs-collapse-project "co" treemacs-collapse-other-projects "ca" treemacs-collapse-all-projects] 5) (#$ . 1345)) #@59 Keymap for workspace-related commands in `treemacs-mode'. (defvar treemacs-workspace-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\207" [make-sparse-keymap define-key "r" treemacs-rename-workspace "a" treemacs-create-workspace "d" treemacs-remove-workspace "s" treemacs-switch-workspace "e" treemacs-edit-workspaces "f" treemacs-set-fallback-workspace] 5) (#$ . 1829)) #@55 Keymap for node-visiting commands in `treemacs-mode'. (defvar treemacs-node-visit-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\301\316\317#\210\301\320\321#\210\207" [make-sparse-keymap define-key "v" treemacs-visit-node-vertical-split "h" treemacs-visit-node-horizontal-split "o" treemacs-visit-node-no-split "aa" treemacs-visit-node-ace "ah" treemacs-visit-node-ace-horizontal-split "av" treemacs-visit-node-ace-vertical-split "r" treemacs-visit-node-in-most-recently-used-window "x" treemacs-visit-node-in-external-application] 5) (#$ . 2288)) #@59 Keymap for commands that toggle state in `treemacs-mode'. (defvar treemacs-toggle-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\301\312\313#\210\301\314\315#\210\207" [make-sparse-keymap define-key "h" treemacs-toggle-show-dotfiles "w" treemacs-toggle-fixed-width "v" treemacs-fringe-indicator-mode "g" treemacs-git-mode "f" treemacs-follow-mode "a" treemacs-filewatch-mode] 5) (#$ . 2928)) #@46 Keymap for copy commands in `treemacs-mode'. (defvar treemacs-copy-map (byte-code "\300 \301\302\303#\210\301\304\305#\210\301\306\307#\210\301\310\311#\210\207" [make-sparse-keymap define-key "a" treemacs-copy-absolute-path-at-point "r" treemacs-copy-relative-path-at-point "p" treemacs-copy-project-path-at-point "f" treemacs-copy-file] 5) (#$ . 3375)) #@29 Keymap for `treemacs-mode'. (defvar treemacs-mode-map (byte-code "\305 \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\324#\210\306\326\327#\210\306\330\327#\210\306\331\332#\210\306\333\334#\210\306\335\336#\210\306\337\340#\210\306\341\342#\210\306\343\344#\210\306\345\346#\210\306\347\350#\210\306\351#\210\306\352\353#\210\306\354\355#\210\306\356\357#\210\306\360\361#\210\306\362\363#\210\306\364\365#\210\306\366\367#\210\306\370\371#\210\306\372\373#\210\306\374 #\210\306\375\376#\210\306\377\n#\210\306\201@\201A#\210\306\201B\332#\210\306\201C\201D#\210\306\201E\201F#\210\306\201G #\210\306\201H\f#\210\306\201I\201J#\210\306\201K\201L#\210\306\201M\201N#\210\306\201O\201P#\210\306\201Q\201R#\210\306\201S\201T#\210\306\201U\327#\210\306\201V\201T#\210\306\201W\327#\210\306\201X\201Y#\210\306\201Z\201[#\210\306\201\\\201]#\210\306\201^\201_#\210\306\201`\201a#\210\306\201b\201c#\210\207" [treemacs-node-visit-map treemacs-toggle-map treemacs-copy-map treemacs-project-map treemacs-workspace-map make-sparse-keymap define-key "?" treemacs-common-helpful-hydra [67108927] treemacs-advanced-helpful-hydra [down-mouse-1] treemacs-leftclick-action [drag-mouse-1] treemacs-dragleftclick-action [double-mouse-1] treemacs-doubleclick-action [mouse-3] treemacs-rightclick-menu [tab] treemacs-TAB-action [9] [return] treemacs-RET-action " " "r" treemacs-refresh "d" treemacs-delete "cf" treemacs-create-file "cd" treemacs-create-dir "R" treemacs-rename "u" treemacs-goto-parent-node "q" treemacs-quit "Q" treemacs-kill-buffer "o" "P" treemacs-peek "n" treemacs-next-line "p" treemacs-previous-line [134217806] treemacs-next-line-other-window [134217808] treemacs-previous-line-other-window [prior] treemacs-previous-page-other-window [next] treemacs-next-page-other-window [134217838] treemacs-next-neighbour [134217840] treemacs-previous-neighbour "t" "w" treemacs-set-width "y" "m" treemacs-move-file "g" "s" treemacs-resort "b" treemacs-add-bookmark "" "" [M-up] treemacs-move-project-up [M-down] treemacs-move-project-down [backtab] treemacs-collapse-all-projects "\n" treemacs-next-project " " treemacs-previous-project "h" treemacs-COLLAPSE-action "l" [134217832] [134217836] [134217800] treemacs-root-up [134217804] treemacs-root-down "H" treemacs-collapse-parent-node "!" treemacs-run-shell-command-for-current-node [134217761] treemacs-run-shell-command-in-project-root "C" treemacs-cleanup-litter] 5) (#$ . 3740)) #@63 Create either a simple modeline, or integrate into spaceline. (defalias 'treemacs--setup-mode-line #[0 "\203\302=?\205C\202C\303\304!\203\304\305\306\307#\210\310\202C\311\312\301!>\203+\313\202C\303\314!\203B\303\315!\203B\315\316\317\"\210\314\316!\202C\320\211\207" [treemacs-user-mode-line-format mode-line-format none fboundp spaceline-install "treemacs" ((workspace-number :face highlight-face) major-mode) nil ("%e" (:eval (spaceline-ml-treemacs))) moody-mode-line-buffer-identification default-value (:eval (moody-tab " Treemacs " 10 'down)) doom-modeline doom-modeline-def-modeline treemacs (bar " " major-mode) (" Treemacs ")] 4 (#$ . 6351)]) #@213 Set the default directory to the nearest directory of the current node. If there is no node at point use "~/" instead. Also skip hidden buttons (as employed by variadic extensions). Used as a post command hook. (defalias 'treemacs--post-command #[0 "\303\304 \305 \306\307$\211\205\310\311\"\262\211\205\213\312\313\"\203!\314\315!\210\316!\211\203\204\312\317\"\2062\320!\211\203z\321!>\204E\322\323\324D\"\210\325H\326>\205\327!\205\211\330!\203_\211\202b\331!\211GSH\332=\203p\211\202s\211\333P\262\211\202\307\334\211\262\202\211\307\334\211\262\207" [cl-struct-treemacs-project-tags treemacs--eldoc-msg default-directory text-property-not-all point-at-bol point-at-eol button nil copy-marker t get-text-property invisible treemacs-next-line 1 treemacs-project-of-node :default-directory treemacs--nearest-path type-of signal wrong-type-argument treemacs-project 3 (local-readable remote-readable) file-readable-p file-directory-p file-name-directory 47 "/" "~/"] 7 (#$ . 7027)]) #@103 Treemacs' implementation of `eldoc-documentation-function'. Will simply return `treemacs--eldoc-msg'. (defalias 'treemacs--eldoc-function #[0 "\205 \205 \302 \303\304#\207" [treemacs-eldoc-display treemacs--eldoc-msg propertize face font-lock-string-face] 4 (#$ . 8061)]) (defvar treemacs-mode-hook nil) (byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [treemacs-mode-hook variable-documentation put "Hook run after entering Treemacs mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it. (This is true for all hook variables.)" boundp treemacs-mode-map definition-name treemacs-mode] 4) (defvar treemacs-mode-map (make-sparse-keymap)) (byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [treemacs-mode-abbrev-table treemacs-mode-map variable-documentation put purecopy "Keymap for `treemacs-mode'." boundp treemacs-mode-syntax-table definition-name treemacs-mode (lambda (def-tmp-var) (defvar treemacs-mode-syntax-table def-tmp-var)) make-syntax-table "Syntax table for `treemacs-mode'." (lambda (def-tmp-var) (defvar treemacs-mode-abbrev-table def-tmp-var)) define-abbrev-table nil "Abbrev table for `treemacs-mode'." derived-mode-parent special-mode] 5) #@260 A major mode for displaying the file system in a tree layout. In addition to any hooks its parent mode `special-mode' might have run, this mode runs the hook `treemacs-mode-hook', as the final or penultimate step during initialization. \{treemacs-mode-map} (defalias 'treemacs-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315 !\204'\316 \317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324 \325\"\204R @=\204R\326 \325@C#\210\327 !\210\330\f!\210 @\307\211AB\331\211CDE\205o\332F\307GH\204|\331I\333\334!\203\217H\203\214J\202\215\335\306\336!\210\337\306\340!\210\331 \306\341!\210\342!\306\343!\210\344#\306\345!\210K%\306\346!\210\347&\306\350!\210\351(\352\353!\210\354\353!\210\355\353!\210\356\331!\210\357 \210L\203\334\360 \210M\203\350MN\202\360N\203\360\331N\361\307!\210\362\363\364!>\204\377\362 \210\365\366 \367O#\210P\203$\370\371\372P@#\210\370\373\372P@#\210\370\374\372PA#\210\375\364\362\"\210\375\376\377\331\307$\210\375\201R\201S\331\307$\210\201T\201U!\210\201V \210\201W \210\201X \210\201Y \210\201Z \210\201[\201\\\201]\201^\201_$Q)\201`\201a!\207" [delay-mode-hooks major-mode mode-name treemacs-mode-map treemacs-mode-syntax-table treemacs-mode-abbrev-table make-local-variable t special-mode treemacs-mode "Treemacs" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table nil width boundp evil-treemacs-state-cursor (hbar . 0) double-click-fuzz 15 show-paren-mode tab-width 1 eldoc-documentation-function treemacs--eldoc-function eldoc-message-commands imenu-create-index-function treemacs--create-imenu-index-function bookmark-make-record-function treemacs--make-bookmark-record electric-indent-local-mode -1 visual-line-mode font-lock-mode jit-lock-mode buffer-disable-undo treemacs--enable-fringe-indicator hl-line-mode treemacs--on-window-config-change default-value window-configuration-change-hook set-window-parameter selected-window no-delete-other-windows face-remap-add-relative default :background fringe hl-line add-hook kill-buffer-hook treemacs--on-buffer-kill local-abbrev-table buffer-read-only truncate-lines indent-tabs-mode desktop-save-buffer treemacs-width-is-initially-locked window-size-fixed treemacs--in-this-buffer treemacs-show-cursor cursor-type evil-motion-state-cursor treemacs--eldoc-obarray treemacs-fringe-indicator-mode treemacs-user-header-line-format header-line-format treemacs-no-delete-other-windows treemacs-window-background-color treemacs--project-positions post-command-hook treemacs--post-command treemacs--build-indentation-cache 6 treemacs--select-icon-set treemacs--setup-icon-highlight treemacs--setup-icon-background-colors treemacs--setup-mode-line treemacs--reset-dom make-hash-table :test equal :size 20 run-mode-hooks treemacs-mode-hook] 6 (#$ . 9534) nil]) #@249 Verify that `treemacs-mode' is called in the right place. Must be run as advice to prevent changing of the major mode. Will run original MODE-ACTIVATION and its ARGS only when `treemacs--in-this-buffer' is non-nil. (fn MODE-ACTIVATION &rest ARGS) (defalias 'treemacs--mode-check-advice #[385 "\203 \302\"\207 \303=\203\304\207\305\306\307!!\210\310 \210\311\312\313\314\315\316#\313\317\315\316#\313\320\315\316#\313\321\315\316#\313\322\315\323#&c\207" [treemacs--in-this-buffer major-mode apply treemacs-mode nil switch-to-buffer get-buffer-create "*Clippy*" erase-buffer format "\n --------------------------------------------------------------------------------------\n | It looks like you are trying to run treemacs. Would you like some help with that? |\n | You have called %s, but that is just the major mode for treemacs' |\n | buffers, it is not meant to be used manually. |\n | |\n | Instead you should call a function like |\n | * %s, |\n | * %s, or |\n | * %s |\n | |\n | You can safely delete this buffer. |\n --------------------------------------------------------------------------------------\n%s\n" propertize "treemacs-mode" face font-lock-function-name-face "treemacs" "treemacs-select-window" "treemacs-add-and-display-current-project" " \\\n \\\n ____\n / \\\n | |\n @ @\n | |\n || |/\n || ||\n |\\_/|\n \\___/" font-lock-keyword-face] 12 (#$ . 12570)]) (byte-code "\300\301\302\303#\210\304\301!\207" [advice-add treemacs-mode :around treemacs--mode-check-advice provide] 4)