3

Fortran 90 コンストラクトを使用するように一部の Fortran 77 コードを更新していますが、emacs は私の選択したエディターです。現在、ソースは固定形式であり、すぐに変更されることはありません (外部の制約により)。私が選択できる 2 つの emacs メジャー モードはfortran-mode、fortran 77 構造体の構文のみを強調表示するものです (かなり面倒だと思うキーワードとしてのmoduleorなどは理解できませんが、固定形式は理解します - コードを正しくインデントします)。contains必要な場合)。私が使用できる他の主要なモードはf90-mode、ただし、インデントがすべて間違っているため、これも少し面倒です。から構文の強調表示を取得する方法はありますf90-modeが、で使用されるインデント構造はありfortran-modeますか?

4

2 に答える 2

2

これは実際に可能であるように見えます。構成ファイルに次を追加してみてください。

(require 'f90)
(add-hook 'fortran-mode-hook 'f90-font-lock-2)

これは、emacs.stackexchange.comで提供されているソリューションに従っているだけなので、ユーザーdeprecatedに感謝が流れるはずです!

于 2015-07-16T01:54:27.017 に答える
0

追加することで、 のような強調表示を実現できます。fortran-mode

(add-hook 'after-change-major-mode-hook
 (lambda () (font-lock-add-keywords 'fortran-mode
 '(
      ("\\(CONTAINS\\)" 1 font-lock-keyword-face t )
      ("\\(USE\\)"      1 font-lock-keyword-face t )
 ))))

~/.emacs (または ~/.emacs.d/init.el) ファイルに。

包括的な解決策を得るには、正規表現を使用した追加作業が必要になります。しかし、数行で、コードに慣れることができるはずです。さまざまな面を使用して、さまざまな色を得ることができます。

font-lock-comment-face
font-lock-constant-face
font-lock-function-name-face 
font-lock-keyword-face
font-lock-type-face
font-lock-warning-face
于 2013-10-09T17:24:17.973 に答える