12 个版本

0.0.14 2024 年 7 月 28 日
0.0.13 2024 年 4 月 28 日
0.0.12 2024 年 3 月 28 日
0.0.9 2024 年 2 月 9 日
0.0.3 2023 年 7 月 31 日

#656网页开发

Download history 137/week @ 2024-04-28 3/week @ 2024-05-05 7/week @ 2024-05-19 17/week @ 2024-07-07 126/week @ 2024-07-28 2/week @ 2024-08-04

每月 128 下载量

Apache-2.0 OR MIT

460KB
4.5K SLoC

JavaScript 3.5K SLoC // 0.0% comments Rust 697 SLoC // 0.0% comments FreeMarker 2 SLoC

PageTop HighlightJS

PageTop 包用于在网页上显示漂亮的代码片段。

License API Docs Crates.io Downloads

概述

  • 利用功能丰富的 highlight.js JavaScript 库。
  • 支持 90+ 种编程语言。
  • 从所有 95+ 种可用主题中选择。
  • 提供添加代码片段的组件。
  • 突出显示多行代码块。
  • 检测 language-lang- 类前缀。
  • 自定义 highlight.js 初始化 JavaScript。
  • 智能加载 CSS & JS 资产。

使用方法

pagetop-hljs 添加到您的 Cargo.toml

[dependencies]
pagetop-hljs = "<Version>"

pagetop_hljs::HighlightJS 添加到您的依赖包

use pagetop::prelude::*;

impl PackageTrait for MyPackage {
    // ...
    fn dependencies(&self) -> Vec<PackageRef> {
        vec![
            // ...
            &pagetop_hljs::HighlightJS,
            // ...
        ]
    }

    fn configure_service(&self, cfg: &mut service::web::ServiceConfig) {
        cfg.route("/", service::web::get().to(hljs_sample));
    }
    // ...
}

然后在网页上放置您的代码片段

use pagetop_hljs::prelude::*;

#[service::get("/")]
async fn hljs_sample(request: HttpRequest) -> ResultPage<Markup, ErrorPage> {
    Page::new(request)
        .with_component(Snippet::with(
            HljsLang::Rust,
            r###"
// This is the main function.
fn main() {
    // Print text to the console.
    println!("Hello World!");
}
            "###,
        ))
        .render()
}

📦 关于 PageTop

PageTop 是一个具有观点的网页框架,用于构建模块化的 服务器端渲染 网页解决方案。

🚧 警告

PageTop 框架目前处于积极开发中。API 不稳定且经常更改。不建议在生产环境中使用,直到版本 0.1.0

📜 许可证

本项目的所有代码均采用以下任一许可证双重授权:

您可以选择您喜欢的许可证!这种双重许可方法是 Rust 生态系统中的事实标准。

依赖项

~26–38MB
~661K SLoC