2012-06-02 4 views
16

J'essaie de mettre en évidence une certaine syntaxe en utilisant Google prettify mais jusqu'ici, ce ne fonctionne pas.Syntaxe en surbrillance sur Twitter bootstrap

<link href="prettify.css" type="text/css" rel="stylesheet" /> 
<script type="text/javascript" src="prettify.js"></script> 

<body onload="prettyPrint()" bgcolor="white"> 

<pre class="prettyprint"> 
    <code class="language-css"> 
    // Some source code 

    class Foo { 
     public int Bar { get; set; } 
    } 
    </code> 
</pre> 

Y a-t-il une solution pour que cela fonctionne sans trop jouer avec le pré-tag déjà dans bootstrap ?.

+1

Même problème pour moi. –

Répondre

25

EDIT: pour 2.0.x bootstrap twitter, il fonctionne très bien avec 2.1.x

Utilisez les ces 2 fichiers au lieu d'utiliser la méthode décrit dans le doc.

http://twitter.github.com/bootstrap/assets/js/google-code-prettify/prettify.css

http://twitter.github.com/bootstrap/assets/js/google-code-prettify/prettify.js

Cela fonctionne pour moi

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<link href="css/bootstrap.css" type="text/css" rel="stylesheet" /> 
<link href="prettify.css" type="text/css" rel="stylesheet" /> 
<script type="text/javascript" src="prettify.js"></script> 
</head> 
<body onload="prettyPrint()" bgcolor="white"> 
<pre class="prettyprint linenums languague-css"> 
// Some source code 
class Foo { 
    public int Bar { get; set; } 
} 
</pre> 
</body> 
</html> 
+0

Regardez ma réponse mise à jour – baptme

+0

L'exemple de code ci-dessus fonctionne même si vous utilisez directement les chemins GitHub. – ezraspectre

+0

sur 2.1.1 il fait, la question était sur 2.0.4 – baptme

2

Après la liaison aux 2 fichiers prettify.css, prettify.js ajouter ce code à votre pied de page

<script> 
// @prettify 
!function ($) { 
    $(function(){ 
    window.prettyPrint && prettyPrint() 
    }) 
}(window.jQuery); 
// #prettify 
</script> 
3

Vous ne savez pas pourquoi il n'a pas été suggéré de modifier avec:

<script> 
    // Activate Google Prettify in this page 
    addEventListener('load', prettyPrint, false); 
    $(document).ready(function(){ 
     // Add prettyprint class to pre elements 
     $('pre').addClass('prettyprint');   
    }); // end document.ready 
</script> 
Questions connexes