[CEDET-devel] conditionally disabling semantic
Brought to you by:
zappo
From: <ry...@ds...> - 2003-02-24 05:36:42
|
Hi all, I use pcl-cvs (aka pcvs in emacs 21) daily. I use the cvs-mode-idiff differencing command dozens if not hundreds of times each day. Hence the extra 3 or 4 second delay that semantic causes while it parses files cvs-mode-idiff loads for differencing purpose was too much for me especially since these files are used only for differencing and nothing else. So I wrote the code below to conditionally suppress semantic on temporary files. I tracked semantic-activate-mode-bindings down by starting with semantic-post-change-major-mode-function which was in find-file-hook list. What do you think? Is there a better way? Should something like this be a part of semantic? (defadvice semantic-activate-mode-bindings (around suppress-tmp-files activate compile) "Don't setup semantic for tmp files such as files CVS loads for the purpose of differencing." (cond ;; Bypass files loaded by CVS for differencing. ;; This doesn't work on files retrieved with explicit version numbers. ((string-match "\\.\\(HEAD$\\|BASE\\)$" (buffer-name)) ;; Hmm. I thought the line below would not be needed at first, ;; because bypassing the body of semantic-activate-mode-bindings ;; would not setup semantic variables. But this advice does not ;; work without the line below. -ryk2/23/03. (setq semantic-toplevel-bovine-table nil)) (t ad-do-it))) |