2012-05-02 11 views
8

Necesito hacer un enlace a fuentes en github desde mi scaladoc. Construyo esos documentos con la tarea sbt doc.¿Vincular a fuentes de scaladoc?

Hay dos problemas - en primer lugar, no me gusta crear varios directorios vacíos anidados para mis .scala archivos, así que por lo general el paquete de ellos, todo en uno - al igual que en lugar de src/main/scala/org.rogach.scallopsrc/main/scala/org/rogach/scallop. ¿Hay alguna manera de hacer que los enlaces a documentos funcionen sin dividir ese directorio?

En segundo lugar, cuando pongo esta línea en mi build.sbt:

scalacOptions in (Compile, doc) ++= 
    Opts.doc.sourceUrl("https://raw.github.com/Rogach/scallop/master/src/main/scala/") 

documentos contienen enlaces a las fuentes, pero todos esos enlaces solo apuntan a la URL raíz de origen, no son ellos mismos archivos. ¿Qué estoy haciendo mal?

Respuesta

7

Desde la salida de scaladoc help: (. Sí que es el símbolo del euro)

-doc-source-url <url>  A URL pattern used to build links to template 
          sources; use variables, for example: 
           €{TPL_NAME} ('Seq'), 
           €{TPL_OWNER} ('scala.collection'), 
           €{FILE_PATH} ('scala/collection/Seq') 

algo como lo siguiente debería funcionar como un argumento a sourceUrl si todas sus fuentes se definen en una paquete:

https://raw.github.com/Rogach/scallop/master/src/main/scala/€{TPL_OWNER}.€{TPL_NAME}.scala 
+0

Casi funcionó - para todas las clases, nombres de los cuales son iguales a los nombres de los archivos en los que están definidos. Pero como puse varias clases en el mismo archivo, esto se rompe :( – Rogach

+0

Decidí usar FILE_PATH y reemplazar el prefijo del directorio del proyecto en mi máquina con la expresión 'sed' ¡Gracias por su ayuda! – Rogach

+2

Sí, no lo hice Sugiero que es difícil trabajar correctamente. Véase también https://issues.scala-lang.org/browse/SI-5763. –

Cuestiones relacionadas