Главная страница


ru.linux

 
 - RU.LINUX ---------------------------------------------------------------------
 From : Sergey V. Leschenko                  2:5020/400     03 Jul 2002  00:00:49
 To : Hleb Valoska
 Subject : Re: gnus || slrn
 -------------------------------------------------------------------------------- 
 
 Hleb Valoska wrote:
 
 HV>  HV>> Как сабджей (любого из) научить в квотченые строки вставлять
 HV>  HV>> инициалы перед ">"? (Примеры, урлы,...) Как я понял из доков, это
 HV>  HV>> возможно решить хуками. Hо результат нулевой :(
 HV>  Aa> Hу в *slrn* Хук + S-Lang ... там много чего можно сделать ... смотри
 HV>  Aa> примеры макросов и подробнее xcomment.sl
 HV> Ха, смотрел, даже нечто пробовал сваять, но как отличать уровни цитирования?
 HV> Тем более, что хука, который бы вызывался при квочении каждой строки я не
 HV> нашел.
 
 ну вот то, что я когда-то написал:
 оно наверное, не очень отимально/правильно, но работает...
 
 ===.slrnrc===
 interpret ".slrn.sl"
 ===.slrn.sl===
 % fido7 key
 define make_from_string_hook()
 {
    if (string_match (current_newsgroup(), "^fido7\.", 1))
   return "\"Sergey V. LeschenkoXXXXXX\" <smash@astral.ntu-kpi.kiev.ua>";
    else
   return "\"Sergey V. Leschenko\" <smash@astral.ntu-kpi.kiev.ua>";
 }
 
 % fido-style quoting
 define followup_hook()
 {  variable raw_from, from_list, i, abbrev, email, at_pos; 
    % only for fido7
    if( not string_match(current_newsgroup(), "^fido7\.", 1))
    {     
       set_string_variable("followup_string", "%r wrote:\n");
       set_string_variable("quote_string", ">");
       return;
    }
   
    raw_from = extract_article_header("From");
    % удалим лишнее
    raw_from = str_delete_chars(raw_from, "\"()<>");
    
    from_list = strchop(raw_from, ' ', 0);
    abbrev="";
    for(i = 0; i < length(from_list); i++ )
    {  
       % fix it
   at_pos = string_match(from_list[i], "@", 1);
       if(at_pos != 0) 
   { 
    email = substr(from_list[i], 1, at_pos);
   }
   else 
    if( length(from_list[i]) == 2 and 
       string_match(from_list[i], "\.", 2) ) {
       
       % инициалы
    }
    else
           abbrev = strcat(abbrev, strup(substr(from_list[i], 1, 1)) ); 
   % пропускаем возможный email
   % но @ могут заменить на (a) etc. ...
    }
    % если аббревиатура не получилась, используем email
    if(abbrev == "")
       abbrev = email;
    % add standart quote 
    
 %   set followup_string "%r wrote:" 
    set_string_variable("followup_string", strcat("%r wrote:\n"));
    set_string_variable("quote_string", strcat(abbrev,">"));
 
 }
 ==============
 -- 
 Best regards,             sm@adamant.net    
 Sergey                     smash@astral.ntu-kpi.kiev.ua
 --- ifmail v.2.15dev5
  * Origin: NTUU "KPI" (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: gnus || slrn   Sergey V. Leschenko   03 Jul 2002 00:00:49 
Архивное /ru.linux/22001cb06bcb0.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional