d2learn社区
一个技术知识分享、学习、交流的开源社区
反馈 & 交流
- d2learn社区论坛
- 即时交流群(Q): 167535744
xlings简介
一个自动化编译运行检测、教程教学类项目构建和管理工具
功能
- 项目模板 - 快速生成一个包括书籍、练习代码等内容的项目结构
- 自动化练习检测 - 编译器驱动开发学习
- Markdown书籍 - 编写markdown文件生成在线电子书
- 常用工具下载 - 常用技术类工具/软件下载
- 多语言代码运行检测 - 自动识别代码文件进行(编译)运行, 并时实检测代码变化显示运行结果
- c
- cpp
- python
- ...
- 多项目管理和下载 - 多个项目管理、信息查看、下载等功能
- AI提示引导 - 配置对应的大模型, 做为错误代码提示小助理
- openai - dev
- tongyi - ok
- ...
使用场景
- 个人编程学习
- 文档、书籍编写
- 环境配置和软件安装
- 课程教学、实验搭建
快速安装
方式一: 命令行安装
使用git获取源码
git clone git@github.com:d2learn/xlings.git
安装xlings
在项目的根目录执行安装脚本
linux/macos
bash tools/install.unix.sh
windows
tools\install.win.bat
方式二: 下载zip包安装
下载压缩包 -> xlings.zip
解压zip并运行安装脚本
- windows: 双击解压后 tools目录中的
install.win.bat
进行安装 - linux: 鼠标右键点击 tools目录中的
install.unix.sh
选择运行程序选项进行安装
常用命令功能
xlings version: pre-v0.0.1
Usage: $ xlings [command] [target]
Commands:
run, easy to run target - sourcecode file
install, install software/env(target)
drepo, print drepo info or download drepo(target)
update, update xlings to the latest version
uninstall, uninstall xlings
help, help info
Project Commands: (need config.xlings)
init, init project by config.xlings
book, open project's book in default browser
checker, start project's auto-exercises from target
repo: https://github.com/d2learn/xlings
项目管理 - drepo
查看所有项目信息
xlings drepo
输出示例
drepo lists
--- d2python ---
git : git@github.com:d2learn/d2python.git
url : https://github.com/d2learn/d2python
name : d2python
tags : python
profile : 动手学d2python项目
--- d2x ---
git : git@github.com:d2learn/xlings.git
url : https://github.com/d2learn
name : d2x
tags : template
profile : drepo的模板配置文件
--- xlings ---
git : git@github.com:d2learn/xlings.git
url : https://github.com/d2learn/xlings
name : xlings
tags : tools, build, auto-exercises, pkg-manager
profile : 技术、实验、练习、自学类项目, 快速构建和管理工具
--- d2ds ---
git : git@github.com:d2learn/d2ds.git
url : https://github.com/d2learn/d2ds
name : d2ds
tags : c++, data-structures
profile : 强调动手实践的数据结构学习项目,其中包含在线书籍、公开课、练习代码等子项目
--- d2cpp ---
git : git@github.com:d2learn/d2cpp.git
url : https://github.com/d2learn/d2cpp
name : d2cpp
tags : c++
profile : 动手学C++项目
run xlings drepo [drepo_name] to download
项目下载和使用
以下载d2ds并运行dslings练习代码为例
下载项目
下载d2ds项目到当前目录
xlings drepo d2ds
安装目标项目依赖
在下载项目的根目录运行命令安装该项目的依赖
cd d2ds
xlings install
运行项目练习
运行d2ds项目中的dslings代码练习
xlings dslings
3.项目搭建
快速使用
使用xlings快速创建一个项目(以clings为例)
项目配置
在一个空目录中新建一个config.xlings文件, 填写描述项目的基础信息
xlings_name = "clings" -- 项目名
xlings_lang = "c" -- 项目中使用的编程语言
生成项目结构
在config.xlings同目录执行项目初始化
xlings init
运行自动练习检测
使用xlings [项目名]
开启自动练习检测
xlings clings # clings 是配置文件中配置的项目名
或
xlings checker
动手写数据结构 | d2ds - WIP
Dive into Data Structures - 强调动手实践的数据结构学习项目,其中包含在线书籍、公开课、练习代码等子项目
目标
- 1. 任何人都可以在网上免费获取
- 2. 不仅强调原理, 更强调动手实践
- 3. 自动化的代码练习系统, 让使用者轻松从零实现一个数据结构
- 4. 强调共建共享, 让更多的人加入d2ds社区, 快速迭代和提升内容
- 5. 提供社区成员用于代码分享、技术交流、的论坛和群组
创建文档仓库
使用模板仓库创建新的文档仓库步骤
1.使用模板仓库
-
点击xlings-book-template右上角
Use this template
, 在自己的账号下创建新的仓库, 或者直接点击此连接 -
在
Repository name
中填写新仓库的名字 -
填写描述(可选)
-
点击
Create repository
创建
2.开启仓库github-pages
在创建的新仓库页面
Settings
设置- 点击左侧
Pages
Build and deployment
Branch
中选择分支(一般为main
-/(root)
)
- 点击
save
保存
- 点击左侧
注: 点击保存后, 大概几分钟在线书籍/笔记/文档就能部署好
3.访问在线书籍
访问部署的文档
# https://d2learn.github.io/xlings-book-template/
https://username.github.io/repo-name
- username: 为你的账号名
- repo-name: 为新建的仓库名
快速使用
使用xlings-book-template
快速搭建一个在线书籍 | 文档 | 笔记的配置介绍
创建文档仓库
使用模板仓库创建新的文档仓库步骤
1.使用模板仓库
-
点击xlings-book-template右上角
Use this template
, 在自己的账号下创建新的仓库, 或者直接点击此连接 -
在
Repository name
中填写新仓库的名字 -
填写描述(可选)
-
点击
Create repository
创建
2.开启仓库github-pages
在创建的新仓库页面
Settings
设置- 点击左侧
Pages
Build and deployment
Branch
中选择分支(一般为main
-/(root)
)
- 点击
save
保存
- 点击左侧
注: 点击保存后, 大概几分钟在线书籍/笔记/文档就能部署好
3.访问在线书籍
访问部署的文档
# https://d2learn.github.io/xlings-book-template/
https://username.github.io/repo-name
- username: 为你的账号名
- repo-name: 为新建的仓库名
配置并更新内容
修改文档的基础信息和文档的内容介绍
下载文档仓库
把新创建的文档仓库clone到本地
git clone your_repo_git_url
本地编辑器安装和预览 - 可选
安装依赖
执行安装vscode编辑器和mdbook的命令
xlings install
预览文档
执行命令启动浏览器, 动态显示文档内容并进行预览
xlings book
注: xlings工具安装
修改文档配置信息
按照自己的需求修改文档配置文件 book/book.toml
- title: 文档|书籍名
- author: 作者
- git-repository-url: 仓库链接
[book]
title = "Xlings Book Template | 文档 | 书籍 | 笔记"
author = "Author Name"
language = "en"
[build]
build-dir = "book"
[output.html]
git-repository-url = "https://github.com/d2learn/xlings-book-template"
[preprocessor.foo]
# Add any additional configurations
修改文档内容
book/src/SUMMARY.md
: 为文档目录文件book/src/chapter_*.md
: 文档对应的章节
编辑内容
可以使用vscode或其他任何的编辑器修改boo/src
下的内容
修改时并预览 - 可选
xlings book
然后使用git把本地内容更新到仓库即可触发在线文档自动更新并部署