8个版本

0.1.6 2022年1月21日
0.1.5 2021年11月24日
0.1.4 2021年10月22日
0.1.2 2021年9月9日
0.0.6 2021年4月27日

#693GUI

每月 25次下载

(GPL-3.0-only…

1.5MB
33K SLoC

SixtyFPS的LSP(语言服务器协议)服务器

此目录包含SixtyFPS的LSP服务器实现,具有诊断、代码补全、转到定义等功能,更重要的是,实时预览

通用用法

LSP服务器由一个二进制文件组成,名为sixtyfps-lsp(或在Windows上为sixtyfps-lsp.exe)。它提供所有功能,并允许任何实现了标准化LSP协议的编程编辑器与其通信。

如果您已安装Rust,可以通过运行以下命令安装二进制文件

cargo install sixtyfps-lsp

这将使最新发布的版本在$HOME/.cargo/bin中可用。如果您想尝试开发版本,也可以将cargo install指向git仓库:对于发布版本。或者,要安装开发版本

cargo install sixtyfps-lsp --git https://github.com/sixtyfpsui/sixtyfps --force

或者,您可以下载我们为Linux或Windows预先构建的二进制文件之一

  1. 打开 https://github.com/sixtyfpsui/sixtyfps/releases
  2. 点击最新版本
  3. 从“资产”下载Linux x86-64的二进制文件sixtyfps-lsp-linux.tar.gz或Windows x86-64的二进制文件sixtyfps-lsp-windows.zip
  4. 将下载的存档解压缩到您选择的目录。

接下来,配置您的编辑器以使用此二进制文件,不需要任何参数

以下是已经测试过的编辑器列表。

在Visual Studio Code中使用

对于VSCode,我们在本仓库中有一个扩展,您可以直接从市场安装。

凯特

语法高亮

凯特依赖于语法高亮文件的存在来使用LSP,因此我们将首先设置它。文件sixtyfps.ksyntaxhighlighter.xml需要复制到凯特可以找到它的位置。请参阅凯特文档

在Linux上,可以通过运行以下命令来完成此操作

mkdir -p ~/.local/share/org.kde.syntax-highlighting/syntax/
wget https://raw.githubusercontent.com/sixtyfpsui/sixtyfps/master/tools/lsp/sixtyfps.ksyntaxhighlighter.xml -O ~/.local/share/org.kde.syntax-highlighting/syntax/sixtyfps.xml

在Windows上,下载sixtyfps.ksyntaxhighlighter.xml%USERPROFILE%\AppData\Local\org.kde.syntax-highlighting\syntax

LSP

要设置LSP,请按通用用法部分中的说明安装sixtyfps-lsp二进制文件

cargo install sixtyfps-lsp

然后转到设置 > 配置凯特。在插件部分,启用LSP-Client插件。这将向设置对话框中添加一个LSP客户端部分。在LSP客户端部分,转到用户服务器设置,并在文本区域中输入以下内容

{
  "servers": {
    "SixtyFPS": {
      "path": ["%{ENV:HOME}/.cargo/bin", "%{ENV:USERPROFILE}/.cargo/bin"],
      "command": ["sixtyfps-lsp"],
      "highlightingModeRegex": "SixtyFPS"
    }
  }
}

QtCreator

要设置lsp

  1. 如上文中通用用法部分所述,使用sixtyfps-lsp二进制文件安装cargo install
  2. 然后在Qt Creator中,转到工具 > 选项并选择语言客户端部分。
  3. 点击添加
  4. 作为名称,使用"SixtyFPS"
  5. 使用*.60作为文件模式。(不要使用MIME类型)
  6. 作为可执行文件,选择~/.cargo/bin/sixtyfps-lsp二进制文件(不需要任何参数)
  7. 点击应用确定

要预览组件,当您打开一个.60文件时,将光标移至您想要预览的组件名称,然后按Alt + Enter打开代码操作菜单。从该菜单中选择显示预览

对于语法高亮,QtCreator支持与凯特相同的格式,在相同的位置有xml文件。请参阅上一节中的说明以启用语法高亮。

Vim

Vim和neovim通过不同的插件支持语言服务器协议。我们推荐使用Conquer of Completion插件。与SixtyFPS LSP服务器一起使用,这可以在编辑.60文件时提供内联诊断和代码补全。

安装扩展后,例如通过vim-plug,需要更改两个额外的配置以将LSP服务器集成到vim中

  1. 使vim能够识别正确的文件类型.60

在您的vim配置文件中(例如~/.vimrc),添加以下内容以在打开.60文件时自动识别

autocmd BufEnter *.60 :setlocal filetype=sixtyfps
  1. 配置Conquer of Completion以使用SixtyFPS LSP服务器

启动 vim 并运行 :CocConfig 命令以打开允许编辑 JSON 配置文件(coc-settings.json)的缓冲区,并确保在 language 服务器部分存在以下映射

{
  "languageserver": {
    "sixtyfps": {
      "command": "sixtyfps-lsp",
      "filetypes": ["sixtyfps"]
    }
  }
}

Vim 语法高亮

https://github.com/RustemB/sixtyfps-vim

Neovim

https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#sixtyfps

Sublime Text

要设置lsp

  1. 如上文中 通用用法 部分所述,使用 cargo install 安装 sixtyfps-lsp 二进制文件
  2. 在 Sublime Text 中使用 Package Control 安装 LSP 包(sublimelsp/LSP)
  3. 将 SixtyFPS 语法高亮文件下载到您的用户包文件夹中,例如在 macOS 上 ~/Library/Application Support/Sublime Text/Packages/User/ : https://raw.githubusercontent.com/sixtyfpsui/sixtyfps/master/tools/lsp/sublime/SixtyFPS.sublime-syntax https://raw.githubusercontent.com/sixtyfpsui/sixtyfps/master/tools/lsp/sublime/SixtyFPS.tmPreferences
  4. 将 LSP 包设置文件下载到您的用户包文件夹中:https://raw.githubusercontent.com/sixtyfpsui/sixtyfps/master/tools/lsp/sublime/LSP.sublime-settings
  5. LSP.sublime-settings 中的 sixtyfps 命令路径修改为指向您家目录中的 cargo 安装路径(将 YOUR_USER 替换为您的用户名):"command": ["/home/YOUR_USER/.cargo/bin/sixtyfps-lsp"]
  6. 从 Sublime 的命令面板运行 "LSP: Enable Language Server Globally" 或 "LSP: Enable Lanuage Server in Project" 以允许服务器启动。
  7. 打开一个 .60 文件 - 如果服务器启动,其名称将在状态栏的左侧显示。

为了 预览组件,当您打开一个 .60 文件时,将光标移至您想要预览的组件的名称,然后选择编辑器窗格右侧出现的 "Show preview" 按钮。

依赖项

~10–31MB
~476K SLoC