Zacznę od "$$", jak się domyślam. Potem spróbowałbym ukośnika odwrotnego, by uciec przed nim, co jest odpowiedzią.
Standardowa biblioteka zawiera te makra. (Na przykład w immutable.MapLike
,
* @define Coll immutable.Map
za korzystanie $Coll
dla odziedziczonej dok.)
Można by pomyśleć StringInterpolator
by pokazać, jak to dolara. To jest od sample sanity build for pull requests.
Wszystkie te błędy pochodzą z dokumentu klasy, a nie z dokumentu członkowskiego, więc może to podpowiedź; a może po prostu przestaje narzekać w tym momencie.
Narzędzie emituje wspaniały podkład w jej produkcji, ale nie do problemu:
[scaladoc] Quick crash course on using Scaladoc links
[scaladoc] ==========================================
[scaladoc] Disambiguating terms and types: Prefix terms with '$' and types with '!' in case both names are in use:
[scaladoc] - [[scala.collection.immutable.List!.apply class List's apply method]] and
[scaladoc] - [[scala.collection.immutable.List$.apply object List's apply method]]
[scaladoc] Disambiguating overloaded members: If a term is overloaded, you can indicate the first part of its signature followed by *:
[scaladoc] - [[[scala.collection.immutable.List$.fill[A](Int)(⇒A):List[A]* Fill with a single parameter]]]
[scaladoc] - [[[scala.collection.immutable.List$.fill[A](Int,Int)(⇒A):List[List[A]]* Fill with a two parameters]]]
[scaladoc] Notes:
[scaladoc] - you can use any number of matching square brackets to avoid interference with the signature
[scaladoc] - you can use \\. to escape dots in prefixes (don't forget to use * at the end to match the signature!)
[scaladoc] - you can use \\# to escape hashes, otherwise they will be considered as delimiters, like dots.
Aktualizacja 1: Zgadnij co, to przypuszczenie wydaje się działać. To już nie narzeka $ROOT
w tym wyjściu:
docs.partest:
[scaladoc] Documenting 33 source files to /home/apm/projects/snytt/build/scaladoc/partest
[scaladoc] model contains 110 documentable templates
[scaladoc] /home/apm/projects/snytt/src/partest/scala/tools/partest/BytecodeTest.scala:14: warning: Variable TESTDIR undefined in comment for class BytecodeTest in class BytecodeTest
[scaladoc] * 1. Create subdirectory in test/files/jvm for your test. Let's name it $TESTDIR.
[scaladoc] ^
[scaladoc] /home/apm/projects/snytt/src/partest/scala/tools/partest/BytecodeTest.scala:15: warning: Variable TESTDIR undefined in comment for class BytecodeTest in class BytecodeTest
[scaladoc] * 2. Create $TESTDIR/BytecodeSrc_1.scala that contains Scala source file that you
[scaladoc] ^
[scaladoc] /home/apm/projects/snytt/src/partest/scala/tools/partest/BytecodeTest.scala:18: warning: Variable TESTDIR undefined in comment for class BytecodeTest in class BytecodeTest
[scaladoc] * 3. Create $TESTDIR/Test.scala:
[scaladoc] ^
[scaladoc] Document succeeded with 3 warnings; see the documenter output for details.
[scaladoc] three warnings found
[stopwatch] [docs.partest.timer: 19.486 sec]
Teraz pójdę do $TESTDIR
.
Wow, to naprawdę wzmacnia. Dzięki za pytanie!
Najpierw pozwól mi tylko sprawdzić, czy scaladoc rzeczywiście zawiera słowo $ROOT
w swoim wyjściu HTML.
Aktualizacja 2: Wiesz co? Po prostu nieważne. Jest to wynik, ha:
A string that looks like a file path is normalized by replacing the leading segments (the root) with "$$ROOT"
Update 3: Właściwie \$
backslash ucieczka działa dobrze. Rzeczywiste wyświetlanie na żywo:
with "$ROOT"
OK, więc '$$' unika ostrzeżenia, ale powoduje powstanie dwóch znaków dolara w dokumentach. To cudowne. Jestem też trochę zdezorientowany, gdy mówi on do * pre * fix terminów i typów z '$' lub '!', A następnie kontynuuje umieszczanie ich po 'List' w przykładzie. Myślę, że jest to przyrostek, a nie prefiks.Z drugiej strony narzeka na '$ ROOT' i' $ iterations', więc coś szuka prefiksu ... – TOB
@ TOB Wiem! Zaktualizowano ponownie. –
Dziękuję za zastanowienie się. '\ $' to jest! Teraz, jeśli możemy po prostu poprosić kogoś o dokumentację. Przypuszczam, że to zbyt dużo, by mieć nadzieję na unifikację ucieczki dolara w ScalaDoc i interpolację ciągów znaków, co? – TOB