удобное и красивое оформление кода

создается сайт со статьями на двиге вордпресса. на нем будут выкладываться php\перл\прочие коды.
подскажите каким образом можно красиво это оформить в посте. если код большой страница разъезжается сильно и некрасиво. в идеале нравится оформление как в булке, когда код заключается в [_code][_/code] без "_"
пример:

function CheckPass($pop3server, $username, $pass)
{
  global $pop3port;
  $fp = fsockopen($pop3server, $pop3port, $errno, $errstr, 30);
  if (!$fp) 
    return false;
  $buf = fgets($fp, 128);
  if ($buf[0] != "+")
    {
      fclose($fp);
      return false;
    }
  fputs($fp,"user ".$username."\r\n");
  $buf = fgets($fp, 128);
  if ($buf[0] != "+")
    {
      fclose($fp);
      return false;
    }
  fputs($fp,"pass ".$pass."\r\n");
  $buf = fgets($fp, 128);
  if (strlen($buf) > 3 && $buf[0] == "+")
    {
      fclose($fp);
      return true;
    }
  fclose($fp);
  return false;
}

function genstr($l, $alf)
{
  $result = "";
  for ($i=0;$i<$l;$i++)
    $result .= $alf[0];
  return $result;
}

function nextpass($p, $alf)
{
  for ($i=0;$i<strlen($p);$i++)
    {
      if (strpos($alf,$p[$i]) ==  strlen($alf)-1)
        {
          $p[$i] = $alf[0];
        }
      else
        {
          $p[$i] = $alf[strpos($alf,$p[$i])+1];
          return $p;
        }
    }
  $p .= $alf[0];
  return $p;
}

if (isset($_POST["name"]))
  {
     if ($_POST["name"] === "")
      {
        echo "Отсутствует имя</body></html>";
        exit;
      }
     if (!isset($servers[$_POST["popserver"]]))
      {
        echo "Неправильно задан pop3 сервер</body></html>";
        exit;
      }

и в результате будет окно всегда одного размера и в нем будет весь код, так же если он большой то будет прокрутка в этом окошке.
как сделать что подобное на вп?

code {
white-space:nowrap;
display: block;
border: solid lightgrey 1px;
font-family: courier;
overflow: scroll;
overflow-y: hidden;
overflow-x: auto;
}

(Это кусок стиля с моего блога)

гм… Это ж элементарно – в стилях для тега прописываешь –

code {
overflow: scroll; /* Добавляем полосы прокрутки */
width: 300px; /* Ширина блока */
height: 150px; /* Высота блока */
padding: 5px; /* Поля вокруг текста */
border: solid 1px black; /* Параметры рамки */
}

а это с htmlbook )

http://obrute.info/e-mail/php-simple-mailru-brute/
вот что получается =(

2ой вариант тож не катит =(

<p><span id="more-5"></span> <br />
<code>&lt;?<br />
 set_time_limit(0);<br />

ignore_user_abort(1);<br />
error_reporting(0);</p>
<p>$servers = Array(<br />

потому что

как вариант – после вставки вычишать лишнее (есть такая кнопка во второй строке визуального редактора) а потом уже обрамлять тегами code

пожалуй лучший вариант для вас будет сорс с подсветкой синтаксиса конкретного языка:
http://www.terracoder.com/
http://milescript.org/
http://softwaremaniacs.org/soft/highlight/en/

встраивается элементарно, сжимается пакером (http://dean.edwards.name/packer/) на ура. На сайтах есть как демки, так и полное описание по интегрированию

чтобы вот так: http://lecactus.ru/2007/11/21/1021
взять здесь
http://code.google.com/p/syntaxhighlighter/
и присобачить к блогу 🙂

а если просто прокрутка нужна, то код надо вставлять в div или code, которому и приписать css (примеры выше)
но почему-то думается, что у Вас редактор жрет теги, т.к. сейчас код просто вставлен в пост, без code и без доп. дивов…

sonika не в том дело, что жрет.. просто получается что сначала открывается code а потом сразу закрывается </p> до этого нигде не открытый.. в обшем просто за тегами надо следить. если это делать не из под визуалки а из под упрошенного – все намного проще получается

Anonymous
Отправить
Ответ на: