เพิ่มความเร็วในการเขียน Code กับ Live Templates (Part 2)

Kittipong Bunmuang
te<h @TDG
Published in
3 min readMay 19, 2020
Photo by 青 晨 on Unsplash

ครั้งก่อนเล่าเกี่ยวกับการใช้ Live Templates แบบเบื้องต้นกันไปแล้ว คราวนี้มาเพิ่มความสามารถของ Live Templates ใครยังไม่รู้ว่า Live Template คืออะไรไปอ่านกันได้ก่อน

Live Templates มีความสามารถอีกอย่างคือ การสร้างตัวแปรเพื่อทำเป็น Template นั้นที่เราสร้างมีความยืดยุ่นเเละ ลดการเขียน code ซ้ำๆ การทำงานก็จะรวดเร็วขึ้นนั้นเอง

Create Live Templates

การสร้าง Template นั้นเหมือนกับบทความเเรกที่ได้ทำกันมาแต่จะเพิ่มตัวแปรเข้ามา คือการกำหนดชื่อ หรือ ค่าต่างๆที่เราต้องการ เเล้วเรายังสามารถกำหนดให้เป็น snake case หรือ camel case เลยก็ได้ผ่านการ setting ของตัวแปร ผมขอยก Adapter ของ RecyclerView มาเป็นตัวอย่างแล้วกัน เนื่องจากมีการใช้บ่อยแล้ว code ก็แทบจะเหมือนเดิม เริ่มจากหน้าตาของ Adapter ที่เราต้องการจะประมาณนี้

RecyclerView Adapter

มาเริ่มสร้าง Template กันจากการกำหนดค่าต่างที่ต้องการจะเปลี่ยน ซึ่งก็ copy มาจากที่ทำไว้ก่อนหน้า โดยที่กำหนดชื่อที่จะใช้เป็น shortcut ที่ Abbreviation จากนั้นก็มากำหนดค่าตัวแปรกัน syntax ในการสร้างตัวแปรคือ $ตัวแปร$ เราสามารถใช้ชื่ออะไรก็ได้เลย โดยที่สร้างไว้จะมี $NAME$ คือชื่อ class $VALUE$ คือ list ที่ใช้ใน Adapter ส่วน $VIEWID$ คือ id ของ view นั้นเอง

template

ต่อมาเป็นการกำหนดค่าของตัวแปรว่าจะทำอะไรบ้างโดยคลิกที่ Edit variables

Edit variables

เราจะกำหนดค่าของตัวแปรโดยให้ VIEWID เป็นตัวแรกที่ต้องการพิมพ์ โดยสามารถกดเลื่อนขึ้นมาได้ จากนั้นไปต่อที่ VALUE โดยจะเอาค่ามาจาก VIEWID เเล้วทำให้เป็น camel case ต่อมา NAME เราต้องการ camel case ด้วยและ capitalize ด้วยจึงเอาค่ามาจาก VALUE เราสามารถแปลงค่าได้มากกว่านี้อีก เข้าไปดูกันได้ใน document ของ IntelliJ ผมได้แนบเอาไว้ใน reference แล้วส่วนต่อมาเป็นการให้กำหนดให้ skip if defined คือ ถ้ากำหนดค่าเเล้วข้ามได้เลยมาลองใช้กันดู

ตอนนี้ Live Template ของตัวเริ่มต้นอาจจะไม่เพียงพอที่จะใช้งาน เลยมีอีกทางมาเสนอคือ สามารถหา load ของคนอื่นที่แชร์มาใช้ได้เลยเเล้วจะมาเพิ่มเติมให้เป็นของตัวเองก็ได้ ซึ่งผมใช้อันนี้อยู่มีที่ใช้บ่อยๆอยู่พอสมควร

มีอีกอย่างที่อยากจะเพิ่มคือ Postfix Completion

Postfix Completion

คล้ายกันการทำ Live Templates แตกต่างกันตรงที่การใส่ . หลังจาก action คล้ายๆเป็น extension เช่น การทำ for ของ list ก็จะพิมพ์ <list>.for จากนั้นก็กด tab ได้เลย ทั้งนี้ยังมีอีกหลายอย่างเลือกใช้ แต่น่าเสียดายที่ไม่สามารถทำการเพิ่มในส่วนของ Kotlin ได้ แต่หวังว่าอนาคตจะมีให้เพิ่มได้

Postfix Completion ที่สามาถใช้ได้จะขึ้นหลังพิมพ์ dot
หลังจากกด tab จะขึ้นให้เเก้ไข item ได้

สามารถเข้าไปดู config ต่างๆ ของ Postfix Completion ได้ตามนี้

หวังว่าบทความนี้คงมีเป็นประโยชน์ไม่มากก็น้อยนะครับ :)

--

--