ฉันจะใช้แท็บสำหรับการเยื้องใน IntelliJ IDEA ได้อย่างไร


129

ฉันจะใช้แท็บแทนช่องว่างหลายช่องสำหรับการเยื้องใน IntelliJ IDEA 11.0 ได้อย่างไร

ฉันมี "ใช้อักขระแท็บ" การตรวจสอบภายใต้ "สไตล์รหัส"> "ทั่วไป"> "ตัวเลือกเริ่มต้นเยื้อง" และยังพยายามตรวจสอบ "แท็บอัจฉริยะ" แต่ก็ไม่ได้ผล

จากเอกสารประกอบ :

หากเลือกกล่องกาเครื่องหมายนี้จะใช้อักขระแท็บ:

  • เมื่อกดแป้น Tab
  • สำหรับการเยื้อง
  • สำหรับการฟอร์แมตโค้ด

มิฉะนั้นจะใช้ช่องว่างแทนแท็บ

คำตอบ:


58

IntelliJ IDEA 15

สำหรับไฟล์ปัจจุบันเท่านั้น

คุณมีตัวเลือกดังต่อไปนี้:

  1. Ctrl+ Shift+ A> เขียน "แท็บ"> ดับเบิลคลิกที่ "ถึงแท็บ"

    ไปยังแท็บ

    หากคุณต้องการแปลงแท็บเป็นช่องว่างคุณสามารถเขียน "ช่องว่าง" จากนั้นเลือก "ถึงช่องว่าง"

  2. แก้ไข> แปลงการเยื้อง> เป็นแท็บ

    ในการแปลงแท็บเป็นช่องว่างคุณสามารถเลือก "To Spaces" จากที่เดียวกันได้

สำหรับไฟล์ทั้งหมด

เส้นทางในคำตอบอื่น ๆ มีการเปลี่ยนแปลงเล็กน้อย:

  • File> Settings ... > Editor > Code Style> Java> Tabs and Indents> Use tab character ใช้อักขระแท็บ
  • ไฟล์> การตั้งค่าอื่น ๆ > การตั้งค่าเริ่มต้น ... > ตัวแก้ไข > รูปแบบโค้ด> Java> แท็บและการเยื้อง> ใช้อักขระแท็บ
  • ไฟล์> การตั้งค่า ... > ตัวแก้ไข > รูปแบบโค้ด> ตรวจหาและใช้การเยื้องไฟล์ที่มีอยู่เพื่อแก้ไข
  • ไฟล์> การตั้งค่าอื่น ๆ > การตั้งค่าเริ่มต้น ... > ตัวแก้ไข > รูปแบบโค้ด> ตรวจหาและใช้การเยื้องไฟล์ที่มีอยู่เพื่อแก้ไข

ดูเหมือนว่าจะไม่สำคัญว่าคุณจะทำเครื่องหมาย / ยกเลิกการเลือกช่องจากการตั้งค่า ...หรือจากการตั้งค่าอื่น ๆ > การตั้งค่าเริ่มต้น ...เนื่องจากการเปลี่ยนแปลงจากหน้าต่างหนึ่งจะมีอยู่ในอีกหน้าต่างหนึ่ง

การเปลี่ยนแปลงดังกล่าวจะถูกนำไปใช้สำหรับไฟล์ใหม่แต่ถ้าคุณต้องการที่จะเปลี่ยนแปลงพื้นที่ไปยังแท็บในแฟ้มที่มีอยู่แล้วคุณควรจัดรูปแบบไฟล์โดยการกดCtrl+ +AltL


1
นั่นคือสิ่งที่ฉันเรียกว่าคำอธิบาย! ขอบคุณมาก. ฉันคุ้นเคยกับการเว้นวรรคและฉันได้ตั้งค่าสิ่งอื่น ๆ เช่นกัน แต่ฉันพลาดการฟอร์แมตใหม่
geisterfurz007

210

File > Settings > Editor > Code Style > Java > Tabs and Indents > Use tab character

เปลี่ยนตัวเลือกอาวุธสำหรับ Java ตามความต้องการ


5
โปรดทราบว่าหากคุณกำลังเปลี่ยนแปลงสิ่งนี้และแทนที่แท็บ / ช่องว่างทั้งหมดในไฟล์คุณอาจต้องปิดและเปิดไฟล์อีกครั้งเพื่อให้การตรวจจับได้รับการแก้ไขหลังจากการเปลี่ยนแปลงของคุณ
mlissner

3
มีความคิดว่าทำไม "ใช้อักขระแท็บ" ไม่ได้เปิดใช้งานโดยค่าเริ่มต้น
Ivan Balashov

2
อักขระแท็บ @IvanBalashov อาจทำให้เกิดปัญหาในการจัดรูปแบบเมื่อดูในโปรแกรมแก้ไขข้อความอื่น ๆ นอกจากนี้บางภาษาเช่น Python อาจแตกได้เมื่อคุณใช้แท็บแทนช่องว่าง
Cache Staheli

11
และจะทำอย่างไรเมื่อต้องการให้ Tabs เป็นเยื้องสำหรับทุกภาษา ?? ฉันควรคลิกผ่านภาษาต่างๆมากกว่า 500 ภาษาและใช้ทีละภาษาหรือไม่
phil294

3
ฉันได้ทำสิ่งนี้แล้วและ IntelliJ ยังคงใช้ช่องว่าง (ดูโพสต์ว่าทำไม - เคยชิน - intellij-use-tabs )
สงสัย 1ejack

24

ฉันได้เริ่มใช้ IntelliJ IDEA Community Edition เวอร์ชัน 12.1.3และพบการตั้งค่าในตำแหน่งต่อไปนี้: -

File > Other Settings > Default Settings > {choose from Code Style dropdown}

4
จะไม่พบสิ่งนี้หากไม่มีคำตอบของคุณ ขอบคุณ!
MegaMatt

2
คุณอาจต้องยกเลิกการเลือก "ตรวจหาการเยื้องไฟล์"
lowcrawler

14

สำหรับใครก็ตามที่ไม่สามารถรับสิ่งนี้ได้อีกสิ่งหนึ่งที่คุณต้องยกเลิกการเลือกสิ่งต่อไปนี้ด้วย

Preferences > Editor > Code Style
[] Enable EditorConfig support
EditorConfig may override the IDE code style settings

My IntelliJ เวอร์ชัน 15.0.4


1
ขอบคุณ! คุณเพิ่งบันทึกแป้นพิมพ์ของฉัน
Carl Bergquist

ฉันมีช่องว่าง 2 ช่องเป็นขนาดแท็บและพยายามแก้ไขมาหลายวันแล้ว นี่คือวิธีที่ฉันแก้ไขปัญหา ขอบคุณมาก @visheshd
adi

10

อีกตัวเลือกที่มีประโยชน์ใน IDEA เพื่อปิดหรือตรวจสอบหากคุณต้องการสิ่งนั้นจริงๆ:

Preferences -> Code Style -> Detect and use existing file indents for editing

หากทีมของคุณกำลังจะเปลี่ยนไปใช้การจัดรูปแบบแท็บด้วยโค้ดที่มีอยู่ซึ่งเขียนด้วยช่องว่างให้ยกเลิกการเลือกนั้น


8

คุณลอง. editorconfigหรือยัง? คุณสามารถสร้างไฟล์นี้ในรูทของโปรเจ็กต์ของคุณและกำหนดค่าการเยื้องสำหรับไฟล์ประเภทต่างๆ รหัสของคุณจะถูกจัดรูปแบบโดยอัตโนมัติ นี่คือตัวอย่าง:

# top-most EditorConfig file
root = true

# matches all files
[*]
indent_style = tab
indent_size = 4

# only json
[*.json]
indent_style = space
indent_size = 2

ไฟล์นี้จะลบล้างสิ่งอื่นใดในการตั้งค่า intellij การตรวจสอบไฟล์นี้เป็นสิ่งสำคัญมากก่อน
Arashsoft

เมื่อลองทุกอย่างแล้ว - ยอมรับหรืออย่างอื่น - ในหน้านี้นี่เป็นสิ่งเดียวที่เอาชนะช่องว่างขนาดใหญ่ (Macos, Intellij CE 2018.3.4, ไฟล์. rs ที่มีอยู่)
cloudsurfin


0

หากต้องการขยายคำตอบของ @Dmitiri Algazin: การตั้งค่าสำหรับแต่ละภาษาจะถูกแทนที่โดยการตั้งค่าทั่วไป

Preferences -> Code Style -> Detect and use existing file indents for editing

ดังนั้นหากคุณสงสัยว่าเหตุใดการตั้งค่าใหม่ของคุณจึงถูกเพิกเฉยหลังจากเปลี่ยนการตั้งค่าสำหรับภาษาใดภาษาหนึ่งมีโอกาสที่จะทำเครื่องหมายในช่องนี้

เป็นหมายเหตุด้านข้าง; การเปลี่ยนการตั้งค่าเริ่มต้นใด ๆ โดยอัตโนมัติจะสร้างโคลนโปรไฟล์การตั้งค่าโดยอัตโนมัติ (เช่นDefault(1)) ซึ่งฉันคิดว่าอยู่ในสถานที่เพื่อไม่ให้การตั้งค่า IDE เริ่มต้นถูกเขียนทับ

ตอนแรกสับสนเล็กน้อยจริงๆไม่ว่าจะแก้ไขการDefaultตั้งค่าหรือProject Settingsจะมีผลกระทบใด ๆ กับโปรเจ็กต์ของคุณเนื่องจากคุณสามารถเลือกDefaultจากเมนูแบบเลื่อนลงแล้วแก้ไขจากที่นั่นได้

หากคุณไม่ต้องการเห็นโคลนแบบสุ่มของค่าเริ่มต้นในการเติมข้อมูลโปรไฟล์การตั้งค่าของคุณให้แก้ไขการตั้งค่าโครงการโดยตรง


0

สำหรับผู้ที่มีปัญหาในการเยื้อง phpstorm ที่นี่ผมมีเคล็ดลับและผมหวังว่าพวกเขาช่วยเหลือ ... แรกที่คุณต้องไปที่ไฟล์> ใส่คำอธิบายภาพที่นี่ตั้งค่า> keymap-> ที่เลือกใช้> ใส่คำอธิบายภาพที่นี่หน้าต่างถ้าพวกเขา อยู่บนเครื่อง windows หากคุณใช้ Mac และเลือก macOS

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