1

Emacsでは、テキストのグループをどのように揃えますか:

signal slv4   : std_logic_vector(3 downto 0);
signal slv16  : std_logic_vector(15 downto 0);
signal slv8   : std_logic_vector(7 downto 0);
signal slv32  : std_logic_vector(32 downto 0);

だからこのように見える

signal slv4   : std_logic_vector( 3 downto 0);
signal slv16  : std_logic_vector(15 downto 0);
signal slv8   : std_logic_vector( 7 downto 0);
signal slv32  : std_logic_vector(32 downto 0);

基本的に、「downto」の前に数字を右揃えにしたいです。もう 1 つの副作用は、テキストが右揃えになることです (セミコロンが並んでいます)。

どうすればこれを達成できますか?私はいじってみましたがM-x alignM-x align-regexp探しているものを手に入れることができないようです。

また、私は vhdl-mode を使用しているので、何かが組み込まれているのでしょうか?

4

3 に答える 3

0

これが私が現在使用しているものです(これは正常に動作します):

(defun my-align-downto (beg end)
    (interactive "r")
    (align-regexp beg end "\\([0-9]* downto*\\)" -1 0 t))

さらに一歩進んで、このページの一番下にある情報に基づいて独自の「整列フック」を作成しようと思いました: http://www.emacswiki.org/emacs/AlignCommands#toc8

(add-hook 'align-load-hook (lambda ()
    (add-to-list 'align-rules-list
      '(downto-align
        (regexp  . "\\([0-9]* downto*\\)")
        (group   . -1)
        (spacing . 0)
        (modes   . vhdl-mode)
        (repeat  . t)))))

結果が得られません。:(

vhdl-mode はこれらのアライメント ルールをオーバーライドしますか?

于 2013-05-10T03:28:31.353 に答える
0

テキストの途中にスペースが必要なので、vhdl モードではそのようなことはないと思います。ほぼ正しい位置合わせであれば、tab動作をいじることができます。この場合、マクロを使用できます。

http://www.emacswiki.org/emacs/KeyboardMacros

于 2013-05-09T03:48:41.047 に答える