Hier ist ein Beispiel für einen Haskell-Codeblock:
-- This is a comment <- notice how this is syntax highlighted as though it were code {- This is also a Haskell comment -} // This isn"t even a comment in Haskell, it"s a syntax error. # This isn"t a comment either. -- // Only this is a comment to both Haskell and SO"s syntax highlighter. -- Some actual Haskell code: f :: a -> a f x = x -- Some more actual Haskell code: f" :: (a -> a") -> [a -> a] -> a -> a" f" f0 fs = foldl" (.) f0 fs
Kommentare
- Sieht so aus, als ob Sie ' viel besser abschneiden als VB –
'
bringt die Formatierung wirklich durcheinander: meta.stackexchange.com/q/6812/7586 . Angenommen, es gibt ' keinen AI-Code, der die Sprache erkennen kann. Was schlagen Sie vor?--
ist ebenfalls ein SQL-Kommentar, aber es kann schwierig sein, ihn vom Dekrementierungsoperator zu trennen. - Maby hat zwei Wörter gelesen. Und wenn das zweite Wort alphanumerisch ist, analysieren Sie es als haskell?
- @Kobi: Nein, tatsächlich ist es ' schlimmer.
'
in Haskell ist ein Zeichen, das in einem Bezeichner enthalten sein kann, sodass wir ' die " Schließen Sie den Kommentar " Trick in VB. - Ist das Leerzeichen nach den doppelten Bindestrichen erforderlich? Würde die Sache sicher einfacher machen
- Laut Jeff ist Haskell (
lang-hs
) jetzt explizit unterstützt. - Ist
lang-hs
übrigens dasselbe wielang-haskell
? Außerdem scheinthaskell
andere Ergebnisse zu liefern alslang-haskell
– was ' ist damit? - @ErikAllik Siehe meine Frage
Antwort
Die Fragen sind alle mit der Sprache versehen, oder? Mithilfe der Tags können sie also bestimmen, welche Hervorhebungsmerkmale aktiviert werden sollen.
Kommentare
- Dies hat ' nicht funktionieren. Sagen Sie, wenn ein Beitrag mit [python] und [haskell] markiert ist, um einige Sprachkonstrukte zu vergleichen / zu übersetzen. Welche Sprache sollte der Code anwenden? Oder wenn die Frage [sprachunabhängig] ist?
- Wenn es ' sprachunabhängig ist, können sie einfach das tun, was sie jetzt tun. Wenn es ' mehrere Sprach-Tags hat, sollte es vielleicht auch genau das tun, was es jetzt tut. Aber wenn es ' ein Sprach-Tag hat, denke ich nicht, dass es weh tun würde, die Hervorhebung ein wenig zu verbessern.
.
„b9004c9fcf“
Antwort
In StackOverflow gibt es keine konsistente Syntaxhervorhebung. Während prettify.js, der verwendete Syntaxhervorhebungsmechanismus, viele Sprachen unterstützt, gibt es derzeit für einen Autor keine Möglichkeit, das Sprach-Tag in dieses Skript zu übertragen. Haskell ist nur eine von vielen Sprachen, die darunter leiden. Im Guess-Modus scheint sich prettify.js stark an Sprachen mit einer ähnlichen Syntax wie C zu orientieren.
Es scheint, dass so etwas wie <code class="prettyprint lang-haskell">
in den HTML-Code eingefügt werden könnte Whitelist für Markdown, aber dieser Vorschlag ist seit über einem Jahr unbeantwortet. Siehe zum Beispiel diese Frage: Syntax, die Sprachhinweise hervorhebt .