KLDP에 글 쓸 때 소스 코드 넣는 방법

세벌의 이미지

소스 코드는 code 태그로 감싸야 제대로 보입니다.
안 그러면 include 뒤 다 날아가고, 들여쓰기 다 무시됩니다.
아래 예를 참고 하셔요.

<code>
#include <stdio.h>
int main()
{
printf("hello.\n");
}
</code>

처럼 쓰면, 아래와 같이 나타납니다.

#include <stdio.h>
int main()
{
    printf("hello.\n");
}
Forums: 
익명 사용자의 이미지

아 그러면 해당 코드에  로 감싸면 되는것인가요 ?

프로그래밍 의 이미지


블로그나 다른 커뮤니티를 보면 Syntax Highlighter 를 넣어서 게시판에 소스 코드를 올릴 때

예쁘게 나오던데 여기 kldp도 그렇게 했으면 좋겠네요.

예를 들면 말이죠.

http://pivot.apache.org/tutorials/stock-tracker.data-binding.html

https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener

김정균의 이미지

이런거죠?

#include <stdio.h>
 
#ifundef HELLO
    #define HELLO "Hello world"
#endif
 
int main (void) {
   printf ("%s\n", HELLO)
   reuturn 0;
}

KLDP drupal 에서는 code highlighting 을 geshi 를 이용해서 하고 있습니다. 그러므로 code tag 에 lang attribute 를 설정하여 code highlighting 을 할 수 있습니다.

<code lang="cpp"> 이런식으로 말이죠.

lang attribute 값은 geshi language code 값을 사용 합니다.

세벌의 이미지

python 소스는 code 대신에 python 이라고 쓰면 되네요.

score=int(input('점수를 입력하시오 : '))
 
def printGrade (score): 
 
if score>=90: 
print('A') 
 
elif score>=80: 
print('B')
 
elif score>=70: 
print('C')
 
elif score>=60: 
print('D')
 
else: 
print('F')
 
c=printGrade (score)
 
print(c)

이렇게 들여쓰기 무시하면 제대로 동작하진 않을 겁니다.

김정균의 이미지

<python>~</python> block을 지원하기는 하지만, 그래도 <code lang="python">~</code> 로 사용하는 것을 권장 합니다. python block은 부가적으로 지원을 하는 것이기 때문에 충돌 발생이 날 수 있어 제한 될 수도 있습니다. (예를 들어 bb tag랑 c block이 충돌이 발생한 문제가 있었죠.

세벌의 이미지

java 라면
code lang="java"
쓰면 되겠죠?

김정균의 이미지

글쓰기 하단에 보시면 사용할 수 있는 문법 highlighting tag 목록 이 있습니다.

다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <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>.

이 tag 이름을 lang="pgsql" 에 넣어 주시면 됩니다. 위의 tag 를 보여주는 까닭은
어떤 문법이 지원되는지 리스트를 보여주지 않아서 tag 도 지원을 하도록 해 놓은 것
입니다.

댓글 달기

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
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.