1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-01-24 05:20:04 +08:00
SpaceVim/docs/cn/api.md

53 lines
2.0 KiB
Markdown
Raw Normal View History

---
title: "公共 API"
2018-01-28 20:48:30 +08:00
description: "SpaceVim 公共 API 提供了一套开发插件的公共函数,以及 neovim 和 vim 的兼容组件"
lang: cn
---
2018-09-14 22:17:52 +08:00
# 公共 API
2018-09-14 22:17:52 +08:00
<!-- vim-markdown-toc GFM -->
2018-10-28 20:52:12 +08:00
- [简介](#简介)
- [使用方法](#使用方法)
2018-09-14 22:17:52 +08:00
- [可用 APIs](#可用-apis)
2018-09-14 22:17:52 +08:00
<!-- vim-markdown-toc -->
2018-01-28 20:48:30 +08:00
2018-10-28 20:52:12 +08:00
## 简介
2018-09-14 22:17:52 +08:00
为了兼容不同版本的 Vim避免使用重复的兼容函数SpaceVim 提供了一套兼容的公共 API。开发插件时
可以在你的插件中使用这些公共 API这一思想主要借鉴于 [vital.vim](https://github.com/vim-jp/vital.vim)。
2018-10-28 20:52:12 +08:00
## 使用方法
2018-09-14 22:17:52 +08:00
可以通过 `SpaceVim#api#import()` 函数导入相关 API参考以下示例
2018-09-14 22:17:52 +08:00
```viml
" 导入 file API并赋值给变量 s:file
let s:file = SpaceVim#api#import('file')
2018-09-14 22:17:52 +08:00
" 导入 system API并赋值给变量 s:system
let s:system = SpaceVim#api#import('system')
2018-09-14 22:17:52 +08:00
" 调用 system API 的 isWindows 成员变量
if s:system.isWindows
echom "Os is Windows"
endif
echom s:file.separator
echom s:file.pathSeparator
```
<!-- SpaceVim api cn list start -->
2018-10-03 23:20:04 +08:00
## 可用 APIs
2018-10-03 23:20:04 +08:00
| 名称 | 描述 |
| ------------------------------------- | ----------------------------------------------------------------------- |
| [file](file/) | can not find Description |
| [job](job/) | 兼容 neovim 和 vim 的异步协同 API对于旧版 vim 采用非异步机制 |
| [system](system/) | can not find Description |
| [unicode#spinners](unicode/spinners/) | unicode#spinners API 可启用一个定时器,根据指定的名称定时更新进度条符号 |
| [vim#highlight](vim/highlight/) | vim#highlight API 提供一些设置和获取 Vim 高亮信息的基础函数。 |
2018-09-14 22:17:52 +08:00
<!-- SpaceVim api cn list end -->