d2learn社区

一个技术知识分享、学习、交流的开源社区

反馈 & 交流

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工具安装

  • 下载 xlings压缩包
  • 解压到本地 并运行其中tools目录下的install.win.bat
  • linux系统安装及更多细节见 -> 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把本地内容更新到仓库即可触发在线文档自动更新并部署

反馈 & 交流