Воскресенье
2017-09-24
4:55 PM
 

Корпорация М.И.Ф.
Сообщество исследователей MUD-миров
 
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость | RSSГлавная | Цветные логи - Форум | Мой профиль | Регистрация | Выход | Вход
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Форум » Корпорация М.И.Ф. » Открытые логи » Цветные логи (как красить логи в MMC)
Цветные логи
ИохарДата: Среда, 2006-07-26, 12:03 PM | Сообщение # 1
Полковник
Группа: Пользователи
Сообщений: 176
Награды: 0
Репутация: 5
Статус: Offline
Для того, чтобы получать цветные логи ММС, необходимо сказать ММС, чтобы он писал логи с ANSI последовательностями. Для этого необходимо сделать следующее:
Выполнить команду в MMC /log -c on
или
в файле CONF.PM найти строчку и присвоить значение переменной '1'
Code

$Conf::ansi_log=1; # write ansi escapes into logs if true

тогда при старте ММС логи будут писаться с ANSI последовательностями

ВНИМАНИЕ: необходимо, чтобы файл conf.pm лежал в одной папке с mmc.exe

После этого получивший лог с ANSI последовательностями даем на вход программе:
A2HTML.EXE следующим образом:
Code

type <your_log> | a2html.exe > your_log.html

и получаем цветной лог в формате html

Прикрепления: 58338013.zip(255Kb)
 
НэрДата: Пятница, 2006-09-22, 12:50 PM | Сообщение # 2
Рядовой
Группа: Пользователи
Сообщений: 8
Награды: 0
Репутация: 1
Статус: Offline
Могу дать модуль пишущий лог в цветном формате форума

Добавлено (2006-09-22, 12:50 Pm)
---------------------------------------------
Вот сам модуль:

Code
package FormatLog;

my $logfile;
my $logname; #Имя Лога
my $logging=-10; #Флаг записи Лога

 @mmc_colors = ("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P");
 %mmc_colors_descr = (
  A => "\[color=\#000000\]", #Черный
  B => "\[color=\#CC0000\]", #Красный
  C => "\[color=\#008000\]", #Зеленый
  D => "\[color=\#808000\]", #Коричневый
  E => "\[color=\#000080\]", #Синий
  F => "\[color=\#800080\]", #Малиновый
  G => "\[color=\#008080\]", #Голубой
  H => "\[color=\#C0C0C0\]", #Светло-серый (основной)
  I => "\[color=\#808080\]", #Серый
  J => "\[color=\#FF0000\]", #Ярко-красный
  K => "\[color=\#00FF00\]", #Салатовый
  L => "\[color=\#FFFF00\]", #Желтый
  M => "\[color=\#0000FF\]", #Светло-синий
  N => "\[color=\#FF00FF\]", #Розовый
  O => "\[color=\#00FFFF\]", #Светло-голубой
  P => "\[color=\#FFFFFF\]"); #Белый

  my $color_close = "\[\/color\]";

sub writeline ($){
 if ($logging>0){
    my $line = CL::unparse_colors($_[0]);   #CL::unparse_colors($;);
    my $mycolor .= chr(3);
    my $mycolor1 = chr(6);
    $line =~ s/$mycolor/$mycolor1/;
    foreach my $color (@mmc_colors) {
  if ($line =~ /$mycolor1$color/) {
     $line =~ s/$mycolor1$color/$mmc_colors_descr{$color}/;
  }
     }#foreach
    foreach my $color (@mmc_colors) {
     $line =~ s/$mycolor$color/$color_close$mmc_colors_descr{$color}/g;
     }#foreach
     if (length($line)<2){
   $line = "";
     } else{
   $line .= $color_close;
     }
    CL::log_write($logfile, $line) if $logfile;
 }
}

sub writeprompt ($){
 if ($logging>0){
    my $line = $_[0];
    my $mycolor .= chr(3);
    my $mycolor1 = chr(6);
    $line =~ s/$mycolor/$mycolor1/;
    foreach my $color (@mmc_colors) {
  if ($line =~ /$mycolor1$color/) {
     $line =~ s/$mycolor1$color/$mmc_colors_descr{$color}/;
  }
     }#foreach
    foreach my $color (@mmc_colors) {
     $line =~ s/$mycolor$color/$color_close$mmc_colors_descr{$color}/g;
     }#foreach
     if (length($line)<2){
   $line = "";
     } else{
   $line .= $color_close;
     }
    CL::log_write($logfile, $line) if $logfile;
 }
}

P::trig {
 writeline ($;);
} '$','f3000:FormatLog';

P::bindkey {
 if ($logging<0){
    my ($day,$month,$year) = (localtime)[3,4,5];
    $logname .= sprintf("%04d%02d%02d-color.log", $year + 1900,$month + 1,$day);
    $logfile=CL::log_open($logname,1,0);
    CMD::cmd_echo("Запись лога в файл: $logname");
    $logging = 10; 
 }else{
    if (not($logname eq "")){
    CMD::cmd_echo("Запись лога: $logname завершена.");
    CL::log_close($logfile);
    $logname = undef;
    $logfile = undef;
    }
    $logging = -10;
 }
} "f7";

1;

Пуск и остановка записи по кнопке F6

 
Форум » Корпорация М.И.Ф. » Открытые логи » Цветные логи (как красить логи в MMC)
Страница 1 из 11
Поиск:

Copyright MyCorp © 2017
Хостинг от uCoz