คำถามติดแท็ก indentation

นำหน้าบรรทัดด้วยช่องว่างเพื่อช่วยในการอ่าน

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

5
วิธีเพิ่มเส้น / แนวการเยื้อง
ใน Sublime Text 2 คุณจะได้รับคำแนะนำในแนวตั้งที่มีการเยื้องของคุณเช่นนี้: แต่ในกลุ่มฉันเห็นได้ชัดว่าไม่: มีวิธีการแสดงบรรทัดเช่นนี้ในกลุ่ม? โดยวิธีการเยื้องของฉันคือ 2 ช่องว่าง :set tabstop=2 softtabstop=2 shiftwidth=2 expandtab

7
เยื้องรหัสเยื้องที่ไม่ดีอีกครั้ง
ฉันชอบฟีเจอร์สมาร์ทเยื้องของ Vim ทำให้ฉันสามารถสร้างบล็อคโค้ดที่เยื้องเข้าไปได้ ฉันคัดลอก / วางรหัสลงในบัฟเฟอร์อย่างสม่ำเสมอ แต่รหัสนั้นมักมีรูปแบบไม่ดี สิ่งที่เหมาะสมที่สุดคือ "ประมวลผลซ้ำ" รหัสผ่านระบบสมาร์ท - เยื้อง เป็นไปได้ไหม ตัวอย่างเช่นคุณจะแก้ไขรหัสต่อไปนี้อย่างไร (แยกจากบล็อกขนาดใหญ่ - ฉันไม่ต้องการแก้ไขแต่ละบรรทัดด้วยตนเอง ... ): else { m[c] = 5; Finished = true; std::cout<<"(ID,R,E)"<<"-->"<<"("<<g[c]<<","<<r[c]<<","<<E1 <<")"<< std::endl; std::cout << "\n"<<"finish-->" << r[c] << "\t" <<"E1-->"<< E1 <<"\n" ; } }
39 indentation  ide 

2
ฉันจะทำให้ Vim ปรับให้เข้ากับลักษณะการเยื้องในปัจจุบันของไฟล์ที่ฉันแก้ไขได้อย่างไร
ฉันทำงานกับโปรเจ็กต์ JavaScript หลายประเภท ในโครงการส่วนใหญ่การเยื้องของไฟล์ JavaScript คือ 2 ช่องว่างดังนั้นฉันจึงตั้งค่าความกว้างของการเยื้องเป็นค่าเริ่มต้น อย่างไรก็ตามมันจะกลายเป็น 1 หรือ 4 ในบางโครงการอื่น ๆ มีวิธีให้ Vim เปลี่ยนสไตล์การเยื้องตามสไตล์ที่ใช้ไปแล้วในไฟล์ปัจจุบันหรือไม่?

1
อะไรคือความแตกต่างระหว่าง `filetype indent on` และ` filetype indent on`?
ฉันเห็นหนึ่งในสองบรรทัดนี้ใน.vimrcไฟล์ อันนี้ดูเหมือนจะเป็นเรื่องธรรมดาที่สุด: filetype plugin indent on แต่มันแตกต่างจากบรรทัดนี้อย่างไร: filetype indent on ฉันพบเอกสารสำหรับหลังแต่ฉันยังสับสนอยู่

1
อะไรคือความแตกต่างระหว่าง autoindent และ smartindent ใน vimrc?
ฉันอ่านรายการ wiki บนเยื้องซอร์สโค้ด vim ฉันยังไม่เข้าใจความแตกต่างระหว่างautoindentและsmartindent enterดูเหมือนว่าพวกเขาทำสิ่งเดียวกันคัดลอกระดับเยื้องไปยังบรรทัดถัดเมื่อคุณกด

4
ฉันจะเปลี่ยนการเยื้องเริ่มต้นตามประเภทไฟล์ได้อย่างไร
ฉันต้องการมีการเยื้องที่แตกต่างกันตามประเภทของไฟล์ที่ฉันกำลังทำงาน ตัวอย่างเช่นทำงานกับ.cไฟล์ที่ฉันต้องการเยื้องของฉันเป็น 4 ช่องว่าง ใน.htmlไฟล์ที่ฉันต้องการ (ต้อง) ทำงานกับแท็บ ฉันจะบรรลุสิ่งนั้นได้อย่างไร

8
ฉันจะย้ายในแนวตั้งจนกว่าจะถึงตัวละครที่ไม่ใช่ช่องว่างได้อย่างไร
ในไฟล์ที่ยาวมากซึ่งมีรหัส (ถูกต้อง -) การเยื้องอาจเป็นประโยชน์ในการเลื่อนไปยังบรรทัดข้อความด้านบนหรือด้านล่างเคอร์เซอร์โดยตรงเพื่อลดการเยื้อง (วิธีหนึ่งในการทำเช่นนี้อาจทำได้ผ่านการเยื้องของวิธีการเยื้องโดยการพับระดับการเยื้องในปัจจุบันซึ่งยุบบรรทัดเพื่อลดระดับการเยื้องเป็นเพียงหนึ่งjหรือkอยู่ห่างจากเคอร์เซอร์อย่างไรก็ตามฉันพบอินสแตนซ์ที่การเยื้องพับไม่ได้ สามารถทำงานในการเยื้องฉันสนใจ) นี่คือตัวอย่างโดยที่เคอร์เซอร์ทำเครื่องหมายขีดล่าง_(ที่คอลัมน์อักขระที่สองระหว่างคำจำกัดความของclass Bazzและclass Qux) แต่ลองจินตนาการว่าจำนวนย่อหน้าหรือบรรทัดภายในmodules ไม่เป็นที่รู้จักหรือตัวแปร: module Foo # lots of code... end module Bar class Baz # ... end class Bazz # lots of code... end _ class Qux # ... end class Quux # lots of code... end end ... วิธีสามารถฉันได้อย่างรวดเร็วไปที่oการmodule Barดังกล่าวข้างต้นเคอร์เซอร์หรือnของendด้านล่างเคอร์เซอร์ที่บรรทัดสุดท้ายมาก? โปรดทราบว่าคอลัมน์แนวตั้งมีช่องว่าง …

2
จะเยื้องเป็นช่องว่างแทนแท็บได้อย่างไร
ฉันกำลังเขียนเทมเพลต html บางไฟล์ในไฟล์ JADE ฉันต้องการโค้ดเยื้องอัตโนมัติพร้อมช่องว่างแทนแท็บ ฉันพยายามshiftwidth=2, tabstop=2แต่ไม่ว่าสิ่งที่ก็ยังคงเยื้องโดยใช้แท็บแทนสเปซบาร์ซึ่งเป็นสาเหตุรวบรวมหยกที่จะโยนความผิดพลาด ฉันจะเยื้องส่วนใหญ่ของรหัสโดยอัตโนมัติโดยใช้ช่องว่างแทนแท็บได้อย่างไร

4
ฉันจะเปลี่ยนขนาดของการเยื้องได้อย่างไร
ฉันเพิ่งค้นพบว่าฉันสามารถเยื้องและไม่เยื้องได้อย่างง่ายดายใน Vi ด้วย: <<และ>> โดยค่าเริ่มต้นจะเพิ่มtabตัวละคร ตอนนี้ฉันสงสัยว่านี่จะเป็นช่องว่างจำนวนหนึ่งผ่านการกำหนดค่าในของฉัน.vimrcหรือไม่ และฉันควรทำอย่างไร?

3
คุณเยื้องอย่างไร> <โดยไม่ออกจากโหมดภาพและสูญเสียการเลือกปัจจุบันของคุณ?
ฉันมักจะต้องเยื้องด้วยตนเอง แต่เมื่อฉันเข้าสู่โหมดภาพให้เลือกบรรทัดของฉันเพื่อเยื้องและกด&lt;หรือ&gt;ฉันออกจากโหมดภาพไม่ว่าฉันต้องการหรือไม่ ฉันอยากได้มันดังนั้นฉันจึงยังคงอยู่ในโหมดภาพและรักษาตัวเลือกและตำแหน่งเคอร์เซอร์ไว้เหมือนเดิม ฉันจะบรรลุสิ่งนี้ได้อย่างไร

3
ฉันจะเยื้องบรรทัดใหม่โดยอัตโนมัติได้อย่างไร
ฉันทำงานในโครงการที่มีระดับการเยื้องต่างกัน ในหลายโครงการเหล่านี้เนื่องจากวิธีการจัดโครงสร้างไฟล์โดยทั่วไปบรรทัดส่วนใหญ่จะถูกเยื้องอย่างน้อยสองระดับ (เช่นวิธีการในไฟล์ Java) นี่หมายความว่าการสร้างบรรทัดใหม่เมื่ออยู่บนบรรทัด public void something () { จะนำเคอร์เซอร์ของฉันไปที่บรรทัดถัดไปเยื้องโดยอัตโนมัติเช่น public void something () { [cursor] ในขณะที่ฉันสามารถกดปุ่มแท็บสองสามครั้งในบรรทัดใหม่เพื่อให้เข้าแถวได้มีวิธีที่ดีกว่าในการทำสิ่งนี้ (เป็นไปได้โดยอัตโนมัติ) หรือไม่
15 indentation  ide 

1
วิธีการเลื่อนเคอร์เซอร์ไปยังระดับการเยื้องที่ถูกต้องโดยไม่ต้องออกจากโหมดแทรก?
ตัวอย่างเช่นฉันมีรหัส JavaScript นี้ |ตัวละครที่แสดงให้เห็นถึงตำแหน่งของเคอร์เซอร์และมันอยู่ในสายที่ว่างเปล่า function a() { console.log("a"); function b() { console.log("b"); function c() { console.log("c"); } | c(); } b(); } หลังจากการดำเนินการที่ร้องขอเนื้อหาจะมีลักษณะเช่นนี้: function a() { console.log("a"); function b() { console.log("b"); function c() { console.log("c"); } | c(); } b(); } สิ่งที่ฉันขอคือคำสั่งการแมป ขอบคุณมาก! :-)

1
ปัญหาการเยื้องของ gq ไม่ได้อธิบาย
ฉันแทรกข้อความนี้เป็นกลุ่ม: t tttt ttttttttt tt tttt tt ttt tttttt-tttt-ttttttt tttttttttttttttttttttttttttttttttttttttttttttttttttttt ttttt ttt ttt tttttt ttttttt tttt ttttttt: ttttttt tt ttttttt, ttttttt tt tttttt, tttttt tt ttttttt, tttttt tt tttttt ttt. t tttttt tt ttt (tttt) ttttttt-tttttt-tt-ttttttt tttttt for the "tttttt in ttttttt" part of the issue (in the previous week …

1
ฉันจะเลื่อนบรรทัดเยื้องไปเป็นค่าเฉพาะได้อย่างไร
หลายครั้งที่ฉันพบกับสถานการณ์ที่บรรทัดไม่เยื้องอย่างเหมาะสม อีเธอร์ผ่านปลั๊กอินการเยื้องที่ไม่ดี / ไม่ต้องการหรือส่วนใหญ่มักจะเว้นวรรคเพื่อชดเชยค่าเยื้อง ฉันมักจะแก้ไขปัญหานี้โดย&lt;&lt;หรือ&gt;&gt;บรรทัดสองสามครั้งเพื่อแก้ไข ในกรณีที่มีช่องว่างเพิ่มเติมฉันจะทำหนึ่ง100&lt;&lt;ระดับ&gt;&gt;สำหรับแต่ละย่อหน้าที่ฉันต้องการ คำถามคือเช่นการ|เคลื่อนไหวที่ช่วยให้คุณกำหนดคอลัมน์ตามจำนวน10|ส่งเคอร์เซอร์ไปที่คอลัมน์ที่ 10 ฉันจะระบุระดับการเยื้องได้อย่างไร ตัวอย่าง (สิ่งนี้ใช้ไม่ได้) กับshiftwidth=4 expandtab: The quick (indent level 0) ••••Brown Fox (indent level 1) ••••••••••Jumped over the lazy dog (indent level 2 with two extra spaces) ในกรณีนี้ฉันต้องนับระดับเยื้องของบรรทัดสุดท้าย (2) และเพิ่มหนึ่งรายการสำหรับช่องว่างเพิ่มเติมจากนั้นพิมพ์3&lt;&lt;แล้วนับระดับเยื้องของสิ่งที่ฉันแล้ว1&gt;&gt;(หรือใช้autoindentและ==คำสั่ง) ฉันขอให้บางสิ่งบางอย่างเช่น1==บังคับให้เยื้องเป็นเยื้องระดับ 1 หรือในบางกรณี0==เพื่อลบการเยื้องออกด้วยกัน ฉันรู้ว่าตัวอย่างข้างต้นทำการเยื้องอัตโนมัติใน 1 หรือ 0 บรรทัด (ตามลำดับ) และไม่ทำสิ่งที่ฉันต้องการ แต่หวังว่ามันจะช่วยอธิบายคำถามได้ดีขึ้น

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