แปลงแท็บเป็นช่องว่างใน Notepad ++


1076

ฉันจะแปลงแท็บเป็นช่องว่างใน Notepad ++ ได้อย่างไร

ฉันพบหน้าเว็บที่แนะนำว่าเป็นไปได้ แต่ฉันไม่พบข้อมูลเกี่ยวกับวิธีการทำ

ฉันต้องการที่จะทำเช่นนั้นเพราะบางเว็บฟอร์มไม่เคารพรหัสที่มีแท็บในพวกเขา


4
Tab เยื้อง = 1x ตัวอักษรเว้นวรรคเยื้อง = มากกว่า 3x ตัว
Yousha Aleayoub

SciTE ทำสิ่งนี้ได้อย่างง่ายดาย น่าเสียดายที่มันไม่ได้ขยายรวมถึง Notepad ++
bvj

1
ฉันดูเหมือนจะได้เข้าสู่แดนสนธยา แผ่นจดบันทึกของฉัน ++ มีระยะห่างสามเท่าของแต่ละแท็บเสมอและไม่มีสิ่งใดที่ฉันได้อัปเดตใน IDE เปลี่ยนพฤติกรรม ฉันใช้มันมาหลายปีแล้วและไม่เคยเจอปัญหานี้มาก่อน o_o แม้การให้คะแนนแบบดาวน์ไม่ได้เป็นการลบปัญหา ดังนั้น ฉันเรียกมันว่า ฟีเจอร์ Twilight Zone
kayleeFrye_onDeck

@YoushaAleayoub 1 ช่องว่าง = 1 ช่องว่าง 1 แท็บ = ต่างกันสำหรับทุกคน
csabinho

3
@csabinho นั่นคือประเด็น เพื่อให้ทุกคนสามารถปรับแต่งและตั้งเป็นขนาดของตัวเอง #Freedom :)
Yousha Aleayoub

คำตอบ:


986

Edit->Blank Operations->TAB to Spaceการแปลงแท็บที่มีอยู่เพื่อการเว้นวรรคกด

หากในอนาคตคุณต้องการป้อนช่องว่างแทนแท็บเมื่อคุณกดปุ่มแท็บ:

  1. ไปที่Settings->Preferences...->Language(ตั้งแต่รุ่น 7.1) หรือSettings->Preferences...->Tab Settings(รุ่นก่อนหน้า)
  2. ตรวจสอบ Replace by space
  3. ( ไม่บังคับ ) คุณสามารถกำหนดจำนวนช่องว่างที่จะใช้แทน Tab โดยเปลี่ยนTab sizeฟิลด์

สกรีนช็อตของแทนที่ด้วยช่องว่าง


29
@Algina - คุณสามารถเปลี่ยนการตั้งค่าสำหรับ Notepad ++ เพื่อแปลงแท็บเป็นช่องว่างโดยอัตโนมัติ - เพียงไปที่: การตั้งค่า - การตั้งค่า - การตั้งค่าแท็บ - ทำเครื่องหมายที่ช่อง "แทนที่ด้วยพื้นที่" - เช่น mrzli ที่อธิบายไว้แล้วในคำตอบนี้
สี

3
สิ่งนี้ได้รับผลกระทบจากขนาดแท็บที่กำหนดใน "การตั้งค่า" - "การตั้งค่า" - "การตั้งค่าแท็บ" - "ขนาดแท็บ" ตามธรรมชาติ
caw

6
ฉันแค่ต้องการเพิ่มว่าเส้นทางสำหรับฉันคือ: Settings=> Language Menu/Tab Settings=> Replace by space(ที่มุมล่างขวา) มันเกือบจะเป็น mrzli พูด แต่ฉันมีเวลาสังเกตเห็นมันTab Settingsยาก (ฉันรู้ว่าฉันตาบอด!)
Dzyann

11
ไม่มีการตั้งค่า -> การตั้งค่า ... -> การตั้งค่าแท็บใน Notepad ++ v7.1 ตอนนี้อยู่ภายใต้การตั้งค่า -> การตั้งค่า -> ภาษา
เดฟเบอร์ตัน

3
ฉันใช้ v7.2.2 Edit -> Blank Operations -> Tab to Spaceและฉันสามารถเปลี่ยนแท็บไปที่ช่องว่างการใช้ นอกจากนี้ยังมีอยู่ในขณะนี้Tab Settings Edit -> Preferences -> Languageแม้ว่าฉันจะไม่เข้าใจในสิ่งที่Tab Settingsทำ ฉันทำReplace by spaceเครื่องหมายที่ช่องjavascriptแล้ว แต่ยังคงได้รับแท็บเมื่อฉันกดแป้นแท็บ ไม่ควรพิมพ์ 4 ช่องว่างแทน?
akinuri

585

เลิกใช้: คำตอบนี้ถูกต้องสำหรับ Notepad ++ รุ่นเก่ากว่าเท่านั้น ตอนนี้การสร้างแท็บ / ช่องว่างระหว่างแท็บ / ช่องว่างกับ Notepad ++ และปลั๊กอิน TextFX ไม่สามารถใช้ได้ในกล่องโต้ตอบตัวจัดการปลั๊กอิน

  • ชุดแรก"แทนที่ด้วยช่องว่าง"Preferences -> Language Menu/Tab Settingsการตั้งค่าใน
  • จากนั้นเปิดเอกสารที่คุณต้องการแทนที่แท็บด้วย
  • เน้นข้อความทั้งหมด ( CTRL+ A)
  • TextFX -> TextFX Edit -> Leading spaces to tabs or tabs to spacesจากนั้นเลือก

หมายเหตุ:ตรวจสอบให้แน่ใจตัวละคร TextFXปลั๊กอินมีการติดตั้ง ( Plugins -> Plugin manager -> Show plugin manager, Installedแท็บ) มิฉะนั้นจะไม่มีเมนู TextFX


1
ใช่มันฉลาดกว่าการค้นหา / แทนที่และ TextFX นั้นติดตั้งไว้ใน Notepad ++ ในตัว
rjh

130
เป็นคุณสมบัติที่มีชื่อไม่ดีในเมนูที่วางไว้ไม่ดี
spoulson

14
คำตอบที่ดีที่สุดสำหรับคำถาม (อาจไม่เหมือนที่ผู้เขียนต้องการ) คือแท็บไปยังปลั๊กอินของช่องว่างที่เสนอด้านล่าง คำถามจะถามแท็บทั้งหมดเป็นช่องว่างในขณะที่คำตอบนี้จะแปลงเฉพาะช่องว่างนำหน้า ตัวอย่างเช่นหากคุณจำเป็นต้องแปลงข้อมูลตารางเว้นระยะด้วยแท็บในขณะที่รักษาตำแหน่งคอลัมน์คำตอบนี้จะไม่ช่วยคุณ ปลั๊กอินเป็นทางออก Notepad ++ เดียวสำหรับคำถามที่ฉันสามารถดูได้ที่นี่
Bile Phile

4
ฉันต้องเข้าไปที่ตัวจัดการปลั๊กอินและติดตั้งปลั๊กอิน TextFX แต่หลังจากที่ฉันได้คำแนะนำที่เหลือแล้วก็ใช้ได้
Rebecca Chernoff

12
คำตอบที่ดูเหมือนจะผิด ในฐานะที่เป็น Bile Phile บ่งชี้ว่ามันเพียงแปลงแท็บนำ ในรุ่นที่ใหม่กว่านั้นยังมีตัวเลือกแก้ไข -> การดำเนินการว่างเปล่า -> TAB สู่อวกาศ แต่ไม่สามารถทำงานได้ตามที่ร้องขอ เท่าที่ฉันเห็นมันไม่มีวิธีใน NP ++ ในขณะนี้ ยังไม่ได้ลองปลั๊กอิน Binary Phile กล่าวถึง
Stijn de Witt

228

การตั้ง->ค่า->แก้ไของค์ประกอบ (แท็บ) ->การตั้งค่าแท็บ (กลุ่ม) ->แทนที่ด้วยช่องว่าง

ในรุ่น 5.6.8 (และสูงกว่า):

การตั้งค่าที่->ต้องการ ... ->เมนูภาษา / การตั้งค่า->แท็บการตั้งค่าแท็บ (กลุ่ม) ->แทนที่ด้วยช่องว่าง


ขอบคุณสำหรับการตอบกลับ. ฉันหวังว่าจะมีวิธีที่จะนำไปใช้กับบล็อกข้อความที่เน้นสี ฉันชอบทำงานกับแท็บ ฉันแค่ต้องการที่จะเปลี่ยนเป็นช่องว่างก่อนที่จะวางรหัสลงในแบบฟอร์ม
ช่วย

3
ในขณะที่คำตอบของ Dror นั้นเป็นคำตอบที่แน่นอน แต่ก็มีประโยชน์เช่นกันที่จะรู้ว่าสำหรับการใช้งานอื่น
Marc Bollinger

ไม่ใช่คำตอบของคำถาม แต่เป็นคำตอบที่ฉันต้องการ ไชโยอารอน
BrezzaP

ว้าว! ข่าวลือมากมายเกี่ยวกับงานง่าย ๆ (ดูเหมือน) แทนที่ด้วย \ t และสวิตช์ขยายทำงานได้ดีสำหรับฉัน
waanders

3
เวอร์ชัน 5.9.3 มี Edit-> Blank Operations-> TAB to Space ดูคำตอบโดย mrzli
koppor

148

คุณต้องเปลี่ยน\t - ให้แน่ใจว่าคุณใช้โหมดขยาย!

แทนที่


22
เพียงเพื่อเน้นคุณต้องใส่ช่องว่างสี่ (หรือสองหรืออะไรก็ได้) ในช่อง "แทนที่ด้วย"
hasen

1
คุณสามารถแทนที่ \ t (แท็บ) ไปยังหมายเลขของช่องว่างใด ๆ ให้ดูwiki.answers.com/Q/How_many_spaces_is_a_tab
Dror

7
สิ่งนี้จะทำงานได้อย่างถูกต้องสำหรับแท็บที่จุดเริ่มต้นของบรรทัด เช่นในบรรทัดเช่นนี้ (ใช้ [แท็บ] เพื่อเป็นตัวแทนแท็บ): "[แท็บ] foo [แท็บ] บาร์" ที่มีขนาดแท็บ 4 ช่องว่างแท็บแรกควรเป็น 4 ช่องว่าง แต่แท็บที่สองควรจะเป็น เพียง 1 ช่องว่าง
Mercator

4
@DaveE ไม่กรณีของ mercator เป็นกรณีสากลของการทำงานของ TAB แม้ว่าจะถูกกล่าวถึงในความคิดเห็นและไม่ได้อยู่ในคำถามเดิมสิ่งที่ OP ต้องการเป็นหลักคือการสลับ transaperent จากแท็บไปสู่ช่องว่างนั่นคือเขาไม่ควรรู้โดยดูจากการแปลงที่ทำเสร็จแล้ว เมื่อนำข้อความที่เลือกและขยายไปยังจุดเริ่มต้นของบรรทัดหนึ่งสามารถใช้การคำนวณและทำสิ่งที่ Mercator บอกเป็นนัย มันขึ้นอยู่กับข้อความที่ขยายเป็นขีด จำกัด บรรทัดเท่านั้น ดังนั้นไม่จำเป็นต้องตัดสินใจเป็นกรณีไป มันเป็นสิ่งที่คำสั่งขยายใน UNIX ทำ
Paralife

2
คำตอบอื่น ๆ อาจตอบคำถามเฉพาะ แต่ฉันคิดว่าคำตอบนี้ดีที่สุดเพราะจะตอบวิธีแทนที่แท็บด้วยสิ่งใดไม่ใช่ช่องว่าง
Kik

84

ทำตามขั้นตอนนี้เพื่อแปลงช่องว่างเป็นแท็บหรือกลับกัน:

ช่องว่าง - แท็บ


1
มีใน Notepad ++ v6.3.2 และรุ่นก่อนหน้าหลายรุ่น
AdrianHHH

สำหรับเวอร์ชัน 7.5.4 สิ่งนี้ได้ผลดีสำหรับฉันรับตัวอักษรแท็บทั้งหมด (ไม่ใช่แค่นำ) โดยไม่มีการติดตั้งปลั๊กอินเพิ่มเติม
J. Paulding

มีปุ่มทางลัดใด ๆ ที่จะทำเช่นเดียวกัน ?
Akshat Chaturvedi

26

ฉันเพิ่งโพสต์ปลั๊กอิน Notepad ++เพื่อแปลงแท็บเป็นช่องว่าง ใช่มันจะแปลงแท็บที่อยู่ตรงกลางของบรรทัด ใช่มันคำนึงถึงตัวละครอื่น ๆ ภายในเขตแท็บ ลองดูสิ


1
จะเกิดอะไรขึ้นถ้าฉันมีสตริงที่ฉันต้องการกำหนดด้วย Tab ในมัน? มันจะเปลี่ยนซอร์สโค้ดและตัวอักษรของสตริงด้วยหรือไม่
maxwellb

ใช้งานได้อย่างมีเสน่ห์สำหรับแท็บไปยังที่ว่าง นั่นคือทั้งหมดที่มันทำ
Bile Phile

ขอบคุณนี่เยี่ยมมาก จริงๆแล้วมันเป็นคำตอบที่แท้จริงสำหรับคำถามที่ครอบคลุมทุกสถานการณ์ - แท็บนำหรือแท็บที่ฝังอยู่และการระบุตำแหน่งในข้อความและความกว้างของแท็บที่เหมาะสมเพื่อประกอบการพิจารณา
RenniePet

นี่ควรเป็นคำตอบสำหรับคำถามนี้โดยเฉพาะอย่างยิ่งตอนนี้ TextFX ไม่ได้อยู่ในการติดตั้งเริ่มต้นของ Notepad ++ ปลั๊กอินทำงานได้อย่างไม่มีที่ติ ขอบคุณ!
บราวน์

2
เวอร์ชัน 5.9.3 มี Edit-> Blank Operations-> TAB to Space ดูคำตอบโดย mrzli
koppor

10

วิธีง่าย ๆ :

  1. ไฮไลต์พื้นที่แท็บเดียว
  2. สำเนา
  3. นำค้นหา / แทนที่
  4. วางในช่องค้นหา
  5. คลิกที่ช่องแทนที่และกดแป้นเว้นวรรค
  6. จากนั้นแทนที่ทั้งหมด

2
เป็นวิธีขี้เกียจซึ่งโดยทั่วไปจะเป็น MO ของฉัน:]
ด้าน lohkamp

3
นี่เป็นวิธี Notepad (ไม่ใช่ ++) ในการทำสิ่งต่าง ๆ เช่นกัน
maxwellb

ใน Notepad ++ 6.5.5 ลองใช้ TABS (จากเครื่องหมายจุลภาค) นี่เป็นวิธีการเดียวที่ใช้ได้ผลสำหรับฉัน: พิมพ์tabเลือกcopyและมันจะถูกวางลงในช่องแทนที่ (การวาง/tในReplace withกล่องไม่ทำงานไม่ว่าฉันจะเลือกExtendedหรือRegular Expressionไม่ก็ตาม)
Doug_Ivison

5
@Doug_Ivison นั่นเป็นเพราะ/tไม่ใช่ลำดับการหลบหนี มันเป็นเครื่องหมายทับและตัวอักษร t \tหากคุณต้องการที่จะเปลี่ยนแท็บการใช้งาน Extended (\n, \r, \t, \0, \x...)ด้วยเหตุนี้
Dan Bechard

@ แดนคุณพูดถูก ... ขอบคุณ การคัดลอก / วางทำงานและ\tทำงาน
Doug_Ivison

7

ในรุ่น 5.8.7:

เมนูการตั้งค่า -> Preferences ... -> เมนูภาษา / การตั้งค่าแท็บ -> การตั้งค่าแท็บ (คุณอาจเลือกภาษามากที่จะเปลี่ยนแท็บไปที่ช่องว่างมันเย็น.!) -> ยกเลิกการเลือกใช้ค่าเริ่มต้นและตรวจสอบแทนที่ด้วยช่องว่าง

สกรีนช็อตของไดอะล็อกกำหนดลักษณะ


"ภาษาที่ใช้แทนแท็บ" มีความหมายอย่างไร
Peter Mortensen

สิ่งนี้เปลี่ยนไปอีกครั้งในเวอร์ชัน 7.1 (2016-10-16) (จาก"การตั้งค่าเมนูภาษา / แท็บ"เป็น"ภาษา" )
Peter Mortensen

7

ฉันไม่ได้อ่านคำตอบทั้งหมด แต่ไม่พบคำตอบที่ต้องการ

ฉันใช้Pythonและไม่ต้องการค้นหา / แทนที่หรือ 'การดำเนินการว่าง' ในแต่ละครั้งที่ฉันต้องการคอมไพล์โค้ด ...

ทางออกที่ดีที่สุดสำหรับฉันก็คือมันเกิดขึ้นได้ทันที !

นี่เป็นวิธีง่ายๆที่ฉันพบ :

ไปที่:

  1. การตั้งค่าเมนู -> การตั้งค่า
  2. เลือกการตั้งค่าแท็บ
  3. เลือกประเภทภาษาของคุณ (เช่น Python)
  4. เลือกช่องทำเครื่องหมาย 'ใช้ค่าเริ่มต้น'
  5. เลือกช่องทำเครื่องหมาย 'แทนที่ด้วยช่องว่าง'

ป้อนคำอธิบายภาพที่นี่


สิ่งนี้เปลี่ยนไปอีกครั้งในเวอร์ชั่น 7.1 (2016-10-16) (จาก"เมนูภาษา / การตั้งค่าแท็บ"เป็น"ภาษา" (และเป็น"การตั้งค่าแท็บ"ในเวอร์ชันที่เก่ากว่า (เช่นในคำตอบนี้)))
Peter Mortensen

3

ไม่มีแท็บ 'แก้ไขคอมโพเนนต์' ในการตั้งค่าการตั้งค่า คุณต้องไป 'การตั้งค่าเมนูภาษา / แท็บ' มีตัวเลือกในการควบคุมพฤติกรรมแท็บ คุณสามารถตั้งให้มันทำงานแตกต่างกันไปขึ้นอยู่กับภาษาของไฟล์


และหลังจากตั้งค่าแล้วให้ใช้ TextFX (TextFX -> TextFX Edit -> นำช่องว่างไปยังแท็บหรือแท็บไปยังช่องว่าง)ดังที่อธิบายไว้ก่อนหน้า นี่เป็นวิธีที่จะไปในเวอร์ชันล่าสุดของ Npp
Cees Meijer

สิ่งนี้เปลี่ยนไปอีกครั้งในเวอร์ชั่น 7.1 (2016-10-16) (จาก"การตั้งค่าเมนูภาษา / แท็บ"เป็น"ภาษา" )
Peter Mortensen

2

ปลั๊กอินCLR Tabs to Spaces น่าจะเป็นตัวเลือกที่ดี ฉันใช้มันและใช้งานได้


ชัยชนะไร้ที่ติ! ไฮไลต์ข้อความปลั๊กอิน> CLR แท็บไปที่ช่องว่าง> แท็บไปยังช่องว่าง ปลั๊กอินนี้คำนึงถึงจำนวนช่องว่างที่จำเป็นสำหรับแท็บเช่นเอาต์พุตที่เว้นระยะของคุณจะมีลักษณะเหมือนกับแท็บเอาท์พุต
sonjz

2

ฉันทำตามวิธีง่าย ๆ นี้:

  • ดับเบิลคลิก (เน้น) แท็บเดียว (เช่น: \ t )
  • กดctrl + F( Find/repace)
  • คุณอาจไม่เห็น\ tหรือพื้นที่แท็บเดียวบนFind What:สนาม แต่ไม่ต้องกังวล
  • ป้อนฟิลด์spaceในReplace With:
  • Replce Allคลิก

ทำ! :)

ดู:

แทนที่ * Tab * by * Space * ใน <code> Notepad ++ </code>

หมายเหตุ: วิธีการนี้ใช้กับกรณีย้อนกลับ (แทนที่ช่องว่างด้วยแท็บ ) ด้วย


หากคุณเลือก "ขยาย" จากโหมดค้นหาคุณสามารถป้อน \ t และมันจะค้นหาแท็บด้วย ปัญหาเกี่ยวกับการแก้ปัญหานี้คือมันไม่ได้ปรับระยะห่างสำหรับแท็บนั่นคือถ้าแท็บมีสูงสุด 5 ช่องว่างข้อความของคุณก่อนที่แท็บอาจเป็น 1-4 ช่องว่าง ...
sonjz

1
ไม่ทราบว่าเพราะเหตุใดคำตอบนี้จึงถูกลดระดับลง แต่สำหรับฉันมันอาจจะดีที่สุดเพราะมันเป็นดังต่อไปนี้: KISS เห็นได้ชัดว่ามันจะไม่ครอบคลุมกรณีมุมทั้งหมดและการกำหนดค่ามากมายที่ปลั๊กอินจะนำมา แต่แล้วอีกครั้งต้องพึ่งพาปลั๊กอินสำหรับบางสิ่งบางอย่างที่เรียบง่ายมันบ้าไปแล้วสำหรับกรณีทั่วไป จูบไปตลอดทาง
luis.espinal


1

การตั้งค่า> การตั้งค่า> การตั้งค่าแท็บตรวจสอบ "แทนที่ด้วยช่องว่าง" แจ้งให้ทราบข้างต้นมันมีขนาดแท็บ: 4 คลิกที่สี่และหน้าต่างจะเปิดพร้อมตัวเลือกในการเปลี่ยนค่าเป็นจำนวนเต็มอื่น

ใส่จำนวนเต็มที่คุณต้องการแล้วกดปุ่ม ENTER

คุณมีมัน <3


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