Friday, November 04, 2005

การแสดง source code ใน Post

คุณ ohm ถามว่าเราจะแสดง xml tag, html tag ใน
post ของ blogger อย่างไร
เผอิญไม่มี email ของคุณ ohm ก็เลยขอตอบในที่นี้แล้วกัน

เริ่มแรกสุดก็คือเราจะแสดงผล xml หรือ html tag ใน post ได้อย่างไร
สมมติเราต้องการแสดงผลแบบนี้
<x>
<y>hello</y>
</x>

เวลาเราเขียน blog ก็ต้องทำการ encoding ให้เรียบร้อยก่อน
แล้วค่อยใส่ไว้ใน pre tag
หน้าตาของ post ที่จะแสดงผลเป็น xml แบบข้างบน ก็จะเขียนแบบนี้
<pre>&lt;x&gt;
&lt;y&gt;hello&lt;/y&gt;
&lt;/x&gt;</pre>


ซึ่งวิธีการทำแบบข้างบนนี้ ผมเขียน script find & replace เข้าไป editor
แล้วก็ทำ menu ไว้ เวลาจะแปลงก็เลือก highlight text ส่วนที่ต้องการ
แล้วก็เรียกใช้ script

ขั้นที่ 2 ก็คือ เกิดเราต้องการ syntax highlight หล่ะ
เราจะทำอย่างไร อันนี้ต้องหา tool เข้ามาช่วย
ผมเคย post วิธีที่ผมใช้แล้ว ลองอ่านดูนะครับ

ขั้นตอนเวลาผม post ส่วนที่เป็น source code
ผมก็จะเขียน code ลงใน jedit ก่อน
จากนั้นก็เรียกใช้ action จาก plugin ที่ผมเขียนขึ้น
ซึ่งมันจะทำการแปลง source code ให้อยู่ในรูป syntax highlight
จากนั้นก็ใส่ไว้ใน clipboard
เพื่อที่ผมจะได้ใช้คำสั่ง copy จาก clipboard ลง file ที่ต้องการได้เลย

กรณีที่คุณ ohm ไม่ถนัด java
ผมเคยใช้ perl module ที่ชื่อ vimcolor
ตัวนี้มันจะใช้ vim syntax feature ในการทำ syntax highlight

Note: กรณีต้องการ source code ของ plugin
ก็ให้ทิ้ง mail ไว้ครับ จะได้ส่งไปให้

Related link from Roti

3 comments:

OHM said...

ขอบคุณมากครับ หาวิธีอยู่ตั้งนาน
Java ยังไม่เคยเขียนจริง ๆ จัง ๆ ครับ ตอนนี้เสพติด .NET งอมแงม พอมี Version ใหม่ออกมา ทำให้ต้องเสียตังค์ทุกรอบ นี่ก็เพิ่งออก 2005 มา อาการเริ่มหนัก ชักไม่ไหว ว่าจะรอให้ NetBeans 5.0 ออกก่อนถึงจะหันหัวไปทาง Java ดูแล้วน่าจะ OK ได้ข่าวว่าจะออกเดือนหน้านี้เอง

ส่งอะไรมาก็ได้ครับ ผมพยายามจะทำให้ตัวเองเขียนได้ทุกภาษา (โลภมาก ทั้ง ๆ ที่ไอ้งานที่เขียนอยู่ก็จะตายอยู่แล้ว)
ผมพึ่งมาเจอ Blog ของคุณ ป๊อก (ไม่รู้สะกดถูกหรือเปล่า)อ่านแล้วได้ความรู้เยอะดี เดี๋ยวจะค่อย ๆ ไล่อ่านอันก่อน ๆ ให้หมด ขอบคุณครับ

ekasit_b@hotmail.com

mk said...

ขั้นที่ 1 นี่จริงๆ ถ้าบล็อกใช้ rich text editor ที่เปลี่ยน textarea ให้มีความสามารถเยอะๆ อย่าง htmlarea, fckeditor มันจะ preserve text format ให้ (เหมือนกับเราก็อป html ไปใส่ word) ก็อปมาแปะได้ตรงๆ คิดว่าของ blogger ก็น่าจะสนับสนุน?

เรื่องการแสดงโค้ด ผมมีปัญหากับ feed ครับ มันจะตัดบรรทัดให้เกือบทุกครั้ง แบบนี้

[
1,2
].__send__(
'
length
'
) #
=>

2


ผมใช้ bloglines

polawat phetra said...

ใช้ safari กับ blogger
feature ของ rich text editor เลยเหลือแค่ upload รูป
กับ check spell

ส่วน source code ที่ blogline แสดงผลไม่ได้
ต้องเกี่ยวกับ span block แน่เลย