2013-02-17 18 views
5

Python用のPEP 8スタイルのガイドでは、インラインコメントを残りの行でtwo spacesで区切ることをお勧めします。しかし、Emacsのデフォルトでは、comment-dwimまたはindent-for-commentを実行すると、行末とコメントの間にスペースが1つしか置かれません。 emacsでこのデフォルトの動作を変更する方法はありますか?インラインの行間のEmacs間隔のコメント

私はEmacsの23.3.1を実行しています

答えて

5

これは、あなたが欲しいものを行う必要があります。

(add-hook 'python-mode-hook 
     (lambda() (set (make-local-variable 'comment-inline-offset) 2))) 
1

comment-start" # "に(1つのスペースの前に、1 afters)を設定してみてください。

私は、これはあなたがやりたいかもしれないと思う
M-x set-variable comment-start " # " 
+0

この_somewhat_は動作しますが、2つの問題がある:第一に、それは私が行をコメントアウトときに、彼らは余分なスペースとコメントします(すべての行についてコメント構文を変更するにはそれらをテキストの残りの部分と整列させない)。次に、 'comment-dwim'をインラインコメントで再度実行すると、インラインコメントを再整列して1つのスペースしか持たないようにします。 – rottweiler

+0

そうです、わかりました。私は昨夜、最初のスペースがどこに挿入されたのかを調べようとしたが、時間がなくなった。 – derekv

1

(defun my-comment-indent() 
    (interactive) 
    (end-of-line) 
    (let ((comment-column (+ 2 (current-column)))) 
    (comment-indent))) 
1

あなたは、あなたが見つける、C-h v RET comment-inline-offsetによってEmacsのマニュアルを確認することができます@Andと答えてください。

ここでは単純化したバージョンです:

(add-hook 'python-mode-hook 
    (lambda() (setq-local comment-inline-offset 2)))