296 votes

Formatage des extraits de code pour les blogs sur Blogger

Mon blog est hébergé sur Blogger et je publie fréquemment des extraits de code dans C / C# / Java / XML etc. mais je trouve que l'extrait est "tronqué".

Existe-t-il des sites web que je pourrais utiliser pour analyser l'extrait au préalable et régler le formatage, convertir le XML " < " à " &lt; ", etc.

Il existe un certain nombre de questions à ce sujet sur l'OS, mais je n'en ai trouvé aucune qui traite directement de cette question.

Edit: Pour @Rich réponse, état du site "Pour afficher le code formaté sur votre site, vous devez récupérer cette feuille de style CSS et ajouter une référence à celle-ci dans le répertoire de l'utilisateur. <head> section de votre page" . C'est le problème - vous ne pouvez pas faire cela sur Blogger AFAIK.

4 votes

Pour afficher le code formaté : Si vous utilisez visual studio, alors vous pouvez copier n'importe quel type de code html/css/javascript/c# etc sur blogger. Vous devez installer les outils de productivité de Visual Studio : pour plus d'informations, lisez : coding-issues.blogspot.in/2013/10/

1 votes

Essayez le plug-in Coller en tant que code Visual Studio pour Windows Live Writer pour l'éditeur hors ligne de Blogger. WYSIWYG ! .

1 votes

Est-ce que vous manquez casier de contenu social comme WordPress ? maintenant vous pouvez ajouter ceci dans blogger aussi stackoverflow.com/questions/27619171/

254voto

CraftyFella Points 4329

J'ai créé un article de blog qui explique comment ajouter la coloration syntaxique du code à blogger à l'aide de la fonction syntaxhighlighter 2.0

Voici mon billet de blog :

http://www.craftyfella.com/2010/01/syntax-highlighting-with-blogger-engine.html

J'espère que ça vous aidera les gars Je suis assez impressionné par ce qu'il peut faire.

Les liens ci-dessus ne fonctionnent plus. Essayez d'utiliser http://hilite.me/

0 votes

@CraftyFella essayez de publier ceci : static Dictionary<int, List<Delegate>> _delegate = new Dictionary<int, List<Delegate>>();

0 votes

Si vous avez < ou >, vous devrez coder le texte en html en utilisant quelque chose comme opinionatedgeek.com/dotnet/tools/htmlencode/encode.aspx J'ai réussi à faire fonctionner ce qui précède sur mon blog.

0 votes

Il devrait y avoir 3 boutons en haut du bloc pour copier et coller.

134voto

yodaisgreen Points 982

Le moyen le plus simple de partager du code est de le rendre public dans un gist. Il suffit d'en rédiger un et d'y coller le code d'intégration. C'est simple comme bonjour.

http://gist.github.com

Pour résoudre le problème des moteurs de recherche, on peut utiliser des éléments cachés. div sur la page aussi simple que :

<div style="display:none"> content </div>

1 votes

Mec, après l'avoir utilisé pendant 20 minutes, je ne peux pas te remercier assez ! Le meilleur formatage, pas d'embrouille, tout le code est au même endroit, les articles sont magnifiques, l'édition d'un article est incroyablement facile car on ne mélange pas le code avec le reste de l'article et on ne s'inquiète jamais de faire quelque chose de stupide et de perdre/malformer un code. Merci !

23 votes

L'intégration est en javascript, il y a de fortes chances qu'elle soit invisible pour la recherche. C'est à peu près tout pour les articles de blog.

7 votes

J'utilise actuellement les gistes mais je vais probablement utiliser SyntaxHighlighter à nouveau. Non seulement les gistes utilisent JavaScript (ce qui les rend inaccessibles dans les lecteurs RSS également) mais elles ralentissent également le chargement des pages car chaque giste est téléchargé séquentiellement, ce qui bloque le rendu. Ce n'est pas un bon choix.

64voto

Samuel Points 605

Pour mon blog, j'utilise http://hilite.me/ pour formater le code source. Il prend en charge de nombreux formats et produit un code html assez propre. Mais si vous avez beaucoup de bouts de code, vous devez faire beaucoup de copier-coller. Pour formater du code Python, j'ai aussi utilisé Pygments ( article de blog ).

1 votes

J'avais l'habitude d'utiliser hilite.me mais maintenant je préfère dillinger.io

0 votes

Je préfère également ceci à gist.github. Pas de javascript et style / css supplémentaire requis. Merci, Monsieur.

47voto

gt_ebuddy Points 6551

Ce css script pourrait être utile à tous - Il ne sert pas à la mise en évidence de la syntaxe mais fonctionne bien pour présenter le code source dans son format original :

 <pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; 
                color: #000000; background-color: #eee;
                font-size: 12px; border: 1px dashed #999999;
                line-height: 14px; padding: 5px; 
                overflow: auto; width: 100%">
       <code style="color:#000000;word-wrap:normal;">

            <<<<<<<YOUR CODE HERE>>>>>>>

       </code>
 </pre>

Mode d'emploi :

  1. Collez cet extrait dans un éditeur de texte,
  2. collez votre code dans le bloc <<<<<<>>>>>>.
  3. Copier tout et
  4. coller à la vue HTML dans l'éditeur de billets de blogger (ou tout autre).

AVANTAGES : Simple et facile à utiliser, moins de configuration, facile à reconfigurer, pas de logiciel supplémentaire.

1 votes

La réponse la plus simple et la plus nette à mon avis. Il suffit de créer un CSS interne et le tour est joué.

1 votes

Cela fonctionne bien pour moi aussi. Solution simple

16voto

Alain O'Dea Points 6587

Cela peut être fait assez facilement avec SyntaxHighlighter. J'ai instructions pas à pas pour configurer SyntaxHighlighter dans Blogger sur mon blog. SyntaxHighlighter est très facile à utiliser. Il vous permet d'afficher des extraits sous forme brute, puis de les envelopper dans des fichiers de type pre des blocs comme :

<pre name="code" class="brush: erlang"><![CDATA[
-module(trim).

-export([string_strip_right/1, reverse_tl_reverse/1, bench/0]).

bench() -> [nbench(N) || N <- [1,1000,1000000]].

nbench(N) -> {N, bench(["a" || _ <- lists:seq(1,N)])}.

bench(String) ->
    {{string_strip_right,
    lists:sum([
        element(1, timer:tc(trim, string_strip_right, [String]))
        || _ <- lists:seq(1,1000)])},
    {reverse_tl_reverse,
    lists:sum([
        element(1, timer:tc(trim, reverse_tl_reverse, [String]))
        || _ <- lists:seq(1,1000)])}}.

string_strip_right(String) -> string:strip(String, right, $\n).

reverse_tl_reverse(String) ->
    lists:reverse(tl(lists:reverse(String))).
]]></pre>

Il suffit de changer le nom de la brosse en "python" ou "java" ou "javascript" et de coller le code de votre choix. Le marquage CDATA vous permet d'insérer à peu près n'importe quel code sans vous soucier de l'échappement des entités ou d'autres inconvénients typiques des blogs de code.

2 votes

Vos instructions ont mieux fonctionné pour moi que l'autre réponse principale. Au cas où quelqu'un les chercherait, ici est la liste des brosses groupées et de leurs alias.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X