2012-02-26 15 views
7

コードを入力するとき、Emacsは一時的に、一致する中かっこまたは括弧を強調表示します。しかし、既存のコードでは、もし私が双子を強調したら、それを照合して中括弧または括弧を強調表示する方法がありますか?Emacsブレースとブラケットの強調表示?

コンパイラのエラーや警告を処理するときに、しばしばサニティチェックをしようとしています。その間にコードを挿入する前にコーディングするときに、通常は両方のブレースを入力しますが、デバッグ中にコードをコメントアウトするときに間違いなく1つのブレースをコメントアウトすることがあります。

中括弧やブラケットとEmacsのマッチングに関するアドバイスはありますか?

OSは主にLinux/Unixですが、OS XとWindowsでも使用しています。

+2

[Emacsで角括弧にマッチするコマンドは何ですか?](http://stackoverflow.com/questions/261522/what-is-the-command-to-match-brackets-in-emacs) –

答えて

10

言語をサポートしている場合は、ParEditを深刻な外観にしてください。あなたがLispの方言を使っていないのであれば、それほど有用ではありません。

一般的な中かっこ/括弧/括弧の強調表示については、highlight-parenthesesモードを参照してください(複数のレベルの中かっこは、pointがその中にある場合は常に色付けします)。カスタマイズによってshow-paren-modeをオンにすることもできます(つまり、M-x customize-variable show-paren-mode)。 1つのポイントに一致するブレース/ブラケット/括弧が強く強調表示されます(ポイントのポイントと一致しない場合は別の色になります)。

.emacsは現在、(とりわけ)

(require 'highlight-parentheses) 

(define-globalized-minor-mode global-highlight-parentheses-mode highlight-parentheses-mode 
    (lambda nil (highlight-parentheses-mode t))) 

(global-highlight-parentheses-mode t) 

なども私を働くことがshow-paren-modeカスタマイズを、(もちろん、舌足らずとき私もpareditを使用しますが、これらはまだわずかに便利です)が含まれています。

1

最近の質問:M-x blink-matching-openは、まるでそれを挿入したかのように、既存のクローズドパレンの「再点滅」します。マッチする括弧を見るもう1つの方法は、M-C-bとM-C-f(マッチしたペアの括弧にジャンプする)を使うことです。これは非常に便利なナビゲーションコマンドです。

0

2番目のParEdit。それは、リスプ開発のために少なくとも一番良いものです。

FWIWこの機能を頻繁に使用すると、前後にぴったり合うようになります。

;; goto-matching-paren 
;; ------------------- 
;; If point is sitting on a parenthetic character, jump to its match. 
;; This matches the standard parenthesis highlighting for determining which 
;; one it is sitting on. 
;; 
(defun goto-matching-paren() 
    "If point is sitting on a parenthetic character, jump to its match." 
    (interactive) 
    (cond ((looking-at "\\s\(") (forward-list 1)) 
     ((progn 
      (backward-char 1) 
      (looking-at "\\s\)")) (forward-char 1) (backward-list 1)))) 
(define-key global-map [(control ?c) ?p] 'goto-matching-paren) ; Bind to C-c p 

免責条項:私はインターネットからコピーされたこの機能の作者ではありません。

関連する問題