[解決済み] EmacsでC言語のコードを自動インデントするにはどうしたらいいですか?
質問
emacsを使い始めて間もないのですが、リターンキーを押してもインデントしない傾向があり、イライラしています。C-jを押せばそうなるのは分かっているのですが、その習慣が身につきません。どうしてもできないのです。リターンを押さないといけないのに、いちいちタブを引き直すのが嫌なんです。
オプションでCモードフック、C++モードフックなどを探し、2つのキーマッピング(10と13、0Aと0Dはアセンブリでよく使うのでCR/LFと記憶していました)を定義していました--1つは " と書いてあったので考えました。
(lambda nil (define-key lisp-mode-map [13] (quote newline-and-indent))
で、もう一方は同じだが
(quote newline)
の代わりに、末尾に-and-indentをつけるだけで、うまくいくと思ったのです。
しかし、そうではありません。設定し、保存し、試してみましたが、無駄でした。emacsを再起動してもダメでした。どうしたらインデントできるようになりますか?emacsは基本的なニーズを満たすために設定するためにlispの学位を必要とするのはひどく非常識です。
また、副次的な質問として、コピーして クリップボードは? キリングやヤンクは便利ですが、どこかに貼り付けたいときにいちいちedit->copyするのが面倒です。
-- EDIT --
OK、次の行を.emacsに入れたらうまくいきました。
(add-hook 'c-mode-common-hook (lambda ()) (local-set-key (kbd "RET") 'newline-and-indent)))
お世話になりました
解決方法を教えてください。
をご覧ください。 emacswiki - 自動インデント
そこで提案されているように、次のコードを.emacsに記述してください。
(defun set-newline-and-indent ()
(local-set-key (kbd "RET") 'newline-and-indent))
(add-hook 'c-mode-hook 'set-newline-and-indent)
C Default Stylという変数をカスタマイズすることができます。emacsのOptions->Customize Emacs->Specific Optionで、c-default-styleと入力し、好みのスタイルに設定してください。こうすることで、TABキーを押す必要がなくなります。行頭から入力し、";" を押すと、自動的にインデントされます。
ご参考になれば幸いです。
関連
-
[解決済み] Emacsでカレントバッファを閉じるためのキー配列は?
-
[解決済み] Emacsでフォントサイズを設定するには?
-
[解決済み] emacsで現在の単語を削除(またはkill)するにはどうしたらいいですか?
-
[解決済み] Emacsで現在の行を削除するにはどうしたらいいですか?
-
[解決済み] Emacsのウィンドウを1つだけ閉じる
-
[解決済み] git に自分の好きなエディタを使わせてコミットするにはどうしたらいいですか?
-
[解決済み] EmacsとVimの違い
-
[解決済み】Emacsで文字を改行で置き換えるには?
-
[解決済み】Emacsで「元に戻す」後に「やり直す」のはどうやるの?
-
[解決済み】Emacsで開いているファイルの名前を変更するにはどうしたらいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Emacsでカレントバッファを閉じるためのキー配列は?
-
[解決済み] EmacsでC言語のコードを自動インデントするにはどうしたらいいですか?
-
[解決済み] Emacsでフォントサイズを設定するには?
-
[解決済み] emacsで現在の単語を削除(またはkill)するにはどうしたらいいですか?
-
[解決済み] Emacsで現在の行を削除するにはどうしたらいいですか?
-
[解決済み] Emacsのウィンドウを1つだけ閉じる
-
[解決済み] Emacs 新しいフレームを作成するときに、新しい「空の」バッファを作成するにはどうすればよいですか?
-
[解決済み】Emacsで文字を改行で置き換えるには?
-
[解決済み】Emacsで「元に戻す」後に「やり直す」のはどうやるの?
-
[解決済み】Emacsで開いているファイルの名前を変更するにはどうしたらいいですか?