vim编辑器


class BaseStreamBlock(StreamBlock):
    """
    Define the custom blocks that `StreamField` will utilize
    """
    heading_block = HeadingBlock()
    paragraph_block = RichTextBlock(
        features=['h2', 'h3', 'bold', 'italic', 'link', 'ol', 'ul', 'hr', 'document-link', 'image',
                  'embed', 'code', 'code-block', 'superscript', 'subscript', 'strikethrough', 'blockquote'],
        icon="fa-paragraph",
        template="blocks/paragraph_block.html"
    )
    image_block = ImageBlock()
    block_quote = BlockQuote()
    rawhtml_block=RawHTML()
    codeformatext_block=CodeFormatTextBlock()
    embed_block = EmbedBlock(
        help_text='Insert an embed URL e.g https://www.youtube.com/embed/SGJFWirQ3ks',
        icon="fa-s15",
        template="blocks/embed_block.html")

系统管理员的重要工作就是得要修改与设置某些重要软件的配置文件, 因此至少得要学会一种以上的命令行的文书编辑器。 在所有的 Linux distributions 上头都会有的一套文书编辑器就是 vi , 而且很多软件默认也是使用 vi 做为他们编辑的接口, 因此鸟哥建议您务必要学会使用vi 这个正规的文书编辑器。 此外, vim 是进阶版的 vi , vim 不但可以用不同颜色显示文字内容, 还能够进行诸如 shell script, C program 等程序编辑功能, 你可以将 vim 视为一种程序编辑器!

编辑器那么多, 我们之前在第四章也曾经介绍过那简单好用的 nano , 既然已经学会了nano , 干嘛鸟哥还一直要你学这不是很友善的 vi 呢? 其实是有原因的啦! 因为:

所有的 Unix Like 系统都会内置 vi 文书编辑器, 其他的文书编辑器则不一定会存在;很多个别软件的编辑接口都会主动调用 vi ( 例如未来会谈到的 crontab, visudo, edquota等指令) ;

vim 具有程序编辑的能力, 可以主动的以字体颜色辨别语法的正确性, 方便程序设计;因为程序简单, 编辑速度相当快速

那么什么是 vim 呢? 其实你可以将 vim 视作 vi 的进阶版本, vim可以用颜色或底线等方式来显示一些特殊的信息。 举例来说, 当你使用 vim 去编辑一个 C 程序语言的文件, 或者是我们后续会谈到的 shell script 脚本程序时, vim 会依据文件的扩展名或者是文件内的开头信息,判断该文件的内容而自动的调用该程序的语法判断式, 再以颜色来显示程序码与一般信息。

也就是说, 这个 vim 是个“程序编辑器”啦! 甚至一些Linux基础配置文件内的语法, 都能够用 vim 来检查呢! 例如我们在第七章谈到的 /etc/fstab 这个文件的内容