Foros del Web » Creando para Internet » Sistemas de gestión de contenidos »

Advanced Syntax Highlighting - BBCode [highlight] PARA VBULLETIN

Estas en el tema de Advanced Syntax Highlighting - BBCode [highlight] PARA VBULLETIN en el foro de Sistemas de gestión de contenidos en Foros del Web. Hola a todos. Me he bajado el mod desde la página de vbulletin.org, y me surge una problemática. Verán aquí en foros del web el ...
  #1 (permalink)  
Antiguo 04/11/2011, 08:37
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Advanced Syntax Highlighting - BBCode [highlight] PARA VBULLETIN

Hola a todos.

Me he bajado el mod desde la página de vbulletin.org, y me surge una problemática.

Verán aquí en foros del web el recuadro se muestra amplio, como que se calcula el tamaño en función del número de lineas que se coloquen entre el BBCODE [HIGHLIGHT]


A mi no me pasa esto, si no que el el recuadro sale pequeño y bastante feo.

LA propiedad CSS es la siguiente:

Código HTML:
Ver original
  1. <pre class="alt2" style="margin:0px; padding:px; border:1px inset; width:; height:19px; overflow:auto">
  2.  
  3. </pre>

Mientras que el HTML de esto en la implementacions de forosdelweb es:

Código HTML:
Ver original
  1. <pre class="alt2" style="height:52px;"></pre>


Como ven están diferentes.

ME pregunto si alguien sabe en que archivos puedo modificar esta cuestión.

Saludos.
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.
  #2 (permalink)  
Antiguo 04/11/2011, 20:56
 
Fecha de Ingreso: septiembre-2007
Ubicación: PyRoot
Mensajes: 1.515
Antigüedad: 16 años, 7 meses
Puntos: 188
Respuesta: Advanced Syntax Highlighting - BBCode [highlight] PARA VBULLETIN

En fin, no encontré la respuesta pero seguramente es porque los creadores y administradores del foro (forosdelweb => vbulletin) u otros usuarios con foros vbulletin no han visto mi pregunta por que seguro que ellos si saben como solucionar este problemita.

Yo opté por un camino corto y lo que hice fue modificar el XML de instalación (Antes de importarlo)

se ve como esto:

>>> product-advhighlight.xml
Código XML:
Ver original
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2.  
  3. <product productid="advhighlight" title="Advanced Syntax Highlighting" description="This Hacks allows you to use advanced Sysntax Hightlighting for Several Languages" version="1.0.0" active="1">
  4.     <codes>
  5.     </codes>
  6.     <templates>
  7.         <template name="bbcode_highlight" templatetype="template" date="1122565653" username="Kirby" version="3.5.0 Release Candidate 1"><![CDATA[<div style="margin:20px; margin-top:5px">
  8.     <div class="smallfont" style="margin-bottom:2px">$type $vbphrase[code]:</div>
  9.     <pre class="alt2" style="margin:0px; background-color:#E5E5E5; padding:10px; border:1px inset; width:$stylevar[codeblockwidth]; height:auto; overflow:auto"><div dir="ltr" style="text-align:left;">$code</div></pre>
  10. </div>]]></template>
  11.         <template name="bbcode_highlight_printthread" templatetype="template" date="1122567141" username="Kirby" version="3.5.0 Release Candidate 1"><![CDATA[<div style="margin:20px; margin-top:5px">
  12.     <div class="smallfont" style="margin-bottom:2px">$type $vbphrase[code]:</div>
  13.     <hr /><pre class="alt2" style="margin:0px"><div dir="ltr" style="text-align:left;">$code</div></pre><hr />
  14. </div>]]></template>
  15.     </templates>
  16.     <plugins>
  17.         <plugin active="1">
  18.             <title>Advanced Syntax Highlighting</title>
  19.             <hookname>bbcode_create</hookname>
  20.             <phpcode><![CDATA[if (!function_exists('handle_bbcode_highlight'))
  21. {
  22.     function handle_bbcode_highlight(&$parser, $code, $type)
  23.     {
  24.         global $vbulletin, $vbphrase, $stylevar, $show;
  25.         static $codefind1, $codereplace1, $codefind2, $codereplace2;
  26.  
  27.         $code = $parser->strip_front_back_whitespace($code, 1);
  28.  
  29.         if (!is_array($codefind))
  30.         {
  31.             $codefind1 = array(
  32.                 '<br>',     // <br> to nothing
  33.                 '<br />'    // <br /> to nothing
  34.             );
  35.             $codereplace1 = array(
  36.                 '',
  37.                 ''
  38.             );
  39.  
  40.             $codefind2 = array(
  41.                 '&gt;',     // &gt; to >
  42.                 '&lt;',     // &lt; to <
  43.                 '&quot;',   // &quot; to ",
  44.                 '&amp;',    // &amp; to &
  45.                 '[',    // [ to [
  46.                 ']',    // ] to ]
  47.             );
  48.             $codereplace2 = array(
  49.                 '>',
  50.                 '<',
  51.                 '"',
  52.                 '&',
  53.                 '[',
  54.                 ']',
  55.             );
  56.         }
  57.  
  58.         // remove htmlspecialchars'd bits and excess spacing
  59.         $code = trim(str_replace($codefind1, $codereplace1, $code));
  60.         $blockheight = $parser->fetch_block_height($code) + 18; // fetch height of block element
  61.         $code = str_replace($codefind2, $codereplace2, $code); // finish replacements
  62.  
  63.         // PARSE
  64.         $path = DIR . '/includes/geshi';
  65.         // $code = geshi_highlight($code, $type, $path, true);
  66.         $geshi = new GeSHi($code, $type, $path);
  67.         $geshi->enable_line_numbers(GESHI_NORMAL_LINE_NUMBERS);
  68.         $tabs = 4;
  69.         $geshi->set_header_type(GESHI_HEADER_DIV);
  70.         $geshi->set_tab_width($tabs);
  71.         $code = $geshi->parse_code();
  72.  
  73.         $code = preg_replace('/&amp;#([0-9]+);/', '&#$1;', $code); // allow unicode entities back through
  74.         $code = str_replace(array('[', ']', "\n"), array('[', ']', ''), $code);
  75.         $template = $parser->printthread ? 'bbcode_highlight_printthread' : 'bbcode_highlight';
  76.         eval('$html = "' . fetch_template($template) . '";');
  77.         return $html;
  78.     }
  79. }
  80. $this->tag_list['option']['highlight'] = array(
  81.     'callback' => 'handle_external',
  82.     'strip_empty' => true,
  83.     'stop_parse' => true,
  84.     'disable_smilies' => true,
  85.     'disable_wordwrap' => true,
  86.     'strip_space_after' => 1,
  87.     'external_callback' => 'handle_bbcode_highlight'
  88. );
  89. require_once(DIR . '/includes/geshi.php');]]></phpcode>
  90.         </plugin>
  91.         <plugin active="1">
  92.             <title>Advanced Syntax Highlighting</title>
  93.             <hookname>cache_templates</hookname>
  94.             <phpcode><![CDATA[if (THIS_SCRIPT != 'printthread')
  95. {
  96.     $globaltemplates = array_merge($globaltemplates, array('bbcode_highlight'));
  97. }
  98. else
  99. {
  100.     $globaltemplates = array_merge($globaltemplates, array('bbcode_highlight_printthread'));
  101. }]]></phpcode>
  102.         </plugin>
  103.     </plugins>
  104.     <phrases>
  105.     </phrases>
  106.     <options>
  107.     </options>
  108. </product>

Solo modifica la linea 9, dejandola como yo lo hice.

Cambie las propiedades de Style de la etiqueta <pre; de la siguiente manera:

padding:10px;
height:auto;

Es todo.


Esto no es la solución adecuada, y no estoy seguro que sea correcta pero, de cierta manera, funcionará bien.
Saludos
__________________
Si quieres agradecer el triangulo obscuro de la parte derecha debes presionar +.

Etiquetas: bbcode, highlight, syntax, vbulletin
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:21.