SpaceVim

一个模块化的 Vim/Neovim 配置集合


主页 | 关于我们 | 入门指南 | 使用文档 | 开发指南 | 用户社区 | 赞助 | English


可用模块 » lang#c

模块简介

这一模块为 SpaceVim 提供了 C/C++/Object-C 的开发支持,包括代码补全、语法检查等特性。

启用模块

可通过在配置文件内加入如下配置来启用该模块:

[[layers]]
  name = "lang#c"

功能特性

模块配置

设置是否启用基于 clang 的语法高亮。默认并未开启,开启该功能需要 vim8 或者 neovim。

设置可执行程序 clang 的路径。

设置 libclang 的路径,默认情况下该选项值为空。

该字典存储编辑不同 C 家族文件类型时所使用的标准库。默认值为:

{
    "c": "c11",
    "cpp": "c++1z",
    "objc": "c11",
    "objcpp": "c++1z",
}

可以使用一 List 值来初始化该选项。 例如:clang_flag = ["-Iwhatever"]

以下为一个完整的 lang#c 模块载入示例:

[[layers]]
  name = "lang#c"
  clang_executable = "/usr/bin/clang"
  [layers.clang_std]
    c = "c11"
    cpp = "c++1z"
    objc = "c11"
    objcpp = "c++1z"

除此之外,也在项目根目录新建一个 .clang 文件,可以将编译参数逐行写入。 SpaceVim 将会自动读取 .clang 文件内的参数。

例如:

-std=c11
-I/home/test

需要注意的是,若 .clang 文件中包含了std选项,将会覆盖掉模块选项 clang_std 的值。

快捷键

快捷键 功能描述
SPC l r 编译并执行当前文件

由Jekyll强力驱动