2011-12-12 40 views
14

我有一些代碼和數據採樣我複製到_static目錄,我想鏈接到這些文件中的文件,是這樣的:在Python獅身人面像,如何鏈接到一個文件中_static目錄

.. _pca-run.py: _static/example.data 

但問題是,獅身人面像不會創建一個適當的相對鏈接到這個文件,但只是照原樣複製這些值。因此,對於_static不在同一目錄中的嵌套文件,鏈接不起作用。

+3

似乎有一個'':download:''角色:http://stackoverflow.com/questions/2921724/include-a-text-file-as-is-in-python-sphinx-docs – Mitar

回答

9

你想要的是:download:文字角色。 (正如Mitar在他的評論中提到的那樣)。

http://sphinx.pocoo.org/markup/inline.html#role-download

使用,這將告訴獅身人面像給定的文件複製到「_downloads」目錄下,並創建一個超鏈接到它。這本來是爲了用於可下載的文件,比如PDF(在html輸出中)或者tarballs,或者其他的。它對任何其他非ReST文件都適用。

如果你真的想要,你可以寫一個擴展來做到這一點,但我從來沒有見過需要,因爲:download:正是我想要的。

+0

但是' ':下載:'非常詳細。如果你想多次使用它,它會變得很煩人。 – Mitar

+0

你是否知道像':download:'那樣的作用,但是接受通配符(或'glob'模式)? – Unode

+0

@Unode:我不確定我是否理解你爲什麼要這樣做,但你可能需要創建自己的擴展。這並不難。查看[sphinx-contrib](https://bitbucket.org/birkenfeld/sphinx-contrib/)瞭解一些示例。 –

5

只需爲此找到正確答案圖片:使用/預先確定目標文件的路徑。用於從automodule

.. image:: some_file.png 

引用將是指相對於目前正在處理的蟒文件的文件some_file.png圖像,而

.. image:: /some_file.png 

將參考該文件some_file.png相對於conf.py的位置。這樣,就不需要用圖像污染源層次結構。

+1

是的,爲我工作:'.. image ::/_static/foo.png' – FraggaMuffin