连续点亮的椅子

slit的Python项目详细描述


关于

slit或sequential lit是一个用于创建 令人信服的,准确的软件教程,用最少的努力。

Slit借鉴了文学编程学院的课程 由他们自己的文档生成。但是,在其他工具集中的地方 关于程序是什么,slit关注如何编写程序,以及 提供更丰富的语法来表示程序的sequence 从头到尾的创作。

通过这样做,slit将识字编程变成了一个不可阻挡的工具。 为创建引人注目的,可证明准确的编程教程。

功能

  • 及时全面控制代码和文档结构
  • 仔细记录每一步,包括错误的转弯, 回溯,扩展现有代码
  • 生成工作,复杂,多文件,多语言程序 单个教程中的示例
  • 将shell命令直接输出到文档中,以显示 程序的进展

谁用slit?

安装

slit是一个python脚本,已经用python 2.7进行了测试。

用法

在尽量减少新语法的同时,slit添加了一些 很难找到的有用功能。

基础知识

slit使用markdown作为文档格式,但是可以与任何 编程语言。

slit文件应该用.lit扩展名标记,附加到 常规文件扩展名。

hello_world.c.lit

slit的工作原理是允许您将代码组装到单独的容器中,然后 从他们那里建立你的文件

代码容器在 一个人排队。它们必须缩进才能被接受为代码宏

Here is our hello world example!

    << main >=
    int main (void)
    {
        printf("hello world!\n");
    }

当缩进级别返回到0时,代码块将结束。

        printf("hello world!\n");
    }

The code block is over!

基本宏

slit语法包含三个核心元素。

  • 宏赋值-<< NAME >>=
  • 宏追加-<< NAME >>+=
  • 宏值-<< NAME >>

追加宏

append宏(<< NAME >>+=)允许您将代码添加到 一个新的或现有的容器,其中{TT9}$是容器名称。

赋值宏

赋值宏(<< NAME >>=)将向新的或 现有容器,覆盖已经存在的容器,在那里 是容器名称。

容器名称

包含名称可以是下列之一

  • 命名容器,包含字母数字字符和下划线, 比如codeblock1main_function
  • 文件容器,包含扩展名为的单个单词文件名, 类似于filename.txt带有空格或位于 当前不支持不同的路径
  • *容器,它将创建一个以 删除了扩展名为.lit的顶级slit文件。所以为了 hello_world.c.lit,容器*将生成 hello_world.c代码文件

顶级文档文件总是在源文件中生成 具有.md扩展名的名称,因此hello_world.c.lit将生成 hello_world.c.md

包含指令

使用#include指令将单个教程组织到 多个文件

#include "part1.spin"
#include "part1.diagram"
#include "part2.spin"
#include "part2.diagram"
#include "gfx_cave.lit"
#include "conclusion.md"

shell命令

警告:这将允许教程直接在 你的系统。小心使用。

使用shell宏(<<#! command >>)转储shell的输出 在教程中输入命令。

观察的输出<<#! tree test/ >>命令。

$ tree test/
test/
├── bacon
├── chicken
└── turkey

0 directories, 3 files

这个特性本质上依赖于平台和构建环境,并且 将使您的教程构建更不可移植。明智地使用!

默认情况下禁用此功能。使用-s启用

更多信息

有关slit参数的完整列表,请使用--help

$ ./slit --help
usage: slit [-h] [-s] [-c] PATH [PATH ...]

A sequential literate processor.

positional arguments:
  PATH           path to lit file to process (dir or file)

optional arguments:
  -h, --help     show this help message and exit
  -s, --shell    enable shell code execution
  -c, --convert  create lit file from source

作者

Slit由Brett Weir创作,灵感来自Connor Osborne的 lit工具和Donald Knuth,用于 一开始就想到有文化的编程。

错误报告

请向slit issue tracker报告所有错误。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
从FXML转换为JAVA时,不会加载javafx映像   泛型Java模板调用运行时推断   javascript为什么我的活动没有响应我在样式文件中所做的更改?   如何在HttpClient(java、apache)中自动重定向   java CSV到H2字符编码不匹配   在Java中使用BorderLayout按比例调整用户界面大小   Java中的重定向异常   java RecyclerView搜索过滤器仅过滤一个值   java标准api multiselect与count和distinct不起作用   java为什么我在Solr上做的每一个查询都会占用我10s MB的堆内存?   java如何使用方法解决:锁定帐户三次后?   java如何实现睡眠以显示图像的幻灯片   在Java中,按对象参数对映射<对象,列表<对象>>进行排序   java无法从密钥库读取密钥   java试图将水平recycleview嵌套到垂直recycleview中   认识C++对Web应用开发的重要性   使用共享对象实例化多个Runnable的java含义?   javabeans何时使用JavaBean?