• Internet 07.01.2008 No Comments

    웹 표준의 중요성이라기보다는 설계가 잘 된 html의 중요성 혹은 html과 css 분리의 중요성이라고 해야 할 것 같다.

    최근에 홈페이지를 모두 RapidWeaver 기반으로 변경했다. 어느 툴에서 작성하든 Static html은 별 문제가 없는데, 방명록이며 위키같은걸 붙여보려니까 테마 작업을 해야 해서 매우 귀찮다는 생각이 들었다. 방명록으로 쓰는 게시판과 위키가 모두 다른 디렉토리에 깔려 있는 다른 프로그램들이다. 그래도 새해맞이 공사를 하는거니까 귀찮음을 참고 그냥 덤벼봤다. -_-;

    일단 css를 통합하는 일을 했다. RapidWeaver의 css는 복잡하기는 하지만 구조적으로 간단하게 되어 있어서 별로 고칠 것이 없다. 대신 그림 파일의 경우 상대경로를 모두 절대경로로 바꾸어 주어야 한다. 프로그램에 따라 설치 경로가 다르기 때문이다. 몇 개의 유저 설정에 따라 바뀌는 css들을 모두 한 개의 css 파일에 박아넣어준다.

    다음은 html 구조를 만들 차례다. 그냥 홈페이지의 내용 중에서 윗 부분과 아랫 부분으로 나눈 다음에 각각 header.php와 footer.php로 저장을 한다. 어차피 대부분의 스킨 종류에서 헤더를 읽어오는 것은 아니고 그냥 body 태그 사이만 가져오는 거기 때문에 원 html에서 body 부분만 적당히 나누어 주면 된다.

    다음은 앞에서 저장한 css 파일에 각 프로그램마다 독특한 설정들을 넣어준다. 대부분의 설정은 기본 css만으로도 커버가 되고 일부 레이아웃이 필요한 요소들의 경우에만 적절한 설정을 넣으면 된다. 특히 div 요소의 padding 값을 잘 넣어주어야 원래 메인 테마와 정확하게 맞추어줄 수 있다.

    이 정도 만들어 두면 프로그램마다 대부분 헤더와 푸터를 지원하기 때문에 별 어려움 없이 테마에 맞는 설정을 해 줄 수가 있다. Metabbs의 경우에는 html을 지정하는 skins, css를 지정하는 styles가 나누어져 있다. 그냥 이름만 통일해 주면 된다. Moniwiki의 경우에는 테마 안에 헤더와 푸터, 그리고 css를 모두 넣게 되어 있다. 그냥 넣으면 된다.

    이 정도의 작업이 RapidWeaver 테마와 위키, 게시판의 테마를 통일하기 위한 작업이다. 이제 RapidWeaver에서 테마를 바꾸면 게시판과 위키에서도 만들어둔 테마를 새 이름으로 복사한 후에 해당 css만 긁어다가 붙여주면 별 무리 없이 적용이 된다. 이렇게 해 놓고 나니 좀 통일성이 있어보이는 사이트가 되었다.

    잘 작성이 된 사이트는 css를 없애고 html만 봐도 의미가 잘 전달이 되어야 한다. 그리고 모든 디자인적인 요소는 css에서 담당을 해야 한다. 이전에 제로보드 4 버전을 쓰던 시절의 html 코딩을 생각해 보면 정말 그 때는 의미와 디자인의 구별이 전혀 되어 있지 않았었다. 그런 어지러운 구조가 끊임없이 재생산되면서 웹을 어렵게 만들었었다. RapidWeaver와 유사하다고 볼 수 있는 나모 웹에디터만 해도 이런 부분에 대한 고민이 거의 없었다.

    그러나 최근에 개발되는 많은 웹 프로그램들이 의미와 디자인을 잘 구별해 주고 있다. 이런 구별을 통해서 어디서든 잘 보이는 웹 페이지를 만들 수 있고, 어떤 상황에서도 의미 전달이라는 목표를 잘 수행할 수 있는 기반을 마련하고 있는 것이다.

    Tags: , ,

  • Internet 31.05.2007 4 Comments

    좀 늦은 소식이기는 하지만… Metabbs 0.9RC3 버전이 출시되었다. 지난 3월에 RC2 버전이 출시되었으니 약 3개월만이다.

    이번 버전에서는 약간의 기능 개선이 이루어졌는데, 그 중에서 글 이동 관련 버그, 시간대 설정 기능 같은 것은 내가 내 홈페이지에서의 이전 게시판 및 방명록, 그리고 DVS 홈페이지를 운영하게 되면서 겪게 된 경험으로부터 해결된 이야기이다.

    이외에 OpenID 플러그인이 추가되었고, TinyMCE를 이용한 WYSIWYG 편집 기능, 사용자 간에 쪽지를 주고받을 수 있는 messenger 기능이 추가되었다. 나는 WYSIWYG 편집기보다 markdown을 훨씬 좋아하는 터라 TinyMCE는 별로 쓸 일이 없어보이지만, 그래도 다른 사용자들을 위해 이런 기능이 있는 것이 나쁘지는 않아 보인다. 쪽지 기능 역시 Metabbs의 원래 목표와 그다지 연관성은 없어보이지만, 역시 대부분의 국내 게시판 프로그램이 지원하고 있는 것이니만큼 없는 것 보다는 나을 수도 있을 것 같다.

    무엇보다 Metabbs의 장점은 웹 표준을 잘 지킨다는 점이다. 그리고 기능상의 유연함 덕분에 원하는 일들을 약간의 노력으로 쉽게 할 수 있다는 장점도 있다.

    이제 곧 1.0 버전을 향해 갈텐데, 목적에 맞는 좋은 소프트웨어가 되면 좋겠다.

    Tags: , , , , ,

  • Internet 26.02.2007 No Comments

    Metabbs는 웹 표준을 지키는 php 게시판이다. 웹 표준 게시판의 분석은 이 곳에서 자세히 볼 수 있다.

    2000년대 초반에 운영하던 내 홈페이지의 많은 내용이 제로보드에 들어 있고, 이 내용들은 사실상 다른 곳으로 꺼내오기가 매우 어려운 상황이었다. 물론 제로보드로부터 내용을 가져오는 컨버터들이 많이 있었지만, 대부분이 오래된 것들이었고, 그나마 마음에 드는 게시판 프로그램이 별로 없었기 때문이다.

    그러다가 metabbs를 알게 되었고, 포럼의 이 글에서 제로보드 컨버터가 있다는 사실을 알게 되었다. 내가 쓰고 있던 호스팅의 mysql 버전이 3.x 였기 때문에 약간의 수정이 필요했고, 각 글의 카테고리가 제대로 지정되지 않았으며, 글쓴 날자가 제대로 컨버팅이 되지 않아서 모든 글이 1969년 12월에 쓴 것으로 되어 버렸지만 어쨌든 내용은 모두 metabbs로 무사히 옮길 수 있었다.

    이제 metabbs를 제대로 쓸 수 있겠다고 생각하고 있었는데, 이게 웬걸… 제로보드 내용 중에 태그를 사용한 글들은 모두 태그가 그대로 출력이 되는 것이다. 알고 보니 metabbs에서는 본문에 태그를 거의 허용하고 있지 않은 듯 하다. 결국은 이 문제를 어떻게 해결할까 하다가, metabbs용 markdown 플러그인이 있는 것을 보고 textile 지원 플러그인을 써봐야겠다는 생각이 들었다.

    우선 가장 중요한 프로세서는 textilephp라는 것을 찾을 수 있었다. Markdown 플러그인을 적당히 수정해서 플러그인용 php 파일도 만들었다.

    그런데, 또 하나의 문제가, texile 지원은 제대로 되는데 한글 출력이 안되는 것이었다. 약간의 구글링 끝에 이 문제에 대한 해답을 여기에서 발견할 수 있었고, 이 파일의 내용대로 Textile.php를 수정하여 한글 문제를 해결할 수 있었다.

    혹시 사용을 원하는 사람이 있다면 이 파일을 다운받은 후 metabbs/plugins/ 디렉토리에 압축을 풀고 플러그인을 활성화해주면 textile 기능을 metabbs에서 사용할 수 있다.

    Tags: , , , ,