คำถามติดแท็ก tab-characters

6
แสดงแท็บเป็นอักขระ
เมื่อฉันทำงานกับไฟล์ในไพ ธ อนบางครั้งฉันก็ผิดแท็บสำหรับช่องว่างและในทางกลับกัน มีวิธีที่ฉันสามารถให้ Vim แสดงตัวอักษรสำหรับแท็บแทนที่จะเป็นแท็บได้หรือไม่?

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

2
แท็บยืดหยุ่นในกลุ่มเป็นกลุ่ม?
มีปลั๊กอินหรือคุณสมบัติในตัวใน Vim ที่อนุญาตให้ใช้แท็บยืดหยุ่นได้หรือไม่? ฉันค้นหาเล็กน้อยและพบการอ้างอิงบางส่วนบอกว่ามันเป็นไปไม่ได้ใน Vim แต่มันค่อนข้างเก่า มีวิธีที่จะมีแถบยืดหยุ่นใน Vim หรือไม่? ฉันสบายดีด้วยวิธีแก้ปัญหาสำหรับ Neovim เช่นเดียวกับที่ฉันใช้อยู่ดี

3
`softtabstop` ใช้ทำอะไร?
ฉันรับทราบถึงการตั้งค่าที่เกี่ยวข้องกับแท็บเหล่านี้ใน Vim: ts sw expandtab smarttab sts set ts=4 sw=4 expandtab smarttabตั้งค่าปกติของฉันคือ แต่ตามstsเอกสารถ้าexpandtabไม่ได้ตั้งค่ามันจะพยายามใช้การรวมกันของช่องว่างและแท็บเพื่อชดเชยจำนวนช่องว่างที่ต้องการสำหรับขนาดแท็บ ฉันไม่สามารถนึกถึงสถานการณ์ที่เป็นประโยชน์สำหรับการตั้งค่านี้ได้: ทำไมบางคนต้องการมีแท็บและช่องว่างจำนวนคงที่ซึ่งอาจทำให้เกิดความวุ่นวายขึ้น ข้อดีอย่างเดียวของการทำสิ่งนี้ที่ฉันคิดได้ก็คือลดจำนวนตัวอักษรและทำให้ขนาดไฟล์ลดลงซึ่งดูแปลกสำหรับฉัน

2
ฉันจะทำให้ Vim วางเคอร์เซอร์ไว้ที่จุดเริ่มต้นของอักขระแท็บแทนที่จะสิ้นสุดได้อย่างไร
เปิดบัฟเฟอร์ที่ว่างเปล่าและแทรกอักขระแท็บจากนั้นออกจากโหมดปกติ เมื่อคุณวางเคอร์เซอร์ (โหมดปกติ) บนแท็บแถบนั้นจะอยู่ทางด้านขวาของช่องว่าง ฉันกำลังมองหาวิธีดังนั้นเคอร์เซอร์จะอยู่ทางด้านซ้ายของช่องว่างแทน ขอบคุณ!

1
การตั้งค่า TAB เป็น 2 ช่องว่าง
ฉันได้ดูคำตอบต่าง ๆ ซึ่งบ่งบอกว่าการตั้งค่าต่อไปนี้ใน. vimrc น่าจะเหมาะสมที่จะบังคับให้การแทรกแท็บกลายเป็นช่องว่าง filetype plugin indent on " On pressing tab, insert 2 spaces set expandtab " show existing tab with 2 spaces width set tabstop=2 set softtabstop=2 " when indenting with '>', use 2 spaces width set shiftwidth=2 อย่างไรก็ตามเมื่อฉันพยายามใช้ 2 ช่องว่างมันจะยังคงมีค่าเริ่มต้นเป็น 4 ช่องว่างต่อแท็บ ฉันได้ลองย้ายset expandtabไปที่ด้านล่างของการประกาศเหล่านี้ ฉันได้ลองลบsofttabstopคำแถลงนี้ ฉันได้กำจัดคำตอบต่าง …

3
แท็บสำหรับการเยื้อง, ช่องว่างสำหรับการจัดตำแหน่ง
ฉันพยายามทำให้เยื้องเป็นกลุ่มโดยอัตโนมัติด้วยแท็บและจัดแนวกับช่องว่าง แต่จริงๆแล้วเยื้องกลุ่มกับแท็บและเติมการจัดตำแหน่งด้วยแท็บ + ช่องว่างสีขาว เป็นกลุ่มมัน: (แต่ละบล็อกเป็นแท็บ) { >--long a = 1, >-->--..b = 2, >-->--..c = 3; } อาจทำได้: { >--long a = 1, >--.....b = 2, >--.....c = 3; } ดังนั้นฉันคิดว่ามีคำถามมากมายเกี่ยวกับหัวเรื่องของแท็บและช่องว่าง แต่ไม่มีคำถามใดเลยที่ให้โซลูชัน Just Works: /programming/8493705/vim-use-tabs-for-indentation-spaces-for-alignment-with-c-source-files /programming/29208431/vim-indent-with-tabs-align-with-spaces /programming/6504507/vim-indenting-and-alignment-combining-spaces-and-tabs ที่จริงฉันกำลังใช้: set ai set cindent set cinoptions=(0,:0,u0,U0,g0) ฉันลองปลั๊กอินSmart Tabซึ่งดูเหมือนว่าจะทำงานได้ดี แต่เมื่อฉันลองgg=Gฉันจะได้รับข้อผิดพลาดแปลก ๆ Error …

2
แสดงแถบรายการ listchars เป็นช่องว่าง
ฉันใช้listและlistcharsเพื่อแสดงช่องว่างของฉัน แต่สไตล์ของโค้ดที่ฉันใช้ติดแท็บ การดู>หรือ^Iแท็บทั้งหมดของฉันกำลังดูน่ารำคาญ ฉันจะเก็บอักขระรายการที่มีอยู่ทั้งหมดของฉันได้อย่างไร แต่ใช้อักขระแท็บว่างเปล่า

2
แทรกแท็บในโหมด INSERT เมื่อตั้งค่า expandtab
ฉันได้ตั้งค่าexpandtabใน.vimrcไฟล์ของฉันให้แปลงtabเป็นหลายspaceอักขระ อย่างไรก็ตามบางไฟล์ (เช่น Makefile) จำเป็นต้องมีtabอักขระจริง มีวิธีง่าย ๆ ในการบังคับให้แทรกเมื่อtabฉันพิมพ์หรือไม่?
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.