vi / vim ทางเลือกของ“ ขยายส่วนที่เลือกไปยังขอบเขต” ของ sublimetext


13

ข้อความประเสริฐมีคุณสมบัติเยี่ยมที่เรียกว่า " ขยายการเลือกไปยังขอบเขต " SHIFT + CMD + SPACEซึ่งเลือกทุกอย่างภายในขอบเขต

มันเลือกทุกอย่างที่อยู่ในขอบเขตใช้งานได้อย่างสมบูรณ์แบบ () หรือ [] หรือ {} การทำซ้ำมันจะขยายขอบเขตไปสู่การปกครอง

ฉันกำลังมองหาเพื่อให้บรรลุเดียวกันกับกลุ่ม

คำตอบ:


22

หากคุณหมายถึงvimคุณสามารถทำได้ด้วยโหมดภาพ ( :help visual-mode) และวัตถุข้อความ ( :help text-objects)

ในการเลือกบล็อกผมหยิกยันทำ: v+ a+ {เพื่อเลือกล้อมรอบบล็อกซ้ำ+a {โปรดทราบว่าคุณสามารถเลือกที่จะเลือกเฉพาะเนื้อหาของการจัดฟันโดยใช้แทนia

คำสั่งเหล่านี้เช่นเดียวกับคนอื่น ๆ ในกลุ่มถูกสร้างขึ้นโดยการดำเนินการตามด้วย text-object ซึ่ง text-object สามารถถูกเติมด้วยตัวเลขเพื่อรวมวัตถุอื่น ๆ ที่ได้รับผลกระทบจากการกระทำ ดังนั้นคุณสามารถลบวัตถุโดยแทนที่vด้วยdหรือแก้ไขด้วยcฯลฯ

มีวัตถุข้อความสำหรับจำนวนมากของสิ่งอื่น ๆ นอกเหนือจากที่มี(), {}และ[]เช่น:

  • a+ wหมายถึงคำ
  • a+ sหมายถึงประโยค
  • a+ pหมายถึงย่อหน้า
  • a+ <หมายถึง<>บล็อก
  • a+ 'หมายถึงสตริงที่มีเครื่องหมายคำพูดเดี่ยว
  • a+ "หมายถึงสตริงที่มีเครื่องหมายคำพูดคู่

คุณอาจสนใจปลั๊กอินเสริมเสียงรอบทิศทางซึ่งช่วยให้คุณสามารถเพิ่ม / แทนที่ / ลบอักขระโดยรอบหรือแม้กระทั่งแท็ก


ใช่ฉันหมายถึงกลุ่ม ขอบคุณ. มีวิธีที่จะขยายมันอย่างต่อเนื่องเช่น[[[event touchesForView: button] anyObject]ถ้าเคอร์เซอร์อยู่ใกล้กับtouchesForViewการกระทำv+ a+ [เลือก[event touchesForView: button]ฉันต้องการที่จะขยายอีกหนึ่งระดับ? เช่น,[[[event touchesForView: button] anyObject]
palaniraja

3
@palaniraja: ใช่มีคุณสามารถย่อหน้าข้อความวัตถุโดยจำนวนเช่น: v+ 2+ +a [
Thor

7

ปลั๊กอินเป็นกลุ่มขยายภูมิภาคจะช่วยให้การขยาย / หดภูมิภาคที่เลือกสายตาไป (กำหนด) ชุดของวัตถุข้อความ นั่นคือคุณสามารถเริ่มต้นด้วยการเลือกตัวแปรจากนั้นกำหนดจากนั้นบล็อกแล้วฟังก์ชั่น ฯลฯ

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