태터툴즈 LangToHtml 플러그인을 도아님이 만드신 바깥고리 표시 플러그인(너무 맘에 들어 안 쓸수가 없죠. ㅠㅠ)과 같이 쓰게 되면 소스 코드에 이미지가 생겨 보기 흉한 걸 어떻게 고쳐볼까 연구를 시작했습니다.
Geshi Documentation을 아무리 또 읽고 또 읽어 보아도 제대로 안 되기에 극단적인 방법으로 링크를 걸어주는 함수를 주석 처리하기로 하였습니다. ㅡㅡ;;
주석처리 하는 방법은 플러그인 폴더 밑에 geshi/geshi.php문서의 2164행 근처를 다음과 같이 수정해 주시면 됩니다.
// Replace <|UR1| with <a href= for urls also /*주석 처리 if (isset($this->link_styles[GESHI_LINK])) {
if ($this->use_classes) {
$stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' href=', $stuff_to_parse);
} else {
$stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' style="' . $this->link_styles[GESHI_LINK] . '" href=', $stuff_to_parse);
}
} else {
$stuff_to_parse = str_replace('<|UR1|', '<a' . $this->link_target . ' href=', $stuff_to_parse);
} 주석처리 끝*/
//
// NOW we add the span thingy ;)
변경사항) 태터 1.1버전에서 "새로 쓰시는 글에 대해서" 줄바꿈이 안되는 현상이 발생했습니다. 태터 에디터가 DB에 저장하는 방식이 살짝 바뀐 것 같습니다. 태터 1.1버전을 쓰시는 분들은 줄바꿈을 위해 index.php파일의 70번째 줄 부분을 다음과 같이 수정해주셔야 합니다.
CODE TYPE : php //코드를 알맞은 형태로 넘겨줌 $source = str_replace("<br />", "\n","$source);
1.1 아래 버전으로 작성한 글에대해서는 엔터가 하나씩 더 들어가게 출력됩니다. 이 문제는 해당 글을 수정 메뉴를 통해 동일한 내용으로 다시 저장하시면 해결이 가능합니다. ^^;;
덧, 수정 및 재배포가 가능합니다.(GPL) 덧, 제가 시험해본 언어는 C와 php입니다. 다른 언어도 Geshi에서 지원한다면 될 것입니다. 덧, agcraft님의 PointCode소스를 허락없이 참고 했습니다. 너그러이 용서를 부탑드립니다..^^;; 덧, Geshi 수정을 위한 Documentation 문서 - 바로가기
깔끔하게 별다른 수정없이 잘 동작하는군요. 감사합니다.
제가 테스트 해 본 부분은 SQL과 C# 입니다. 상당히 많은 언어를 지원해주는 듯 합니다. 감사합니다.
근데 문의할것은. 해당 CODE 부분으로 둘러쌓인 코드의 배경색을 지정해줄 수 있나해서요
머라고 해야되나 -_- 엷은 회색의 사격형안에 코드를 가두고 싶습닌다. 이해하실 수 있을듯 -_- 대부분의 코드를 사용하면 변하는 그런 배경색으로 해서 코드를 내용안에서 잘 보일 수 있도록 하고 싶습니다.
수정방법 좀 알려주세요~ php를 잘 모르다보니 ㅠㅠ
Geshi에서 출력할때 행번호같은 것도 설정할 수 있다고 하더군요. 저도 Geshi에서의 설정 방법은 잘모르겠습니다.
그냥 제 스타일로 하는 법을 말씀드리면 index.php파일을 보시면 소스코드 중간에 "//입맛에 따라"라는 부분이 있습니다. 그 밑 에 주석처리된 3줄의 주석 인자(//)를 제거해주시고 $code_mark="" 부분에 해당하는 html 코드를 써주시면 됩니다. ^^
예를 들자면 <div style=\"background-color:beige;\"> 이렇게 해주시면 됩니다.
그리고 주의하실점은 <div>태그를 썼으니까 3번째 주석처리 되어있던 곳에 </div>을 써주셔야합니다. ^^