feh 이미지 뷰어에서 이미지 panning 에 방향키 사용하기

체스맨의 이미지

이미지 뷰어가 필요해서 뒤지다가 다음 글을 발견했습니다.

http://kldp.org/node/24890

현재 제가 쓰는 시스템 사양이 낮아서 comix 같은 건 잘 되지를 않더군요. Qanii 님께서 feh 란 걸 소개해주셔서 다운받아 실행해봤습니다.

http://linuxbrit.co.uk/feh/

gtk를 필요로하지도 않고, 가볍고 좋은데, 이미지 패닝이 마우스 드래그로만 되는 것 같더군요. 메뉴얼을 봐도 그렇고, 소스를 자세히 분석하진 못했지만 패닝은 마우스를 사용하도록 구현된 것 같았습니다. 좌우 방향키는 이전, 다음 이미지를 보기 위한 키로 돼 있는데, 이전 다음 보기는 사용 가능한 다른 키들이 있습니다. (예를 들어 space, backspace ) 그래서 방향키를 panning 에 할당하기로 했습니다.

==========================

아래쪽 답글에 패치를 올렸습니다. 아래 적은 내용과는 약간 다르게 한 부분도 있고 , 추가적인 수정부분이 있어서, 해보시려면 패치를 반영하시면 될 것 같네요.

==========================

src/keyevents.c, feh_event_handle_keypress 함수에서 XK_Left 가 두번째로 찾아지는 부분이 다음과 같이 구현돼 있습니다. 키를 설정하도록 돼 있지 않고 키코드로 직접 하드 코딩 돼 있습니다.

[원본코드]

   switch (keysym)
   {     
     case XK_Left:
        if (opt.slideshow)
           slideshow_change_image(winwid, SLIDE_PREV);
        break;
     case XK_Right:
        if (opt.slideshow)
           slideshow_change_image(winwid, SLIDE_NEXT);
        break;
...

수정하는데 참고할 소스 부분은 src/events.c, feh_event_handle_MotionNotify 함수의 다음 부분입니다.

         D(5, ("Panning\n"));
         orig_x = winwid->im_x;
         orig_y = winwid->im_y;
 
         winwid->im_x = ev->xmotion.x - winwid->click_offset_x;
         winwid->im_y = ev->xmotion.y - winwid->click_offset_y;
 
         winwidget_sanitise_offsets(winwid);
 
         if ((winwid->im_x != orig_x) || (winwid->im_y != orig_y))
            winwidget_render_image(winwid, 0, 0);

이것을 참조해서 src/keyevents.c, feh_event_handle_keypress 함수를 다음과 같이 수정합니다.

   /* 원하시는 만큼 늘이거나 줄이면 됩니다. 약간 더 수정한다면,
     gqview 처럼 shift 를 누르면 이동 폭이 증가한더던가 그런 기능을 넣을 수
     있을 겁니다. */
   #define PANPIXEL 30
   switch (keysym)
   {
     int orig_x, orig_y;
     case XK_Left:
 
     //  원본 코드
     //        if (opt.slideshow)
     //         slideshow_change_image(winwid, SLIDE_PREV);
 
         orig_x = winwid->im_x;
         winwid->im_x += PANPIXEL;
         winwidget_sanitise_offsets(winwid);
         if( winwid->im_x != orig_x )
            winwidget_render_image(winwid, 0, 0);
        break;
     case XK_Right:
 
     //  원본 코드
     //        if (opt.slideshow)
     //         slideshow_change_image(winwid, SLIDE_NEXT);
         orig_x = winwid->im_x;
         winwid->im_x -= PANPIXEL;
         winwidget_sanitise_offsets(winwid);
         if( winwid->im_x != orig_x )
            winwidget_render_image(winwid, 0, 0);
        break;
    case XK_Up:
         orig_y = winwid->im_y;
         winwid->im_y += PANPIXEL;
         winwidget_sanitise_offsets(winwid);
         if( winwid->im_y != orig_y )
            winwidget_render_image(winwid, 0, 0);
    break;
    case XK_Down:
         orig_y = winwid->im_y;
         winwid->im_y -= PANPIXEL;
         winwidget_sanitise_offsets(winwid);
         if ( winwid->im_y != orig_y )
            winwidget_render_image(winwid, 0, 0);
    break;

제작자와 컨택해볼 생각이었는데, 컨택하는 방법은 다음 주소에 써있는 것 같습니다만,
http://linuxbrit.co.uk/feh/wiki/FehFeatures

메일링 리스트를 어디서 가입하는 지도 잘 모르겠고, 최종 수정일이 2005년인 것 같아서, 일단 접었습니다.

Forums: 
atie의 이미지

feh는 배경그림 바꿀 때만 잠깐씩 사용해서 이런 것이 있는지도 몰랐군요. 이 글을 본 후에 소스를 보고 실행을 해 보았는데 제 랩탑에는 숫자키패드가 있는 것이라 XK_KP_Left/Right를 쓰면 같은 일을 하는군요.

evilwm을 쓰시느라 필요한 것을 맞춤형 프로그램으로 수정을 하시나 보군요. ^^
----
I paint objects as I think them, not as I see them.
atie's minipage

----
I paint objects as I think them, not as I see them.
atie's minipage

체스맨의 이미지

이게 노트북이 좀 후지다 보니 별로 의도하지 않게 그리되는군요. ( 게다가 근래에 오픈 소스 관련해서 이리 저리 찝쩍대는 중이기도 하구요... ^^ ) 프로그램은 필요한데 설치할 수 있는게 좀 한정적이라서요... 이 노트북이 꽤 맘에 들어서, 후져도 좀 써보는 중입니다.

아무튼 원본의 키패드 방향 구현도 적절하게 돼 있는 것 같진 않습니다.
제가 한 것처럼, winwidget_sanitise_offsets 를 호출하지 않으면 이미지 좌상단이나 우하단이 한계에 다다른 것과 상관없이 패닝을 해버리네요...

아무튼 ACDSee 기준으로 맞춰서 패치를 해볼 생각입니다..

Orion Project : http://orionids.org

체스맨의 이미지

음... -_-;;;

좀 더 살펴보니, 키패드 방향키로 이미지 패닝이 할당돼 있군요. 노트북 키보드라 알기가 어려웠던 것 같습니다. 위 원본 코드 ( [원본코드] 라 돼 있는 부분 ) 를 막아버리고, 다음과 같이 하는 게 더 쉽겠습니다.

     case XK_Left:
     case XK_KP_Left:
        winwid->im_x = winwid->im_x - 10;
        winwidget_render_image(winwid, 0, 0);
        break;

다른 방향키들도 마찬가지 입니다. 원본 코드에는 10 픽셀씩 움직이게 돼 있는데 원하는 만큼으로 바꾸시면 됩니다.

그리고 다른 키 설정들을 ACDSee 와 유사하게 전환할 수 있을 것 같은데, 수정해서 현재 feh 에 대한 패치를 마련해 올려 보겠습니다. 키설정이 가능하도록 만들기까진 좀 시간이 걸릴 것 같아서, ACDSee 의 zoom to fit, 이전 다음 이미지 보기 정도만 키를 맞춰보렵니다.

Orion Project : http://orionids.org

체스맨의 이미지

feh 프로젝트 사이트에서 소스 다운해서, src 디렉토리에 패치하면 됩니다.
수정 사항은

[키할당]
이건 ACDSEE 기준으로 해봤습니다.

1. 방향키로 패닝 ( 기존의 좌우 방향키 기능은 키패드 좌우 방향에 할당 ) : 패닝 폭은 기본값 10 ( 옵션으로 변경 가능 )

2. PGUP, PGDN 으로 이전 다음 이미지 이동 ( 기존의 PGUP, PGDN 기능은 키패드 상 하 방향에 할당 )

3. '/' 키를 원본 크기 보기로 할당 ( 기존은 키패드 * )

4. '*' 키를 zoom to fit 에 할 당 ( 기존은 키패드 / )

5. '+' 키를 줌인 ( 기존은 키패드 + ) --> 기존의 '+' 또는 '=' 에 할당된 기능은 키패드 + 로 할당

6. '-' 키를 줌아웃 ( 기존은 키패드 - ) --> 기존의 '-' 또는 '_' 에 할당된 기능은 키패드 - 로 할당

7. Shift 를 누른 상태에서 방향키 누르면 패닝 폭이 커짐 ( 기본 값 30이며 옵션으로 바꿀 수 있음 )

[추가 옵션]

--antialias 추가 : 항상 antianliasing 사용. antialiasing 은 기존에 이미 구현돼 있으나, '/' '*' '+' '-' 키조작을 사용하는 경우 이 옵션을 사용하지 않고 렌더링 했던 것으로 보임. 기존과 같은 동작을 원하면 이 옵션을 사용하지 않으면 됨.

--right : 이미지를 처음 로드했을 때 오른쪽 부분이 모두 표시되도록 설정 ( 우에서 좌로 보는 이미지에 유용 )

--bottom : 이미지를 처음 로드했을 때 하단 부분이 모두 표시되도록 설정 ( 아래에서 위로 보는 이미지에 유용 )

--normal-pan=pixels : 기본 패닝 픽셀 수

--fast-pan=pixels : 쉬프트를 누른 상태의 패닝 픽셀 수

댓글 첨부 파일: 
첨부파일 크기
파일 feh.patch9.39 KB

Orion Project : http://orionids.org

체스맨의 이미지

이미지들을 좀 보다보니, 노트북 lcd 가 밝은 편이라 그런지 눈을 피로하게 하는 경우가 있군요... 그래서 brightness, contrast, gamma, 조절 기능을 넣었습니다. 이미지 관련해서는 imlib 이 이미 갖고 있는 기능이라, 몇가지 함수 호출만 끼워 넣었습니다.

위 패치에 이 기능을 추가한 패치를 첨부합니다.

[키조작]
b, B : brightness 를 낮게 또는 높게
g, G : gamma 를 낮게 또는 높게
t, T : contrast 를 낮게 또는 높게 ( c, C 키가 할당된 곳이 이미 있어서, t 로 했습니다. )

[추가 옵션]

--brightness=b : 초기 brightness 값
--gamma=g : 초기 gamma 값
--contrast=c : 초기 contrast 값

--brightness-inc=bi : b,B 키 사용시 증분 ( 기본값 0.05 )
--gamma-inc=gi : g,G 키 사용시 증분 ( 기본값 0.05 )
--contrast-inc=ci : t,T 키 사용시 증분 ( 기본값 0.05 )

그리고 옵션을 저장하는 기능이 있는 것 같은데, 제가 추가한 것은 이에 해당하지 않습니다. 거기까지 하기는 싫으네요... -_-;

댓글 첨부 파일: 
첨부파일 크기
파일 feh.patch12.83 KB

Orion Project : http://orionids.org

체스맨의 이미지

최종 수정본입니다. 치명적인 버그가 있지 않는한은 이정도로 쓰려구요...

다음 옵션을 추가했습니다.
--echo-color-modifier :brightness, contrast, gamma 를 stdout 으로 출력합니다. 이 값을 기억해뒀다가 나중에 쓸 수 있을 겁니다.

--full-screen-only : 기존 -full-screen 옵션은 전체 화면 모드에서, 이미지가 전체화면의 크기를 초과하면 크기를 맞추는(zoom to fit) 작업을 행하는데, 이것을 하지 않도록 하고, 이미지의 폭이나 높이가 화면 크기보다 작은 경우는 화면 중앙에 위치하도록 합니다.

아마 --right 옵션 같은 경우 우에서 좌로보는 일본 만화인 경우 유용할 것 같은 생각이 드네요.

아무튼 소스가 보기 좋게 잘 짜여있는 것 같네요. 크게 어려움 없이 수정할 수 있었습니다.

댓글 첨부 파일: 
첨부파일 크기
파일 feh.patch15.04 KB

Orion Project : http://orionids.org

atie의 이미지

최종 수정본 패치도 우분투 hardy 패키지에 잘 적용이 되네요. man page와 키가 달라진 것이 나중에 혼란스러울까 저는 패치의 적용과 동작이 되는 것만 확인해 보았습니다. (그리고, feh를 배경화면 고르는데만 사용을 하고 화면크기와 딱 맞춰 항상 배경화면의 크기를 바꾸는지라...)

XK_Left/Right에 그 sanitise 함수를 호출하면 줌아웃 된 그림을 좌우로 움직일 때 방향키와 반대로 움직이는 사이드 효과가 있네요. 패치된 것을 그대로 두려면 크기 비교를 해서 움직이는 방향을 고르는 것도 넣어야 할 듯 합니다.
----
I paint objects as I think them, not as I see them.
atie's minipage

----
I paint objects as I think them, not as I see them.
atie's minipage

체스맨의 이미지

패치를 테스트해주셔서 감사합니다. 잘 된다니 기분이 좋네요.
방향이 반대로 되는 건, senitise 함수 때문이 아니라, 제가 의도적으로 현재 feh 구현과 반대로 해두었기 때문입니다.

acdsee 같은 경우 예를 들어 우측방향키를 누르면, "우측 부분의 이미지를 좀 더 보겠다." 의미로 처리됩니다. 반면, feh 는 이미지를 우측으로 이동시키는 게 돼서, 실제로는 좌측 부분의 이미지를 좀 더 보게됩니다.

새로 추가된 --normal-pan 및 --fast-pan 에 음수 값을 허용하면, 방향 문제는 해결할 수 있을 것 같습니다. 일부러 음수를 막아뒀는데, 풀어서 다시 패치를 올려야겠네요. 안그래도 버그가 하나 발견돼서 다시 올려야 됩니다... ^^

Orion Project : http://orionids.org

체스맨의 이미지

다시 올립니다. atie 님 말씀을 참고해서, 패닝 방향은 기본 구현대로 두고, --normal-pan 및 --fast-pan 옵션에 음수 값을 허용했습니다. 음수를 넣으면, acdsee 처럼 패닝 방향이 설정 됩니다.

그리고 버그가 하나 있었는데, 줌을 하지 않은 기본 상태 보기인 경우, brightness 등이 그림의 일부에 반영되지 않는 현상입니다. 이건 제가 만든 버그가 아니고, feh 개발자가 만든 gib 라이브러리의 버그 같습니다. 줌 상태가 아닌 경우 다른 함수를 호출하게 함으로써 버그를 피했습니다.

만화 보기에도 이용해보니, 꽤 쓸만한 것 같습니다. ^^

============================

기본 키 설정을 원본 그대로 두도록 수정하고, --acdsee 옵션을 사용하면, acdsee 키 입력을 따르도록 했습니다. 키 설정 기능을 두면 좋겠지만, 더는 무리군요.

패치도 다시 수정해서 업로드해두었습니다.

댓글 첨부 파일: 
첨부파일 크기
파일 feh.patch19.31 KB

Orion Project : http://orionids.org

atie의 이미지

--acdsee 옵션이 좋군요. (위에 제 글 쓰고 손 씻으면서 들었던 생각이 지리즈님이 다른 글에 "얍삽'이라고 썼던 것이었어요. 언제부터 숫자키패드 있는 것 썼다고... 베릴의 put 플러그인이 숫자 패드키로 창 옮기는 것 싫어 그것 바꾸던 때가 얼마나 되었나.)

랩탑 사용자에게는 패치된 키 설정이 훨씬 요긴하네요. 줌 인/아웃도 직관적이고. 고맙게 잘 쓰겠습니다.
----
I paint objects as I think them, not as I see them.
atie's minipage-

----
I paint objects as I think them, not as I see them.
atie's minipage

체스맨의 이미지

그런게 얍삽이군요. ^^
원 개발자가 노트북 사용자가 아니었거나, 아니면 얍삽일런지 모르겠네요...

나중에 개발자와 한번 컨택을 시도해봐야겠습니다. 개발이 중단된 것 처럼 보이긴 하지만요...

Orion Project : http://orionids.org

neuron의 이미지

이게 오픈소스구나 하는 느낌이 오는 쓰레드입니다

via c-7d 머신에 gentoo + fluxbox로 삽질중인데, 잘 쓰겠습니다~ =)

체스맨의 이미지

어차피 저를 위한 수정이었지만, 다른 사람에게 유용하게 쓰일 수 있다면 더욱 즐거울 겁니다.

Orion Project : http://orionids.org

체스맨의 이미지

처음엔 그냥 간단한 수정 방법을 설명하려고 했는데, 여기까지 와버렸네요. 게시판 성격과는 좀 다른 글이 된 것 같은 생각도 들고요...

실시간 토글 기능을 몇개 추가해서 패치를 만들었습니다. 아래 설명의 "[키할당], 3. 모드 변경" 부분입니다. 이 기능으로 옵션으로 미처 지정하지 않고 실행한 기능을 켜고 끌 수 있습니다.

=====================================================================

[키할당]

1. acdsee 키바인딩 ( --acdsee 옵션 사용시에만 유효 )

(1) 방향키로 패닝 ( 기존의 좌우 방향키 기능은 키패드 좌우 방향에 할당 ) : 패닝 폭은 기본값 10 ( 옵션으로 변경 가능 )

(2) PGUP, PGDN 으로 이전 다음 이미지 이동 ( 기존의 PGUP, PGDN 기능은 키패드 상 하 방향에 할당 )

(3) '/' 키를 원본 크기 보기로 할당 ( 기존은 키패드 * )

(4) '*' 키를 zoom to fit 에 할 당 ( 기존은 키패드 / )

(5) '+' 키를 줌인 ( 기존은 키패드 + ) --> 기존의 '+' 또는 '=' 에 할당된 기능은 키패드 + 로 할당

(6) '-' 키를 줌아웃 ( 기존은 키패드 - ) --> 기존의 '-' 또는 '_' 에 할당된 기능은 키패드 - 로 할당

(7) Shift 를 누른 상태에서 방향키 누르면 패닝 폭이 커짐 ( 기본 값 30이며 옵션으로 바꿀 수 있음 )

2. 색감 조절

b, B : brightness 를 낮게 또는 높게
g, G : gamma 를 낮게 또는 높게
t, T : contrast 를 낮게 또는 높게 ( c, C 키가 할당된 곳이 이미 있어서, t 로 했습니다. )

3. 모드 변경
a, A : auto-zoom 옵션을 실시간 토글
o, O : full-screen-only 옵션을 실시간 토글
] : right 옵션을 실시간 토글
} : bottom 옵션을 실시간 토글
i : infinite pan. normal-pan 옵션값을 100000 으로 하는 것을 토글 ( +- 부호는 유지됨 )
대개 이미지가 큰 경우에도 화면 폭과 높이의 두배 이하이므로 이 옵션을 설정하면, 방향키를 한번만 눌러도 이미지의 한쪽 끝에서 다른쪽 끝으로 이동할 수 있다.

[추가 옵션]

--acdsee : acdsee style 키 바인딩

--antialias 추가 : 항상 antianliasing 사용. antialiasing 은 기존에 이미 구현돼 있으나, '/' '*' '+' '-' 키조작을 사용하는 경우 이 옵션을 사용하지 않고 렌더링 했던 것으로 보임. 기존과 같은 동작을 원하면 이 옵션을 사용하지 않으면 됨.

--right : 이미지를 처음 로드했을 때 오른쪽 부분이 모두 표시되도록 설정 ( 우에서 좌로 보는 이미지에 유용. 예를 들어 일본 만화 )

--bottom : 이미지를 처음 로드했을 때 하단 부분이 모두 표시되도록 설정 ( 아래에서 위로 보는 이미지에 유용 )

--normal-pan=pixels : 기본 패닝 픽셀 수 ( 음수 입력하면 방향이 뒤바뀜 )

--fast-pan=pixels : 쉬프트를 누른 상태의 패닝 픽셀 수 ( 음수 입력하면 방향이 뒤바뀜 )

--brightness=b : 초기 brightness 값
--gamma=g : 초기 gamma 값
--contrast=c : 초기 contrast 값

--brightness-inc=bi : b,B 키 사용시 증분 ( 기본값 0.05 )
--gamma-inc=gi : g,G 키 사용시 증분 ( 기본값 0.05 )
--contrast-inc=ci : t,T 키 사용시 증분 ( 기본값 0.05 )

--echo-color-modifier :brightness, contrast, gamma 를 stdout 으로 출력합니다. 이 값을 기억해뒀다가 나중에 쓸 수 있을 겁니다.

--full-screen-only : 기존 -full-screen 옵션은 전체 화면 모드에서, 이미지가 전체화면의 크기를 초과하면 크기를 맞추는(zoom to fit) 작업을 행하는데, 이것을 하지 않도록 하고, 이미지의 폭이나 높이가 화면 크기보다 작은 경우는 화면 중앙에 위치하도록 합니다.

댓글 첨부 파일: 
첨부파일 크기
파일 feh.patch20.17 KB

Orion Project : http://orionids.org

atie의 이미지

데비안과 우분투에는 몇 가지 패치가 더 있어서 저처럼 deb으로 만들어 쓰실 분은 다음처럼 하세요.

- 적당한 디렉토리에서 apt-get source feh
- cd feh-1.3.4.dfsg.1
- 위의 feh.patch를 debian/patches 디렉토리에 적당한 이름으로 copy/paste (저는 99_kldp_91277.patch라 했습니다.)
- vim debian/patches/series 해서 마지막 줄에 99_kldp_91277.patch -p1 이라 추가합니다.
- 패키지 홀드를 하는 것도 있지만 기왕이면 debian/changelog 파일의 맨 앞에

Quote:

feh (1.3.4.dfsg.1-1.1) unstable; urgency=low

* add 99_kldp_91277.patch (http://kldp.org/node/91277).

-- YourName [YourEmailAddress] Fri, 23 Feb 2008 14:00:00 +0900


( []는 <> 로 복사후 꼭 수정하세요. * 앞에는 두 칸 공백 -- 앞에는 한칸 공백)
이런 식으로 .1 번호를 증가시켜놓으면 혹시나 나중에 있을 패키지 업데이트도 감지하고 새로 만든 패키지도 유지하는 일석이조가 있습니다.
- sudo apt-get build-dep feh (feh 패키지를 만드는데 필요한 다른 패키지를 설치합니다.)
- dpkg-buildpackage -rfakeroot (패키지를 만들고)
- sudo dpkg -i ../feh_1.3.4.dfsg.1-1.1_i386.deb (만든 패키지를 설치합니다.)

----
I paint objects as I think them, not as I see them.
atie's minipage

----
I paint objects as I think them, not as I see them.
atie's minipage

atie의 이미지

다른 글에 패키지 비교가 있어서 이 건의 아치의 PKGBUILD를 예로 올려봅니다.

Quote:

# $Id: PKGBUILD,v 1.13 2006/06/01 15:36:20 ganja_guru Exp $
# Maintainer: dorphell
# Contributor: Tom Newsom

pkgname=feh
pkgver=1.3.4
pkgrel=3.1
pkgdesc="feh is a fast, lightweight image viewer which uses imlib2"
arch=(i686 x86_64)
depends=('libpng' 'libxinerama' 'giblib')
source=(http://linuxbrit.co.uk/downloads/$pkgname-$pkgver.tar.gz \
99_kldp_91277.patch)
url="http://www.linuxbrit.co.uk/feh/"
md5sums=('3d35ba3d2f0693b019800787f1103891' '4d0626f15921b9b7479e58ae17de1ed7')

build() {
cd $startdir/src/$pkgname-$pkgver
patch -Np1 -i ../99_kldp_91277.patch || return 1
./configure --prefix=/usr
make || return 1
make prefix=$startdir/pkg/usr install
}

기존 PKGBUILD를 arch cvs웹에서 복사해서 에디터에 놓고,

pkgrel=3 을 3.1로 수정했고, source=()에 99_kldp_91277.patch 포함한 것이 보이실테고, md5sums의 두번째 값이 그 패치의 것입니다. 그리고 build()에 실제 patch 명령이 들어갔고요. /var/abs/local/feh/PKGBUILD로 파일 저장합니다.

같은 디렉토리에 99_kldp_91277.patch도 md5sum 체크하려면 이미 들어있어야 하겠죠.

준비되었으면, /var/abs/local/feh 디렉토리에서
makepkg (패키지를 만들고)
sudo pacman -U feh-1.3.4-3.1-i686.pkg.tar.gz (설치합니다.)
----
I paint objects as I think them, not as I see them.
atie's minipage

----
I paint objects as I think them, not as I see them.
atie's minipage

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.