Cモードおよび関連モードでは、特定の印刷文字がエレクトリックとなります。これらの文字は、自身を挿入するだけでなく、現在の行を再インデントし、オプションで改行も挿入します。エレクトリック文字は、{、}、:、#、;、,、<、>、/、*、(、および)です。
インデントが乱雑なコードを編集する場合、電動インデントが不便に感じられるかもしれません。CCモードを使い始めたばかりの方には、違和感があるかもしれません。電動アクションはコマンド C-c C-l で切り替え可能です。有効にすると、モード名の後のモードラインに ‘/cl’ と表示されます(c が存在する場合は、コメントスタイルがブロックか行かに応じて ‘*’ または ‘/’ となります)。CCモードにおけるモードラインのインジケーターの詳細については、The CC Mode Manual の Minor Modes を参照してください。
エレクトリックアクションの切り替え (c-toggle-electric-state)。接頭辞引数が正の場合はエレクトリックアクションを有効にし、負の場合は無効にします。
電動文字が改行を挿入するのは、電動状態に加えてauto-newline機能が有効になっている場合のみです(モード名の後のモードラインに‘/cla’と表示されます)。この機能は、コマンド C-c C-a で有効または無効にできます:
自動改行機能 (c-toggle-auto-newline)
の有効・無効を切り替えます。接頭辞引数を指定すると、その値が正の場合は自動改行機能を有効にし、負の場合は無効にします。
通常、CCモードの設定では、Emacsが自動改行を挿入する具体的な条件を指定します。また、これを直接設定することも可能です。The CC Mode ManualのCustom Auto-newlinesを参照してください。