316

(2개의 댓글, PunBB 맛보기 글에 작성됨)

WYSIWYG 편집기를 찾으셨던 거군요. 대부분의 기능은 BBCode로 대치될 수도 있지 않을까요?
물론 사용자가 실시간 편집 효과를 볼 수 있는 것은 덤이겠군요.

317

(7개의 댓글, 맥 개발 글에 작성됨)

jQuery JavaScript Library를 원하는 웹 페이지에다가 심어넣는 책갈피입니다.

javascript:var%20s=document.createElement('script');s.setAttribute('src',%20'http://jquery.com/src/jquery-latest.js');document.body.appendChild(s);s.onload=function(){/*Your%20Code%20Here*/};void(s);

특정 웹 페이지에 심어놓고 Firefox 용 웹 개발 도구인 Firebug의 Console에서 원하는 jQuery 기능을 불러와서 바로 적용시켜 볼 수 있습니다.
사용 요령은 위 책갈피를 공개한 John Resig씨의 블로그에 있는 Hacking Digg With Firebug and jQuery라는 제목의 글에 있는 screencast에서 확인하실 수 있습니다.

위 책갈피는 jQuery를 불러온 후에 이를 비러 특정 웹 페이지에서 구현하고자 하는 자기만의 특정 Javascript 코드를 실행시킬 수 있게 수정할 수도 있답니다.

책갈피 속에 포함된 Javascript 라이브러리의 주소를 jQuery 말고 다른 Javascript 라이브러리들의 주소로 대치하면 더 손에 익은 개발 환경을 구현할 수도 있겠군요.

318

(17개의 댓글, PunBB 맛보기 글에 작성됨)

AJAX post preview는 글을 쓰고 나서 "미리 보기"를 할 때, 페이지 전체가 다시 로딩되지 않고 미리 보기 부분만 새로 페이지에 표시되도록 만들어 줍니다. 이렇게 하면, 서버의 부담도 줄고 사용자 입장에서도 페이지가 빨리 뜨니까 좋지요.

Collapsable Categories는 페이지 맨 앞에 몇 가지로 분류되어 있는 여러 포럼들을 분류 제목 막대에 위치한 단추를 눌러서 한꺼번에 가리고 보여주는 기능을 제공합니다.

그리고 post status indicators는 글 제목 앞에 글의 상태를 나타내는 아이콘을 추가하는 작업입니다. 새 글이나 잠긴 글 그리고 매달아 놓은 글 등 올려진 글의 상태를 알기 쉽게 표시해 주죠.

찾아보면 입맛대로의 이런 수정 작업들이 무궁무진하답니다.

319

(2개의 댓글, PunBB 맛보기 글에 작성됨)

html 코드를 바로 사용할 수 있게 만들 수는 있겠지만 보안상의 이유로 권장되지 않습니다.
여기서 사용하는 Easy BBCodeExtra BBCodes를 사용하면 사용자가 글을 올릴 때 html 코드를 사용할 필요없이 비슷한 효과를 줄 수 있답니다.

320

(1개의 댓글, PunBB 맛보기 글에 작성됨)

제가 볼 땐 별 차이가 없는데요?
글꼴 크기가 작아 보인다면 사용하시는 테마의 css 파일에 있는 곳을 손봐주면 될 것 같습니다.

여기서 사용한 테마의 경우는, 제목 글자로 다음과 같이 지정되어 있습니다.

#brdtitle H1 {FONT-SIZE: 1.6em; text-shadow: #999 3px 3px 3px;}

그림자 효과는 Safari에서만 보이죠.

321

(7개의 댓글, PunBB 맛보기 글에 작성됨)

예전에 처음 맛보았을 때 아주 골치를 썩히던 어려운 Java 주제 포럼이군요. :red:

얼핏 보니, 한국어 파일을 공식 punbb 포럼에 올려놓았던 것을 사용하신 듯 한데 이 곳에 새로 올려놓은 것을 사용하시기 바랍니다. 예전 것은 몇 가지 맞춤법이 틀린 것이 있거든요.

그리고, RSS 아이콘의 경우 옆의 메뉴 보다 약간 처져서 보이는데 align값을 top으로 주시면 훨씬 반듯하게 보일 것 같습니다. Firefox와 같은 RSS 지원 브라우져의 경우에는 html의 head 태그에 rss 링크를 지정해 주면 자동적으로 rss 신호를 인식하는지라 다음과 같은 코드도 head에 추가해 보시길 바랍니다.

<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://javax.ivyro.net/pbb/rss.php" />

322

(1개의 댓글, PunBB 맛보기 글에 작성됨)

관리자나 돌보는 이들에게만 주어지는 권한인데, 매달고자 하는 글을 열어서 보면 맨 아래에 있는 메뉴 중에서 "이야깃거리 매달기"를 눌러서 해당 글을 포럼 맨 위에 고정시킬 수 있습니다.

323

(5개의 댓글, PunBB 맛보기 글에 작성됨)

메일 클라이언트로 어떤 것을 쓰시나요?
아마 메일 클라이언트의 기본 인코딩 값이 utf-8으로 설정되어 있지 않아서 생기는 문제 같습니다.

그리고 지금 다시 확인해 보니, 긴 메일의 제목이 잘리는 현상이 있군요. 이 문제를 고친 파일을 다시 올려두었으니 email.php 파일을 다시 받아서 설치해 주시기 바랍니다. :red:

324

(2개의 댓글, 맥 개발 글에 작성됨)

Javascript는 자체적으로 더 이상 사용되지 않는 object들이 차지했던 메모리 영역을 garbage collection 알고리듬을 이용해서 사용 가능한 영역으로 돌려주기는 하지만, widget을 개발하는데 있어서 메모리 사용량을 줄일 수 있는 몇 가지의 추가 조치가 필요할 때도 있습니다.

가령, widget이 많은 양의 그림 파일들을 사용할 경우에는 모든 그림 파일들을 메모리에 상주시키는 경향이 있기 때문에 사용하는 그림 파일들이 많아질 수록 메모리를 더 차지하게 됩니다. 그래서 위젯에서 사용하는 그림 파일들을 여러가지 그림 압축 도구들을 사용해서 크기를 줄여주면 메모리 사용량도 그 만큼 줄여줄 수도 있습니다.

또 하나 주의할 사항으로는 XMLHttpRequest objects를 사용한 후에는 반드시 바로 지워주어야 한다는 것입니다.
예를 들어 var someRequest = new XMLHttpRequest(); 구문으로 XMLHttpRequest object를 생성한 후에 var response = someRequest.responseXML; 로 요청 결과를 따로 저장한 후에는 다음처럼 XMLHttpRequest object를 지워줍니다.
someRequest = null;

이렇게 하면, 얼마간의 widget 메모리 사용량은 더 줄여줄 수 있을 겁니다. 물론 기본적으로 Javascript 코드의 알고리듬이나 효율도 잘 살펴보아야 할 부분이겠지요.

추가 참고 문서 - Efficient JavaScript - Opera Developer Community

325

(2개의 댓글, 맥 개발 글에 작성됨)

또 하나의 영상이 공개되었군요.
이번엔 "IT State of the Union"입니다. 저번 것은 개발자 위주의 내용이라면 이번에는 기업/교육 환경에서의 IT 사용자들을 위한 영상이라는군요.

영상을 내려받는 방법은 위의 것과 같습니다.

326

(7개의 댓글, 오순도순 글에 작성됨)

아주 까다로우시네요. big_smile

위젯을 닫는 x 단추의 위치는 앞판과 뒤판의 위치에 따라 약간씩 옮겨지도록 해서 깔끔하게 보이도록 고치겠습니다.

그리고, 어제는 미쳐 생각지 못한 부분인데, 새로운 버전이 있을 때 업데이트 표시를 앞판에 보여주도록 하려면 위젯이 보일 때마다 서버에서 버전 내용을 읽어들이게 해야만 하는데, 이것은 날씨 정보를 갱신하는 속도를 더디게 할 수도 있어서 권장될 만한 것이 아니군요. 이미 날씨 정보를 갱신하는 데에만도 많은 작업이 요구되거든요.

327

(7개의 댓글, 오순도순 글에 작성됨)

반갑습니다.
아시겠지만, 등록해서 이렇게 글을 남겨주신 것만 해도 여긴 늘상 있는 일이 아니라서 오히려 고맙군요. smile

위젯에 그림자 효과가 없는 것 같지만 실은 자세히 보면 있답니다. 그런데 너무 살짝 걸쳐 있어서 눈에 잘 안 보이긴 하죠. 다음 버전엔 잘 보이도록 그림자를 더 늘려놓아야 겠군요.
그리고, 말씀하신 업데이트 표시 기능도 위젯에 있습니다만, 이놈도 위젯의 뒷판을 볼 때만 표시가 되니 바로 눈치를 못 챌 수도 있겠군요. 이것도 다음 버전에선 앞으로 빼놓을께요.

요즘 기상 예보가 용하다는 점쟁이보다 못 한 느낌이죠? mad
기상 정보가 왜 엉터리냐는 것 빼고 위젯에 관련된 건의 사항이 있으시면 또 의견 남겨주세요. 그리고 제 블로그 글도 꼼꼼히 읽어주시는 분이 계시다니 기분 좋군요. big_smile

328

(2개의 댓글, 맥 개발 글에 작성됨)

2006 WWDC Session Videos 공개 배포

전에는 Leopard Early Starter Kit으로만 배포되었던 세션 비디오들 중에서 90분짜리 "Mac OS X State of the Union" 영상이 슬라이드와 함께 ADC 회원들에게도 공개되었습니다.

ADC on iTunes 페이지로 가서 로그인하면 iTunes가 실행되면서 ADC section으로 이동됩니다. 여기서 동영상과 함께 pdf로 된 슬라이드를 내려받을 수 있습니다. 동영상의 크기가 거이 500 MB나 되는군요.
Leopard의 밑바탕 기술을 맛볼 수 있는 좋은 자료가 될 것 같습니다. smile

329

(17개의 댓글, PunBB 맛보기 글에 작성됨)

PunBB에서는 기본적으로 글자 수와 관련해서 strlen()란 함수를 사용하였는데, 이 함수는 utf-8 문자를 제대로 처리하지 못 하기 때문에 제목에 쓸 수 있는 최대 글자 수가 의도된 바와 다를 수가 있습니다. 그래서 utf-8으로 된 글자의 수를 올바로 계산할 수 있도록 다음과 같은 추가 수정 작업이 필요하답니다.

우선, functions.php 파일에서 707번째 줄에 있는 다음과 같은 코드를

function pun_strlen($str)
{
    return strlen(preg_replace('/&#([0-9]+);/', '!', $str));
}

다음과 같이 바꾸어 줍니다.

function pun_strlen($str)
{
    return mb_strlen(preg_replace('/&#([0-9]+);/', '!', $str), 'utf-8');
}

다음에 post.php 파일의 86번째 줄에 있는 다음과 같은 코드에서

// If it's a new topic
if ($fid)
{
    $subject = pun_trim($_POST['req_subject']);

    if ($subject == '')
        $errors[] = $lang_post['No subject'];
    else if (pun_strlen($subject) > 90)
        $errors[] = $lang_post['Too long subject'];
    else if ($pun_config['p_subject_all_caps'] == '0' && strtoupper($subject) == $subject && $pun_user['g_id'] > PUN_MOD)
        $subject = ucwords(strtolower($subject));
}

else if (pun_strlen($subject) > 90 부분에 있는 글 제목의 최대 글자 수(90 - ascii 기준)를 적당한 것(60)으로 바꾸어 줍니다.
또한, edit.php 파일의 85번째 줄에 있는 else if (pun_strlen($subject) > 90) 부분의 글 숫자도 위와 같이 수정해 줍니다.

마지막으로, 여기서 지정한 제목의 글자 수는 한국어 번역 파일이 위치한 Korean 디렉토리 밑의 post.php 파일에도 적용해 줍니다.

비슷한 이유로, 포럼의 첫 화면에 최근에 올려진 글의 제목을 함께 표시하려고 수정했을 경우에도 utf-8 문자의 글자 수와 관련해서 추가 수정 작업이 필요합니다.

index.php파일을 열고 최근에 올려진 글의 제목 표시하려고 수정했던 부분 중 다음과 같은 코드를

if(strlen($idm) > 30) {
    $idmComp = str_replace('"', "''", $idm);
    $idm = substr($idm, 0, 30).'...';
} else
    $idmComp = '';

다음과 같이 바꾸어 준 후에 저장합니다.

if(mb_strlen($idm, 'utf-8') > 30) {
    $idmComp = str_replace('"', "''", $idm);
    $idm = mb_substr($idm, 0, 30, 'utf-8').'...';
} else
    $idmComp = '';

여기서 30이라는 숫자(표시될 제목의 최대 글자 수)는 포럼의 모양에 맞게 적당한 숫자로 바꾸어 주면 되겠습니다.

330

(8개의 댓글, 어플리케이션 글에 작성됨)

다음은 새로 갱신된 Apache 2.2.4를 위한 일반 Mac OS X Universal Binary 용 configure line입니다.

CFLAGS="-arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk" \
./configure \
--prefix=/usr/local/apache2 \
--with-included-apr \
--enable-mods-shared=all \
--enable-proxy-balancer \
--enable-proxy-ajp \
--enable-proxy-http \
--enable-proxy-ftp \
--enable-proxy-connect \
--enable-proxy \
--enable-ssl \
--enable-so

이번 Apache HTTP server 버전에는 새로운 버전의 Apache Portable Runtime (APR)이 추가되어서, 위에서처럼 꼭 --with-included-apr 설정을 해주어야만 오류없이 빌드할 수 있답니다.