아직까지 고쳐지지 않은 버그

모든 프로그램에 버그는 존재한다. 버그없는 프로그램은 없다. 따라서 프로그램에서 중요한 것은 버그의 유무가 아니다. 이 '버그가 치명적인 버그인지 아닌지', 그리고 이런 '버그가 얼마나 빨리 고쳐지는지'가 관건인 것 같다. 과거 텍스트큐브는 새 판을 발표한 뒤 반나절 뒤에 패치를 올리곤 했는데 1.6.3은 이런 패치의 발표가 없었다. 그만큼 치명적인 버그는 모두 잡고 출시되었다는 뜻이다. 그러나 이 판에는 내가 수정을 요구한 버그가 아직 고쳐지지 않았다. 바로 휴지통 댓글 버그이다. 치명적인 버그가 아니라 큰 문제는 없지만 그래도 빨래 수정됐으면 한다.

목차

텍스트큐브 판올림

텍스트큐브 1.6.3이 지난 4월 24일 발표되었다. 이미 1.6.2까지 판올림 한 상태이고 변화가 많지 않아 발표되자 마자 텍스트큐브 1.6.3으로 판올림했다. 시절에는 올림판이 발표된 뒤 판올림 하려고 하면 수없이 많은 패치 때문에 덜덜 떨어야 했다. 그러나 텍스트큐브 1.5판 부터는 내가 한 패치 대부분이 적용되었기 때문에 패치 역시 상당히 쉽게 끝났다. 기본적으로 1.6.1로 판올림하는 과정과 거의 비슷했다. 내 패치 코드가 적용되고 1.6.1에서 1.6.3로 변화가 크지 않았기 때문이다. 이번에 판올림하면서 실행한 패치는 다음과 같다.

대표주소를 최신 글 주소로 전환
개인적으로는 이 기능은 옵션으로라도 포함되기를 바라는 기능이지만 아직까지 반영되지는 않았다. 그러나 패치하는 방법은 1.6.0과 똑 같다. 따라서 텍스트큐브를 1.5.3에서 1.6.0으로 판올림을 보면된다.
통계 데이타 패치
텍스트큐브는 기본적으로 1500개의 데이타를 이용해서 키워드 통계를 낸다. 그러나 방문자가 많은 사이트는 1500개의 참조 URL은 하루의 데이타도 되지 못한다. 따라서 나는 7일 이상, 3'5000개의 데이타를 사용하도록 패치해서 사용하고 있다. 패치하는 방법은 텍스트큐브 판올림 1.6.1을 참조하기 바란다.
출력 키워드 수 패치
텍스트큐브의 키워드 통계를 보면 키워드의 갯수가 1인 것도 표시된다. 사용하는 데이타가 1500개일 때는 키워드 갯수가 하나인 것도 의미가 있지만 '3'5000개의 데이타를 사용하면 키워드 갯수가 하나인 것은 별 의미가 없어진다'. 따라서 키워드 갯수가 일정수 이상이 되도록 패치했다. 절차는 다음과 같다.
  1. 좋아하는 편집기로 plugins/refererkeyword/index.php 파일을 연다.
  2. $keywordvalue = $keywordlist[$keywordkey];라는 문장 바로 아래에 if($keywordvalue <= 5) continue; 문장을 추가한다. 여기서 '5는 제한할 키워드의 수'이다.

    **변경전**
    $keywordvalue = $keywordlist[$keywordkey];
    
    **변경후**
    $keywordvalue = $keywordlist[$keywordkey];  
    if($keywordvalue <= 5) continue;
    
위지윅 편집기

텍스트큐브에 포함된 위지윅 편집기는 사용자가 입력한 데이타를 임으로 변경하는 문제가 있다. 따라서 이런 문제를 수정하고 기본 편집 모드를 위지윅이 아니라 HTML로 하려면 다음 두 개의 팁을 읽어 보면 된다.

언어 설정
자세한 내용은 텍스트큐브를 1.5.3에서 1.6.0으로 판올림를 참조하기 바란다.
팁블로그 설정 플러그인 패치

팀블로그에 대한 설명을 추가할 때 를 사용할 수 있도록 패치해서 사용하고 있었다. 꽤 오래 전부터 사용한 패치인데 지난 번 글에 적용한 패치는 1.6.3부터는 동작하지 않았다. 1.6.3에서 팀블로그 설명에 BBCode를 사용할 수 있도록 하려면 다음처럼 바꾼다.

그림처럼 팀원 설명에 BBCode를 사용할 수 있다. 이미지를 추가로 넣을 수도 있고 그림처럼 링크를 달 수도 있다.

  1. 좋아하는 편집기로 plugins/ST_TeamBlogSettings/index.php 파일을 연다.
  2. 플러그인 시작 부분에 다음 함수를 추가한다.

    function Auth_BBcode_Print($target, $mother) {
        global $pluginURL;
        $bbcodes_string = array(
            '#\[quote\]#i' => '<blockquote>',
            '#\[/quote\]#i' => '</blockquote>',
            '#\[list\]#i' => '<ul>',
            '#\[/list\]#i' => '</ul>',
            '#\[/color\]#i' => '</span>',
            '#\[b\]#i' => '<span style="font-weight: bold">',
            '#\[/b\]#i' => '</span>',
            '#\[i\]#i' => '<span style="font-style: italic">',
            '#\[/i\]#i' => '</span>',
            '#\[u\]#i' => '<span style="text-decoration: underline">',
            '#\[/u\]#i' => '</span>'
        );
    
        $bbcodes_regexp = array(
            '#\[color=(\#[0-9A-F]{6}|[a-z]+)\]#si' => '<span 
                style="color:\\1">',
            '#\[img([^\]]*)\]([^?].*?)\[/img\]#i' => '<img \\1 
                src="\\<" alt="" />',
            '#\[url=([\w]+?://[^ \"\n\r\t<]*?)\]([^?].*?)\[/url\]#i' => 
                '<a href="\\1" target="_blank">\\<</a>',
            '#\[url=((www|ftp)\.[^ \"\n\r\t<]*?)\]([^?].*?)\[/url\]#i' => 
            '<a href="\\1" target="_blank">\\<</a>',
            '#\[url\]([^?].*?)\[/url\]#i' => '<a href="\\1" 
            target="_blank">\\1</a>',
            '#\[email\]([a-z0-9&\-_.]+?@[\w\-]+\.([\w\-\.]+\.)?[\w]+)
                \[/email\]#si' => '<a href="mailto:\\1">\\<
                </a>',
            '#\[\*\]([^?])#i' => '<li>\\1</li>'
        );
        foreach ($bbcodes_string as $key => $value)  
            $target = preg_replace($key, $value, $target);
        foreach ($bbcodes_regexp as $key => $value)  
            $target = preg_replace($key, $value, $target);
        return $target;
    }
    

    이 함수는 inureyes님이 만든 BBCode 플러그인에서 가져온 함수이다.

  3. getTeamProfile 함수의 return 문을 변경전에서 변경뒤로 바꾼다. 바뀐 부분은 빨간색으로 표시했다.

    **변경전**
    return $html;
    
    **변경후**
    return Auth_BBcode_Print($html);
    

아직까지 고쳐지지 않은 버그

모든 프로그램에 버그는 존재한다. 버그없는 프로그램은 없다. 따라서 프로그램에서 중요한 것은 버그의 유무가 아니다. 이 '버그가 치명적인 버그인지 아닌지', 그리고 이런 '버그가 얼마나 빨리 고쳐지는지'가 관건인 것 같다. 과거 텍스트큐브는 새로운 판을 발표한 뒤 반나절 뒤에 패치를 올리곤 했는데 1.6.3은 이런 패치의 발표가 없었다. 그만큼 치명적인 버그는 모두 잡고 출시되었다는 뜻이다. 그러나 이 판에는 내가 수정을 요구한 버그가 아직 고쳐지지 않았다. 바로 휴지통 댓글 버그이다. 치명적인 버그가 아니라 큰 문제는 없지만 그래도 빨래 수정됐으면 한다.

'관리도구/글/휴지통/댓글'을 클릭한 뛰 IP를 클릭하면 해당 IP로 올린 글이 모두 표시되어야 한다. 그러나 정확한 판번호는 기억하지 못하지만 언제부터인지 그림처럼 빈 화면이 표시된다. 반면에 이름을 클릭하면 해당 이름으로 올라온 글의 목록이 표시된다. 이 기능은 휴지통/트랙백에서는 잘 동작한다.

트랙백 개선

다른 사람은 모르겠지만 트랙백을 보낼 때면 항상 불편하다. 하루에 올라온 트랙백의 수가 5개 미만일 때는 '블로그 걸린글 링크'를 이용해서 트랙백이 걸린 글을 확인하고 보내면 된다. 문제는 걸린 트랙백이 5개 이상일 때는 트랙백이 걸린 글을 확인할 수 있는 방법이 없다는 점이다.

'관리도구/글/소통기록/받은 트랙백'을 클릭하면 받은 트랙백은 확인할 수 있다. 이름을 클릭하면 해당 이름으로 걸린 트랙백 목록이 뜨고 제목을 클릭하면 트랙백을 건 글(원본글)로 이동한다. 이렇다 보니 트랙백이 온것은 알아도 '어떤 글에 트랙백이 걸렸는지 확인할 수 있는 방법이 없다'. 이 부분은 트랙백에 관련된 DB를 변경해야 처리가 가능한 부분으로 보인다. 따라서 쉽게 기능을 개선할 수 있는 부분은 아닐지 모르지만 트랙백이 많은 사용자를 위해서 트랙백이 걸린 글을 찾아갈 수 있는 기능을 제공해 주었으면 좋겠다.

관련 글타래

글쓴이
author image
운영체제의 모든 것을 운영하고 있는 IT 블로거. IT 블로거라는 이름은 현재 시국때문에 시사 블로거로 바뀐 상태다. 그러나 나는 아직도 시사와 사회에 관심이 많은 IT 블로거일 뿐이다. 컴퓨터, 운영체제, 시사, 가족, 여행, 맛집, 리뷰등과 살면서 느끼는 소소한 일상이 블로그의 주제이다. 왼쪽의 아이콘은 둘째 딸 다예가 그린 내 모습이다.
2008/05/01 07:09 2008/05/01 07:09
오늘의 글
인기있는 글
조회수 많은 글 | 베오베
댓글 많은 글 | 베오베

Trackback

Trackback Address :: https://offree.net/trackback/1680

  1. Subject : 글을 올릴 때 [b], [i], [url], [img]와 같은 BBCode를 사용할 수 있습니다.

    Tracked from ♡바다.. 의 일상이야기 2009/01/13 14:07 del.

    이 말은 QAOS의 주인장이신 도아님의 블로그 댓글에 달려있는 글입니다. 이 글을 흉내내고 싶었습니다. 먼저 말씀을 드리지 않고 이렇게 구현하고 뒤에 말씀드린 점 사과드립니다. 제가 html 코드

Facebook

Comments

  1. inureyes 2008/05/01 16:38

    휴지통 ip 부분의 경우 interface/owner/communication/trash/comment/index.php에 아래처럼 name, ip에 해당하는 두 줄을 추가해 주세요.^^


    15 $IV = array(
    16 'GET' => array(
    17 'name' => array('string', 'mandatory' => false),
    18 'page' => array('int', 1, 'default' => 1),
    19 'ip' => array('ip', 'mandatory' => false)
    20 ),


    1.6 마일스톤에서는 아마 경로가 저기가 아니라 /interface/owner/entry/trash/comment/index.php 를 수정하셔야 할 겁니다. 수정한 것으로 기억하고 있었는데 일반 댓글쪽만 손을 대고 휴지통 쪽은 빼먹었네요 T_T 죄송합니다~

    perm. |  mod/del. reply.
  2. 공상플러스 2008/05/01 18:29

    티스토리도 저 속도의 판올림을 기대하고 있건만..ㄱ-

    perm. |  mod/del. reply.
    • 도아 2008/05/02 06:41

      티스토리는 이제 TNC의 손을 떠난 것 같습니다. 따라서 빠른 업데이트는 기대하기 힘들지 않을까 싶습니다.

  3. 아크몬드 2008/05/01 20:06

    정말, 티스토리의 판올림이 절실한 시점입니다.

    perm. |  mod/del. reply.
    • 도아 2008/05/02 06:41

      다들 티스토리 판올림을 생각하시는군요.

  4. bluenlive 2008/05/01 20:41

    티스토리 플러그인 자작하는 것도 지칩니다.
    여기가 티스토리 홈페이지는 아니지만 저도 슬쩍 주절거려봅니다.

    perm. |  mod/del. reply.
    • 도아 2008/05/02 06:42

      여기 보다는 다음을 직접 쪼시는 것이...

  5. CK 2008/05/12 18:31

    TNC에서 개발중인 서비스형 블로그 "텍스트큐브닷컴" 에서는 "보낸 커뮤니케이션" 을 통해서 보낸 트랙백 기록이 남게 됩니다. 추후 클로즈드 베타테스트 예정이오니 참고해주세요 :)

    perm. |  mod/del. reply.
    • 도아 2008/05/13 06:43

      보낸 트랙백은 별 문제가 없습니다. 받은 트랙백을 찾기 힘들어서 트랙백에 대한 부분을 쓴 것입니다. 받은 트랙백 기록이 가능하다면 트랙백을 다는 것이 훨씬 편할 것 같더군요.

(옵션: 없으면 생략)

글을 올릴 때 [b], [i], [url], [img]와 같은 BBCode를 사용할 수 있습니다.