xemacs を使用している場合は、mmmmode を使用して構文を強調表示できます。私は Statweave で ESS を使用しているので、最初の人が ESS を使用して sybntax の強調表示を行い、statweave を使用して作業を行ってみませんか。ただし、私はSASを使用していませんが、同じファイルでstataとRを使用しており、どちらも独自の構文強調表示で機能します。(require 'mmm-mode) (require 'mmm-vars) (setq mmm-global-mode 'maybe) (setq mmm-submode-decoration-level 1)
(mmm-add-group 'latex-stats'((r-tag :submode r-mode :face mmm-code-submode-face :delimiter-mode nil :front "begin{Rcode}" :back "end{Rcode} " :back-offset (backward-char -1) :insert ((?R R-tag nil @ "\begin{Rcode}" @ "\n" _ "\n" @ "\end{Rcode}" @) ) ) (sta-tag :submode STA-mode :face mmm-code-submode-face :delimiter-mode nil :front "begin{Statacode}" :back "end{Statacode}" :back-offset (backward-char - 1) :insert ((?S STATA-tag nil @ "\begin{Statacode}" @ "\n" _ "\n" @ "\end{Statacode}" @)) )))
(リストに追加 'mmm-mode-ext-classes-alist'(nil "-swv.tex" latex-stats))
SASモードに変更するだけで(それが呼ばれていると思います)、latex.elファイル(init.elにラムダでロードされています)に次の(local-set-key [(コントロール f1)]
'(lambda () (interactive) (if (string-match "\.tex" buffer-file-name) (progn (let (file-name file-name1 file-name-wihoutswv) (setq ファイル名 (buffer- file-name)) (setq file-name1 (file-name-nondirectory file-name)) (setq file-name-wihoutswv (replace-regexp-in-string "-swv" "" file-name1)) (setq file -name-wihoutswv (replace-regexp-in-string "\.tex" "" file-name-wihoutswv)) (if (string-match "-swv\.tex" buffer-file-name) (find-file- other-window (concat file-name-wihoutswv ".tex")) (find-file-other-window (concat file-name-wihoutswv "-swv.tex")) ) ) ) (メッセージ "You are in Latex-モードで、これは swv ファイルでも TeX ファイルでもありません。対応する tex ファイルまたは swave ファイルを開けません") )))
と
(global-set-key [f1]
'(lambda () (interactive) (save-buffer) (if (string-match "-swv\.tex" buffer-file-name)) (progn (interactive) (latex-mode) ) ;;(font-lock-fontify-buffer) (balance-windows) (mylatex-delete-indent) (save-buffer) (save-window-excursion (run-current-statweave-file)) ; (mylatex-clean ) ) (if (string-match "\.tex" buffer-file-name) (progn (interactive) (latex-mode) ;(font-lock-fontify-buffer) (バランスウィンドウ) (do-pdf) ; (mylatex-clean) ) (メッセージ「これは TeX ファイルでも SWV ファイルでもなく、バッファーをファイルに保存する以外に何をすべきかわかりません。だから私はそうしました」) )) )
)
) (save-window-excursion (setq status (shell-command cmd1-str output-buffer))) ;;(メッセージステータス) ;; (let (status) ((shell-command cmd1-str output-buffer))))) ))
見た目はひどいし、私はLispの専門家ではないので、非効率な点がたくさんあると確信していますが、うまくいきます。