sphinx.ext.linkcode
- Adiciona links externos ao código-fonte¶
Autor do módulo: Pauli Virtanen
Adicionado na versão 1.2.
Essa extensão examina as descrições de objetos (.. class::
, .. function::
etc.) e adiciona links externos ao código hospedado em algum lugar da web. A intenção é semelhante à extensão sphinx.ext.viewcode
, mas assume que o código-fonte pode ser encontrado em algum lugar na Internet.
Em sua configuração, você precisa especificar uma função linkcode_resolve
que retorna uma URL baseada no objeto.
Configuração¶
- linkcode_resolve¶
Esta é uma função
linkcode_resolve(domain, info)
, que deve retornar a URL para o código-fonte correspondente ao objeto em determinado domínio com informações dadas.A função deve retornar
None
se nenhum link for adicionado.O argumento
domain
especifica o domínio da linguagem em que o objeto está.info
é um dicionário com as seguintes chaves garantidas para estarem presentes (dependendo do domínio):py
:module
(nome do módulo),fullname
(nome do objeto)c
:names
(lista de nomes para o objeto)cpp
:names
(lista de nomes para o objeto)javascript
:object
(nome do objeto),fullname
(nome do item)
Exemplo:
def linkcode_resolve(domain, info): if domain != 'py': return None if not info['module']: return None filename = info['module'].replace('.', '/') return "https://somesite/sourcerepo/%s.py" % filename