我有一些代码和数据样本我复制到_static
目录,我想链接到文档中的那些文件,如:
.. _pca-run.py: _static/example.data
但问题是sphinx没有为这个文件创建一个正确的相对链接,只是按原样复制值。因此,对于_static
不在同一目录中的嵌套文件,链接不起作用。
答案 0 :(得分:11)
您想要的是:download:
文字角色。 (正如米塔尔在评论中提到的那样)。
http://www.sphinx-doc.org/en/1.6/markup/inline.html#role-download
使用它将告诉Sphinx将给定文件复制到“_downloads”目录并创建一个指向它的超链接。这最初打算用于可下载的文件,例如PDF(在html输出中)或tarball,或者其他什么。它适用于任何其他非ReST文件。
如果你真的想要,你可以写一个扩展来做到这一点,但我从来没有看到过需要,因为:download:
完全符合我的要求。
答案 1 :(得分:7)
为图片找到正确答案:使用import javafx.application.Application;
import javafx.concurrent.Service;
import javafx.concurrent.Task;
import javafx.scene.Scene;
import javafx.scene.control.ProgressBar;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
ProgressBar progressBar = new ProgressBar();
StackPane root = new StackPane(progressBar);
Scene scene = new Scene(root, 200, 200);
primaryStage.setScene(scene);
primaryStage.show();
Service service = new Service() {
@Override
protected Task createTask() {
return new Task() {
@Override
protected Object call() throws Exception {
for(int i=0; i<100; i++){
updateProgress(i, 100);
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
return null;
}
};
}
};
progressBar.progressProperty().bind(service.progressProperty());
service.start();
}
public static void main(String[] args) {
Application.launch(args);
}
}
预先制作目标文件的路径。对于从/
automodule
将引用相对于当前正在处理的python文件的文件.. image:: some_file.png
,而
some_file.png
将引用相对于.. image:: /some_file.png
位置的文件some_file.png
。这样,就不需要用图像污染源层次结构。