問題タブ [cc-mode]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java コーディング スタイルと Emacs cc モードの構成
GNU/Linux Debian マシンで、含まれている cc モード (c バージョン 5.32.2) で GNU/Emacs HEAD を使用しています。
Code Conventions for the Java Programming Language、Android の Code Style Guidelines for Contributors、およびいくつかのカスタム ルールを管理するカスタム スタイルを定義しようとしています。
Lisp の初心者として、ゼロから始めるのは賢明ではないようです。結果として、私はgoogle-c-styleを出発点として使用し、ネストされた条件を除いて、ほとんどのインデント ルールに対して意図した動作を得ることができました (以下のコード スニペットを参照)。
その投稿から、カスタム スタイルを定義(arglist-cont-nonempty . ++)
しました (完全なコード: custom-java-style.el )。残念ながら、ほとんどの場合は意図したとおりにインデントされていますが、
ネストされた条件が間違ってインデントされています:
Ctrl-c Ctrl+s2行目に報告Syntactic analysis: ((arglist-cont-nonempty 2447 2450) (arglist-cont-nonempty 2447 2452))
すると、明らかに8( )ではなく16スペース(2回++
)のインデントがあり++
ます。
次のインデントを取得したいと思います。
(,(when (fboundp …)))
に使用されたような条件を定義しようとしましstatement-cont
たが、成功しませんでした (私の Lisp 知識の欠如も役に立ちません)。
さて、質問: 私のアプローチは正しいですか、それとも間違っていますか? 意図した動作を実装するにはどうすればよいですか?
(malabar-mode や JDEE は使いたくないので、使用するように言わないでください。)
乾杯、
ルノー
更新 2011/12/06 (コメントへの対応)
ここで聖戦を始めるつもりはありません。自分の理由で Emacs を使いたい人は Emacs に固執することができ、他の人は好きなように使います…</p>
そうは言っても、私は Emacs を使用するのは私だけで、他のメンバーは Eclipse が好きなチームで働いています。私はコーディング規則を担当しているので、同僚と協力して適切な保存アクションを取得し、Eclipse のフォーマッターの構成を支援してきました。私が言えることは、Eclipse の保存アクションとフォーマッターは構成がまったく簡単ではないということです...主な違いは、優れたチェックボックスを備えた優れた GUI を使用できることですが、複雑さを軽減するのにはあまり役立ちません。
私は Emacs を使い続けています…</p>
c - Emacs インデント
Emacs では、(cc モードで) return を押した後にのみ行がインデントされます。それは正常ですか?新しい行にヒットしたときに自動的にインデントするように変更できますか?
たとえば、変数をどのように見るのThere are a number of predefined styles. Take a look at the variable ‘c-style-alist’ to see a list of them.
ですか?
emacs - Emacs c-mode は utf-8 を認識できませんか?
いくつかの中国語を含み、utf-8 を使用してエンコードされた 1 つの C++ ヘッド ファイルを読み取る必要があります。
Emacs はこのエンコーディングを認識するはずですが、実際には次のようになります。
次に、テキストモードに変更しました。動作します:
また、python-mode、lisp-mode などもテストしましたが、c-mode、c++-mode、java-mode 以外はすべて動作します。cc-mode または cc-vars に何か問題があるようです。
この奇妙な問題を解決する方法を知っている場合は、私を助けてください。
c - Emacsのインデント機能
私はcc-mode
Emacs で作業していますが、インデントが非常に面倒です。
VIM ユーザーとして、私は長いインデントに慣れているだけでなく、タブからタブへと好きなだけ押すという贅沢にも慣れています。
Emacs では、私の TAB は にマップされgoto-line
ます。まず、現在の行 (またはポイントの後にあるもの) をインデントするために設計された関数はどれですか? indent-region
領域を強調表示する必要があるため、面倒です。
第二に、インデントを修正する最良の方法は何ですか?
ありがとうございました、
emacs - emacsccモードでC++自動ヒントを作成することは可能ですか?
「オートヒント」が正しい言葉かどうかはわかりませんが、説明はできます
たとえば私が書くとき
そこにある利用可能なもののリストを見たいのですが、「。」についても同じです。そして「->」、それが可能だといいのですが。
cryptography - AES-CCM 追加認証データ長 l(a)
RFC-3610 に従って AES-CCM を実装しましたが、なぜ追加の認証済みデータの長さ l(a) を MAC で保護する必要があるのか疑問に思っています。
emacs - } が入力された後にポイントを前の行に切り替える方法は?
私はccモードでemacs24を使用しています.emacsをより「賢く」する方法を知りたいです。} を入力すると、新しい行が自動的に挿入され、例外としてインデントされます。ポイントを前の行に切り替える方法を知りたいです。たとえば、関数を定義すると、emacs の動作は次のようになります。
「//point」は}入力後のカーソル位置です。しかし、私はこれが欲しいです:
カーソルの位置が前の行に切り替わり、インデントが自動的に行われることを願っています。emacs がこれを実行できることは知っていますが、その方法がわかりません。誰が私を助けてくれますか?
emacs - c++-mode-hook と c-mode-hook が 2 回実行されているように見える
このコマンドを使用してemacsを起動します
次に、 C-xC-e を使用してすべての行を評価します
この後、ミニバッファーが表示されます
および c++-mode-hook はまったく同じように実行されます
ミニバッファ
なぜそれが2回実行されるのか、何か間違っています。
emacs - emacsのcモードで自動入力を有効にするにはどうすればよいですか?
すべて
今、私はcモードでemacsを使ってcソースを編集しています。ただし、自動入力モードはまったく機能していないようです。ここで私がどのようにそれを有効にして使用しようとしたか。
- Mx自動充填モード(自動充填モードを有効にする)
- 自動入力サイズ(現時点では80文字)より長い行を入力しました->行が途切れませんでした
- Mqを発行して自動入力しようとしました
しかし、上記の試みはまったくうまくいきませんでした。誰かが私が間違ったことを指摘できますか?
よろしくお願いします。