Eclipse: คุณสามารถจัดรูปแบบโค้ดเมื่อบันทึกได้หรือไม่?


124

ใน Eclipse ภายใต้Windows-> Preference-> Java-> Code Styleคุณสามารถกำหนดเทมเพลตโค้ดสำหรับข้อคิดเห็นและโค้ดและคุณสามารถตั้งค่าตัวจัดรูปแบบโค้ดได้

ฉันสงสัยว่าใน Eclipse เป็นไปได้หรือไม่ที่จะให้การตั้งค่าเหล่านี้มีผลทุกครั้งที่ฉันบันทึกไฟล์ต้นฉบับ โดยพื้นฐานแล้วแทนที่จะให้ฉันไฮไลต์ทุกอย่างแล้วกดCtrl+ Shift+ Fฉันต้องการให้ Eclipse รับผิดชอบในการตรวจสอบว่าโค้ดของฉันได้รับการจัดรูปแบบอย่างถูกต้อง

เป็นไปได้หรือไม่และคุณจะตั้งค่าอย่างไร

หมายเหตุเกี่ยวกับการใช้รูปแบบอัตโนมัติ: ควรเลือก "Format Edited Lines" เนื่องจากการรวมการเปลี่ยนแปลงจะทำได้ยากมากเมื่อคุณฟอร์แมตไฟล์ทั้งหมดที่อยู่ในการควบคุมแหล่งที่มาซึ่งไม่ได้จัดรูปแบบอย่างถูกต้อง ได้ทำสิ่งนี้กับเพื่อนร่วมงานแล้ว


4
เป็นคำถามที่ดี แต่ฉันไม่เห็นด้วยกับการเปิดใช้ "Format Edited Lines" หากทั้งทีมสามารถเข้าถึง XML descriptor รูปแบบเดียวกันผ่าน SCM ทีมควรคาดหวังว่าไฟล์ของพวกเขาจะได้รับการฟอร์แมตใหม่ กล่าวอีกนัยหนึ่งความเจ็บปวดในระยะสั้นของการรวมกันนั้นคุ้มค่ากับประโยชน์ของการจัดรูปแบบที่สอดคล้องกัน
HDave

2
@HDave เห็นด้วย โค้ดควรมีประสิทธิภาพเทียบกับ "ซอร์สรูปแบบ" ในทุกโปรเจ็กต์ได้ตลอดเวลา
Thorbjørn Ravn Andersen

@ ThorbjørnRavnAndersenหากทุกคนใช้การตั้งค่าเหล่านี้คุณสามารถเลือก "Format Edited Lines" จะช่วยประหยัดเวลาหากไฟล์ของคุณมีขนาดใหญ่ ฉันเห็นด้วยกับคุณเกี่ยวกับความจำเป็นของรหัสที่แข็งแกร่งเมื่อเทียบกับ "Format Source" แต่ไม่ใช่หน้าที่ของ eclipse เพื่อให้แน่ใจว่าเป็นเช่นนั้นฉันคิดว่า
brimborium

@brimborium การตัดสินใจทางการเมือง โดยส่วนตัวแล้วฉันเชื่อว่ายิ่งคุณอยู่ใกล้การตั้งค่าเริ่มต้นมากเท่าไหร่สิ่งที่ราบรื่นก็จะทำงานได้มากขึ้นเท่านั้น
Thorbjørn Ravn Andersen

1
@ ThorbjørnRavnAndersenนั่นก็หมายความว่าตัวเลือกอัตโนมัติรูปแบบที่ถูกปิด ... ;) ฉันหมายความว่าฉันมักจะโดนCtrl+Shift+Fตามมาด้วยCtrl+Sจึงจะถูกปรับโดยฉัน แต่มีคนอื่น ๆ ที่ไม่ได้ดูแลเกี่ยวกับการจัดรูปแบบ คุณลักษณะนี้ทำให้ชีวิตของเราง่ายขึ้นมาก ...
brimborium

คำตอบ:


204

ภายใต้PreferencesเลือกJava-> ->Editor Save Actionsทำเครื่องหมายPerform the selected actions on saveและทำFormat source codeเครื่องหมายในช่อง

สิ่งนี้อาจมีหรือไม่มีใน Eclipse เวอร์ชันก่อนหน้า ฉันรู้ว่ามันใช้ได้ใน:

Version: 3.3.3.r33x_r20080129-_19UEl7Ezk_gXF1kouft<br>
Build id: M20080221-1800

3
สิ่งนี้ดูมีประโยชน์มาก - มีวิธีที่จะทำให้โค้ด PHP เหมือนกันหรือไม่?
Vacilando

3
ดี แต่คุณจะทำเช่นเดียวกันกับไฟล์ที่ไม่ใช่ Java ได้อย่างไร?
ᆼᆺᆼ

@ PéterVargaหากคุณใช้ PyDev ให้ตรวจสอบสิ่งนี้
grisaitis

1
สิ่งนี้ดูมีประโยชน์มาก - มีวิธีในการบรรลุรหัส C ++ เหมือนกันหรือไม่?
HAL9000

15

ฉันขอแนะนำอย่างยิ่งให้ตรวจสอบตัวอธิบาย xml รูปแบบ eclipse ของคุณในการควบคุมแหล่งที่มา ด้วยวิธีนี้สมาชิกทุกคนในทีมสามารถใช้ได้และคุณจะไม่ต้องเปลี่ยนรูปแบบการต่อสู้อีกต่อไป


สามารถทำได้เพื่อให้ไฟล์ XML ถูกติดตั้งตามค่าเริ่มต้นหรือไม่?
HDave

12

ฉันมีภาพรวมของการตั้งค่า โปรดไปตามเส้นทาง:

ในPreferencesหน้าต่างเลือกJava-> ->EditorSave Actions

ตรวจสอบPerform the selected actions on saveและตรวจสอบไฟล์Format source code box.

ใส่คำอธิบายภาพที่นี่


2

หากคุณพบว่าคุณไม่มีSave Actionsความชอบภายใต้Java-> Editorอาจเป็นเพราะคุณกำลังใช้ Eclipse เวอร์ชันเก่ากว่า ในกรณีที่คุณสามารถติดตั้งรูปแบบในการบันทึกปลั๊กอินจากที่นี่

จากนั้นภายใต้Preferencesเลือก->Java Format on saveเลือกRun Formatตัวเลือกภายใต้Select a code formatting action

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.