Vim对齐行内注释

5

不太确定如何用其他方式表达,只能通过示例说明。

假设...

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',    # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
    'NAME': 'adroit',                      # Or path to database file if using sqlite3.
    'USER': 'root',                    # Not used with sqlite3.
    'PASSWORD': '',                      # Not used with sqlite3.
    'HOST': '',                         # Set to empty string for localhost. Not used with sqlite3.
    'PORT': '',                            # Set to empty string for default. Not used with sqlite3.
}

我将如何格式化它,以便所有注释都正确对齐,就像这样:

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.mysql',  # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
    'NAME': 'adroit',                      # Or path to database file if using sqlite3.
    'USER': 'root',                        # Not used with sqlite3.
    'PASSWORD': '',                        # Not used with sqlite3.
    'HOST': '',                            # Set to empty string for localhost. Not used with sqlite3.
    'PORT': '',                            # Set to empty string for default. Not used with sqlite3.
}

上述示例来自Django设置文件,但我在各种语言中经常遇到此问题,因此理想情况下,我希望找到一种无论注释分隔符如何都可以解决此问题的方法。


可能是Align End Of Line Comments in Vim?的重复问题。 - Michael Berkowski
请参考链接中的问题,不过在您的情况下,将它们对齐的表达式是 :Tabularize /# - Michael Berkowski
1
我看到了第一部分,觉得应该通过排列评论来编辑这个问题 =P。 - puk
哇,我从未意识到我有多需要这个! - weronika
1个回答

5
使用 tabular 插件。使用此插件,您只需可视化选择要对齐的部分,然后输入以下内容即可:
'<,'>Tabularize /#

它运行得非常出色,几乎看起来像是魔法。

有没有安装插件的说明?仅仅复制文件会导致加载错误。 - puk
@FergalMoran 我知道。这太棒了。 - lucapette
@puk Github仓库安装比较棘手。我从这里下载了它: http://www.vim.org/scripts/script.php?script_id=3464 - Fergal Moran
请将 @puk 下载到您的 ~/.vim/plugins 目录中。 - Fergal Moran
@FergalMoran,你确定你不是指的~/vim/plugin目录(没有s)吗?我没有一个plugins目录。如果我创建一个,什么也不会发生。在我的~/vim/plugin目录中,所有文件都是.vim文件。也许你提供给我错误的下载链接了? - puk
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接