Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Inconsistent href

未关闭
#382 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
48/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
领域
documentation

调研方向

使用 test/scribblings/test.scrbl 及其包信息 info.rkt 重现该问题,并遵循报告中描述的三个 scribble 命令。比较生成的 tocviewlink href 值;当生成的 HTML 不包含特定于机器的绝对文件路径,并且在文档所述的调用模式之间保持可移植时,即表示完成。

由索引模型根据 Issue 内容生成。

描述

tl;dr: generated href could be inconsistent depending on several factors. Here are some of the possible values:

  • <a href="file:///Users/sorawee/playground/test/scribblings/test.html#%28part._foo%29" class="tocviewlink" data-pltdoc="x">foo</a>
  • <a href="test.html#%28part._foo%29" class="tocviewlink" data-pltdoc="x">foo</a>
  • <a href="#%28part._foo%29" class="tocviewlink" data-pltdoc="x">foo</a>

The second and third variation seem OK, but the first variation contains an absolute path, which is not portable to other systems.

First variation

Consider test/scribblings/test.scrbl

#lang scribble/base

@section{foo}

foo content

Make sure to install test as a package with the following info.rkt:

#lang info
(define collection "test")
(define scribblings '(("scribblings/test.scrbl" ())))

Then, in the directory test/scribblings, run scribble +m test.scrbl.

The generated HTML contains:

<a href="file:///Users/sorawee/playground/test/scribblings/test.html#%28part._foo%29" class="tocviewlink" data-pltdoc="x">foo</a>

Second variation

Now, run scribble +m --dest . test.scrbl.

The generated HTML contains:

<a href="test.html#%28part._foo%29" class="tocviewlink" data-pltdoc="x">foo</a>

Third variation

Now, run raco pkg remove test and re-run scribble +m test.scrbl.

The generated HTML contains:

<a href="#%28part._foo%29" class="tocviewlink" data-pltdoc="x">foo</a>
主要语言
Racket
星标
251
派生
101
平均合并
11 天 9 小时
30 天内合并 PR
2

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

racket/scribble 的其他 Issue

查看 racket/scribble 的全部 Issue

相似的 Issue

更多 Documentation Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。