undefinedoffset/silverstripe-codebank

代码库是一个代码片段管理器,支持包括 C++、ActionScript、Flex、HTML 和 SQL 等多种语言的语法高亮。代码库还具备简单的版本历史记录和比较查看器,让您可以并排查看两个版本之间的更改。

安装: 133

依赖关系: 1

建议者: 0

安全性: 0

星标: 46

关注者: 8

分支: 15

类型:silverstripe-module

3.1.2 2016-08-13 16:25 UTC

This package is auto-updated.

Last update: 2024-08-29 02:11:34 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License Build Status

代码库是一个代码片段管理器,支持包括 C++、ActionScript、Flex、HTML 和 SQL 等多种语言的语法高亮。代码库还具备简单的版本历史记录和比较查看器,让您可以并排查看两个版本之间的更改。

要求

安装(模块)

composer require undefinedoffset/silverstripe-codebank 3.*@stable

手动安装(仅模块)

  1. 从此处下载并提取最新的代码库模块发布版本: http://programs.edchipman.ca/applications/code-bank/
  2. 将模块存档提取到您的 SilverStripe 安装根目录,提取的文件夹中应包含根目录下的 _config.php 以及其他文件/文件夹
  3. 在浏览器中输入 http://{你的域名}/{代码库服务器文件夹根路径}/dev/build?flush=all
  4. 现在您将在 CMS 菜单中看到代码库选项

安装(独立)

  1. 从此处下载并提取最新的代码库发布版本: http://programs.edchipman.ca/applications/code-bank/
  2. 将代码库提取到您的 SilverStripe 兼容的 web 服务器上的某个位置,您现在应该会看到代码库文件夹和框架文件夹等
  3. 按照 http://doc.silverstripe.org/framework/en/installation/ 中的安装说明进行操作
  4. 如果安装程序成功完成,您现在将能够在代码库的桌面客户端中使用远程服务器。只需将服务器路径设置为 http://{你的域名}/{代码库服务器文件夹根路径}
  5. 您应该确保 SilverStripe 安装程序已删除安装文件 install.php 和 install-frameworkmissing.html

升级到新版本

仅模块(使用 composer,推荐)

composer update --no-dev undefinedoffset/silverstripe-codebank
仅模块(不使用 composer)
  1. 从此处下载最新的代码库发布版本: http://programs.edchipman.ca/applications/code-bank/
  2. 将存档提取到与您的 SilverStripe 框架相同的文件夹中
  3. 在浏览器中输入 http://{你的域名}/{代码库服务器文件夹根路径}/dev/build?flush=all

独立(使用 composer,推荐)

composer update --no-dev
独立(不使用 composer)
  1. http://programs.edchipman.ca/applications/code-bank/ 下载并提取最新的代码库发布版本,覆盖代码库和主题文件夹
  2. 下载并提取仅包含代码库、框架和主题文件夹的 CodeBank,以替换这些文件夹及其子文件夹
  3. 在浏览器中输入 http://{你的域名}/{代码库服务器文件夹根路径}/dev/build?flush=all,然后您可以正常使用代码库

带有刷子的自定义语言

代码库使用 SyntaxHighlighter 来突出显示代码片段,要提供具有语法高亮的语言,您必须将以下内容添加到您的 yml 配置 中,然后运行 dev/build?flush=all。

CodeBank:
    extra_languages:
        - Name: "Example Language" #Name of the language
          HighlightCode: "example" #Highlighter code
          FileName: "ex" #File extension
          Brush: "mysite/javascript/shBrushEx.js" #Relative Path to the snippet highlighter brush

切换搜索引擎

默认情况下,Code Bank 使用 MySQL 的全文搜索功能,在 Postgres 等数据库中使用部分匹配过滤进行搜索,既适用于客户端也适用于网页界面。如果您已安装 silverstripe/fulltextsearch 并有可用的 Solr 服务器,Code Bank 提供了将搜索引擎切换到 Solr 的支持。您可以通过将以下内容添加到 mysite/_config/config.yml 中来切换搜索引擎,在 URL 中添加 flush=1 以更新配置缓存。

CodeBank:
    snippet_search_engine: "SolrCodeBankSearchEngine"

编写自己的引擎

Code Bank 提供了一个 API 供您挂钩自己的引擎,您只需要实现 ICodeBankSearchEngine 接口并在接口中定义方法。关键是要记住,doSnippetSearch() 方法接受 3 个参数,第一个 $keyword 是用户正在搜索的术语/关键字(这可能是空的),第二个 ($langugeID) 是用户过滤到的语言的数据库 ID。最后一个参数 ($folderID) 是系统请求匹配的文件夹的 ID。该方法本身应始终返回 SS_List 子类,通常应该是一个只包含或指向代码片段的 DataList。要启用您的自定义引擎,请遵循 上述步骤

版权声明