🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: fj.editor.xemacs
Article #265

Re: [Q] c,c++ font-lock on XEmacs

#265
From: Katsumi Yamaoka
Date: Wed, 15 Aug 2001 01:52
55 lines
4193 bytes
こんにちは山岡と申します。C や C++ はほとんどわかりません。

>>>>> In <9lbar7$h5g$1@news511.nifty.com>
>>>>>	Atushi Shinmura <atushi.shinmura@nifty.ne.jp> wrote:

新村さん> XEmacs 21.4.3 on Linux(RedHat 7.0 base MLD-5 Kernel 2.4.0)
新村さん> Gateway2000 Pentinum 200Mhz)で使っております。標記のように、
新村さん> C,C++のソース編集が多いのですが、cc-mode と、font-lockによる
新村さん> 色付けで躓いております。例えば、

新村さん> void funk(int foo){
新村さん>     int count, //カウンタ
新村さん>         var1,  //変数1
新村さん>         var2; //変数2
新村さん> .......................
新村さん> }
新村さん> という具合にコーディングし、各パラメータを色分けしたいのです
新村さん> が、count以下の、var1,var2が色分けされません。www.xemacs.org
新村さん> でサンプルのスクリーンショットを見ると、上記コーディングで、
新村さん> ちゃんと色分けされており、何を指示すれば、そうなるのか判りま
新村さん> せん。

すみませんが、具体的な絵の URL とどの部分なのかを教えていただけ
ませんか?
最近 font-lock の着色ルールを拡張する用があって font-lock.el を
読み下したのですが、C や Lisp などのメジャーなモードで使うルール
はかなりの労作であることがわかりました。font-lock に関することで
比較的簡単にカスタマイズできるのはあらかじめ用意されている face
の色 (*1) と着色の度合い (*2) くらいで、着色のルールに踏み込むに
は font-lock をかなり深く理解する必要があります。

(*1) 例えば `font-lock-type-face' の色は M-x edit-faces とか
     M-x customize-face を使ったり、.emacs に何か書くことで変え
     ることができます。

(*2) `font-lock-maximum-decoration' というオプションで指定します。
     C や C++ では 3 段階用意されており、例えば

     (setq font-lock-maximum-decoration
	   '((c++-mode . 2) (c-mode . 1) (t . t)))

     とすると c++-mode ではレベル 2、c-mode ではレベル 1 になり、
     数が大きいほど派手になります。レベル t は最大を意味し、C や
     C++ では 3 と同義です。なお `font-lock-maximum-decoration'
     のデフォルト値は単なる t で、すべてのモードで最大レベルの着
     色をします。この設定を変えた後で手っ取り早く確認するには
     M-x font-lock-mode を 2 回実行すれば良いでしょう。

さて、新村さんの個人設定で font-lock の動作に影響するものは無い
ので、現在見えるものが普通の動作なのではないでしょうか。
font-lock は xemacs.org の絵が作られた後でいろいろ変わっているで
しょうし、もしかすると KarlHeg さんなどは特別なことをやっている
のかもしれないので、直接尋ねてみるのも手かもしれませんね。
-- 
Katsumi Yamaoka <yamaoka@jpl.org>
Technical Details
Message-ID: <yosu3d6u6qdn.fsf@jpl.org>
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!isdnet!gatel-ffm!news-fra1.dfn.de!fu-berlin.de!uni-berlin.de!207.228.244.9!not-for-mail
References: <9lbar7$h5g$1@news511.nifty.com>

Show Full Headers
Complete Article Headers
X-Google-Language: Japanese,JIS
X-Google-Thread: 1107f7,5ebf9490fc0312ee
X-Google-Attributes: gid1107f7,public
X-Google-ArrivalTime: 2001-08-14 19:03:30 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!newsfeed.google.com!sn-xit-02!supernews.com!isdnet!gatel-ffm!news-fra1.dfn.de!fu-berlin.de!uni-berlin.de!207.228.244.9!not-for-mail
From: Katsumi Yamaoka <yamaoka@jpl.org>
Newsgroups: fj.editor.xemacs
Subject: Re: [Q] c,c++ font-lock on XEmacs
Date: Wed, 15 Aug 2001 10:52:51 +0900
Organization: Emacsen advocacy group
Lines: 55
Message-ID: <yosu3d6u6qdn.fsf@jpl.org>
References: <9lbar7$h5g$1@news511.nifty.com>
NNTP-Posting-Host: 207.228.244.9
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-2022-JP
X-Trace: fu-berlin.de 997841006 9047487 207.228.244.9 (16 [27265])
X-Orig-Path: yamaoka
User-Agent: T-gnus/6.15.4 (based on Oort Gnus v0.04) (revision 06)
 XEmacs/21.5 (beta2) (artichoke) (sparc-sun-solaris2.6) WEMI/1.14.3
 (金谷) CLIME/1.14.3
 (寺井西口) APEL/10.3
X-Face: #kKnN,xUnmKia.'[pp`;Omh}odZK)?7wQSl"4o04=EixTF+V[""w~iNbM9ZL+.b*_CxUmFk
 B#Fu[*?MZZH@IkN:!"\w%I_zt>[$nm7nQosZ<3eu;B:$Q_:p!',P.c0-_Cy[dz4oIpw0ESA^D*1Lw=
 L&i*6&(