为开发者设计的幻灯片演示工具Slidev

在这里插入图片描述

什么是 Slidev ?

Slidev 是专为程序员打造的演示文稿工具。该项目是基于 Web 的幻灯片制作和演示工具,让用户可以使用 纯文本+ Markdown 语法制作幻灯片,支持导出为 PDFPNG 格式的文件,或以单页面展示幻灯片。对于大多数不擅长做 PPT 的程序员,基于提供的现成主题也可以制作出看起来不错的演示文稿。

软件特点:

  • 📝 基于 Markdown - 使用您最喜欢的编辑器和工作流程
  • 🧑‍💻 开发者友好 - 内置语法突出显示、实时编码等
  • 🎨 主题化 - 主题可以与 npm 包共享和使用
  • 🌈 时尚 - 通过 UnoCSS 提供按需工具
  • 🤹 交互式 - 无缝嵌入 Vue 组件
  • 🎙 演讲者模式 - 使用另一个窗口甚至手机来控制幻灯片
  • 🧮 LaTeX - 内置 LaTeX 数学方程支持
  • 📰 图表 - 使用文本描述创建图表
  • 🌟 图标 - 直接访问任何图标集中的图标
  • 💻 编辑器 - 集成的编辑器,或者用于 VS Code 的扩展
  • 🎥 录制 - 内置录制和摄像头视图
  • 📤 可移植 - 导出为 PDFPNG 甚至可托管的 SPA
  • ⚡️ 快速 - 由 Vite 提供支持的即时重新加载
  • 🛠 可定制 - 使用 Vite 插件、Vue 组件或任何 npm 包进行扩展

Slidev 功能演示

准备

默认情况下, 如果您的 data 文件夹为空,容器在启动时,会在在该文件夹下生成模板文件 slides.md 和其他相关文件

但是这个默认的 slides.md 存在问题,日志中会显示 Internal server error: Element is missing end tag.错误

在这里插入图片描述

从而导致访问时会显示一个空白的页面

在这里插入图片描述

网页上也报错

Failed to load resource: the server responded with a status of 500 (Internal Server Error)

在这里插入图片描述

老苏一度以为是这个镜像有问题呢,所以老苏觉得应该自己准备一个 slides.md 来规避错误

---
layout: cover
background: https://sli.dev/demo-cover.png
---# 欢迎使用 Slidev!为开发者打造的演示文稿工具---# 第二页- 在单一 Markdown 文件中编写幻灯片
- 主题,代码高亮,可交互的组件,等等  
- 阅读文档了解更多!|

保存时,记得采用 UTF-8 编码

在这里插入图片描述

文件要放入 data 目录中

在这里插入图片描述

安装

在群晖上以 Docker 方式安装。

在注册表中搜索 slidev ,选择第一个 tangramor/slide,版本选择 latest

在这里插入图片描述

docker 文件夹中,创建一个新文件夹 slidev,并在其中建一个子文件夹 data

文件夹装载路径说明
docker/slidev/data/slidev模版和依赖文件等

在这里插入图片描述

端口

本地端口不冲突就行,不确定的话可以用命令查一下

# 查看端口占用
netstat -tunlp | grep 端口号
本地端口容器端口
30323030

默认没有对外暴露端口

在这里插入图片描述

+ 号自行添加

在这里插入图片描述

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

# 新建文件夹 slidev 和 子目录
mkdir -p /volume1/docker/slidev/data# 进入 slidev 目录
cd /volume1/docker/slidev# 运行容器
docker run -d \--restart unless-stopped \--name slidev \-p 3032:3030 \-v $(pwd)/data:/slidev \tangramor/slidev:latest

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

version: '3'services:slidev:image: tangramor/slidev:latestcontainer_name: slidevrestart: unless-stoppedports:- 3032:3030volumes:- ./data:/slidev

然后执行下面的命令

# 新建文件夹 slidev 和 子目录
mkdir -p /volume1/docker/slidev/data# 进入 slidev 目录
cd /volume1/docker/slidev# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d

容器刚启动时,会下载依赖模块,占用率会存在飙升的情况

在这里插入图片描述

本文写作时, latest 版本对应的软件版本为 v0.44.0

在这里插入图片描述

运行

播放模式

在浏览器中输入 http://群晖IP:3032 就能看到主界面

在这里插入图片描述

左下角有隐藏菜单

在这里插入图片描述

翻页的方法比较多,两侧或者方向键都是可以的

在这里插入图片描述

演讲者模式

在浏览器中输入 http://群晖IP:3032/presenter

在这里插入图片描述

移动端

在手机浏览器中输入 http://群晖IP:3032/entry,可以方便的切换模式

在这里插入图片描述

详细的功能指南,可以阅读官方的文档:https://cn.sli.dev/guide/why.html

参考文档

slidevjs/slidev: Presentation Slides for Developers
地址:https://github.com/slidevjs/slidev

Home | Slidev
地址:https://cn.sli.dev/

tangramor/slidev_docker: Docker image scripts for Slidev
地址:https://github.com/tangramor/slidev_docker

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/219640.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何使用ArcGIS Pro裁剪影像

对影像进行裁剪是一项比较常规的操作,因为到手的影像可能是多种范围,需要根据自己需求进行裁剪,这里为大家介绍一下ArcGIS Pro中裁剪的方法,希望能对你有所帮助。 数据来源 本教程所使用的数据是从水经微图中下载的影像和行政区…

C语言—小小圣诞树

这个代码会询问用户输入圣诞树的高度&#xff0c;然后根据输入的高度在控制台上显示相应高度的圣诞树。 #include <stdio.h>int main() {int height, spaces, stars;printf("请输入圣诞树的高度: ");scanf("%d", &height);spaces height - 1;st…

Postman介绍和快速使用

Postman 是什么&#xff1f; Postman 是一个流行的API&#xff08;Application Programming Interface&#xff09;开发工具&#xff0c;它使得开发者可以很容易地创建、测试、共享和文档化API。Postman 提供了一个友好的用户界面&#xff0c;来发送HTTP请求&#xff0c;接收响…

容器技术:从虚拟机到轻量级容器的革命

一、引言 首先&#xff0c;什么是容器&#xff1f; 容器是一种沙盒技术&#xff0c;主要目的是为了将应用运行在其中&#xff0c;与外界隔离&#xff1b;及方便这个沙盒可以被转移到其它宿主机器。本质上&#xff0c;它是一个特殊的进程。通过名称空间&#xff08;Namespace&a…

解析视频美颜SDK的算法:美肤、滤镜与实时处理

如今&#xff0c;美颜技术在视频处理中扮演着关键的角色&#xff0c;为用户提供更加精致的视觉体验。本文将深入探讨视频美颜SDK的算法&#xff0c;聚焦于美肤、滤镜与实时处理等方面&#xff0c;揭示背后的科技奥秘。 一、美肤算法的魅力 视频美颜的一个核心功能就是美肤&am…

实现el-table操作列点击弹出echarts

代码&#xff1a; <el-table-column :width"90"><template #default"scope"><el-popover placement"left-end" width"550" trigger"click"><div><div style"font-size: 18px; margin-left…

Kotlin 笔记 -- Kotlin 语言特性的理解(二)

都是编译成字节码&#xff0c;为什么 Kotlin 能支持 Java 中没有的特性&#xff1f; kotlin 有哪些 Java 中没有的特性&#xff1a; 类型推断、可变性、可空性自动拆装箱、泛型数组高阶函数、DSL顶层函数、扩展函数、内联函数伴生对象、数据类、密封类、单例类接口代理、inter…

音频I2S

前言 基于网上资料对相关概念做整理汇总&#xff0c;部分内容引用自文后文章。 学习目标&#xff1a;简单了解相关概念、相关协议。 1 概述 数字音频接口DAI&#xff0c;即Digital Audio Interfaces&#xff0c;顾名思义&#xff0c;DAI表示在板级或板间传输数字音频信…

1265. 数星星(树状数组/蓝桥杯)

题目&#xff1a; 输入样例&#xff1a; 5 1 1 5 1 7 1 3 3 5 5输出样例&#xff1a; 1 2 1 1 0 思路&#xff1a; 树状数组 代码&#xff1a; #include<cstdio> #include<iostream> using namespace std; const int N32010; int n; int tr[N],level[N];int lo…

Linux 基本语句_16_Udp网络聊天室

代码&#xff1a; 服务端代码&#xff1a; #include <stdio.h> #include <arpa/inet.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <stdlib.h> #include <unistd.h> #include <string…

云基础软件深化合作,云轴科技ZStack与麒麟软件战略签约

12月8日&#xff0c;云轴科技ZStack与麒麟软件战略合作签约仪式在北京举行&#xff0c;双方对过往紧密合作表达了充分肯定&#xff0c;并就进一步联合技术创新、打造重点行业标杆和持续赋能客户达成高度共识。云轴科技创始人&CEO张鑫和麒麟软件高级副总经理谢文征共同见证双…

教师考编需要什么条件

教师考编&#xff0c;了解考编需要什么条件是非常重要的。接下来&#xff0c;我来介绍几点教师考编的条件。 需要具备相应的学历背景。一般来说&#xff0c;考编需要具备本科或以上学历&#xff0c;并且所学专业与所报考的岗位相关。在某些特殊情况下&#xff0c;如报考幼儿园教…

sap table 获取 valuation class MBEW 查表获取

参考 https://www.tcodesearch.com/sap-tables/search?qvaluationclass

【️接口和抽象类的区别,如何选择?】

✅接口和抽象类的区别&#xff0c;如何选择&#xff1f; ✅ 接口和抽象类的区别✅方法定义✅修饰符✅构造器✅继承和实现✅单继承 、 多实现✅职责不同 ✅什么是模板方法模式&#xff0c;有哪些应用呢&#xff1f;✅典型理解✅示例&#x1f4a1;思考 ✅你在工作中是如何使用设计…

基于Java+Swingt学生信息管理系统

基于JavaSwing学生信息管理系统 一、系统介绍二、功能展示四、其他系统实现五、获取源码 一、系统介绍 1.用户登陆&#xff1a;在帮助按钮处&#xff0c;可以查看登陆账号及密码&#xff1a; 账号admin,密码123456 在未输入的情况下&#xff0c;会提示用户名不能为空&#xff…

设计模式——代理模式(结构型)

引言 代理模式是一种结构型设计模式&#xff0c; 让你能够提供对象的替代品或其占位符。 代理控制着对于原对象的访问&#xff0c; 并允许在将请求提交给对象前后进行一些处理。 问题 为什么要控制对于某个对象的访问呢&#xff1f; 举个例子&#xff1a; 有这样一个消耗大量…

为什么选择计算机?大数据时代学习计算机的价值探讨

还记得当初自己为什么选择计算机? 计算机是在90年代兴起的专业,那时候的年轻人有驾照、懂外语、懂计算机是很时髦的事情! 当初你问我为什么选择计算机,我笑着回答:“因为我梦想成为神奇的码农!我想像编织魔法一样编写程序,创造出炫酷的虚拟世界!”谁知道,我刚入门的…

java内置的数据结构

Java语言提供了许多内置的数据结构&#xff0c;包括&#xff1a; 1. 数组&#xff08;Array&#xff09;&#xff1a;数组是最基本的数据结构之一&#xff0c;它是一个有序的元素集合&#xff0c;每个元素都有一个对应的索引。在Java中&#xff0c;数组可以通过声明和初始化来创…

stm32F4——蜂鸣器与按键的实例使用

stm32F4——蜂鸣器与按键的实例使用 蜂鸣器和按键的实质都是GPIO的使用&#xff0c;所以基本原理就不介绍啦&#xff0c;基本寄存器其实都是GPIO的高低电平的赋值&#xff0c;可以参考stm32——LEDGPIO的详细介绍 使用的开发板是华清远见的stm32F407VET6&#xff0c;都是M4的内…

AtCoder Beginner Contest 332 G. Not Too Many Balls(最大流转最小割 dp)

题目 n(n<500)种球&#xff0c;第i种有ai(0<ai<1e12)个球&#xff0c; m(m<5e5)个盒子&#xff0c;第j个能放bj(0<bj<1e12)个球 特别地&#xff0c;第j个盒子最多能放i*j个第i种球 求m个盒子能放的最多的球的总数 思路来源 官方题解 题解 显然是一个最…