ฉันรู้ว่า
di<
จะลบในแท็ก HTML
มีวิธีง่าย ๆ ในการลบข้อความระหว่างสองแท็กหรือไม่
<span>How can I delete this text?</span>
ขอบคุณ!
ฉันรู้ว่า
di<
จะลบในแท็ก HTML
มีวิธีง่าย ๆ ในการลบข้อความระหว่างสองแท็กหรือไม่
<span>How can I delete this text?</span>
ขอบคุณ!
คำตอบ:
dit
จะลบข้อความระหว่างแท็ก XML ที่ตรงกัน ( it
สำหรับ "บล็อกแท็กด้านใน")
ดูและ:h it
:h tag-blocks
vat
(หรือvit
) แล้วตามด้วยซ้ำat
(หรือit
) เพื่อเลือกแท็กรอบ ๆ อย่างต่อเนื่อง (หรือv2at
อื่น ๆ ) จากนั้นd
ให้ลบ (ฯลฯ )
cit
ci"
สองสิ่งที่ดีที่สุดในการเพิ่มประสิทธิภาพให้กับคำสั่งของ vim
ฉันประหยัดเวลาและความพยายามเป็นอย่างมากด้วยสองสิ่งนี้
cit
ครอบคลุมในหัวข้อนี้ แต่สำหรับคนรุ่นหลังci"
จะลบรายการที่"
พบถัดไป ยอดเยี่ยมสำหรับการเปลี่ยนชื่อคลาสในแท็ก html เช่น<span id="really long annoying-id">
- พร้อมเคอร์เซอร์ในตอนแรก"
กดci"
และถูกแทรกลงในอักขระใหม่ระหว่างเครื่องหมายคำพูด
ciw
ยังมีประโยชน์เนื่องจากลบคำปัจจุบัน ฉันใช้มันมากกว่าcit
และตาม ci"
จริง
ci"
จริง ๆ แล้วจะลบข้อความไปทางซ้ายจนกระทั่งเครื่องหมายคำพูดถัดไปและไปทางขวาจนกระทั่งเครื่องหมายคำพูดถัดไปจากนั้นเข้าสู่โหมดแทรก ct"
จริง ๆ แล้วเป็นคำสั่งให้ "ลบไปถึงถัดไป" พบ "แต่ใช่มันจะทำงานเหมือนกันถ้าเคอร์เซอร์อยู่ภายใต้ใบเสนอราคาด้านซ้าย
ลองdt <ในขณะที่เคอร์เซอร์อยู่บนอักขระตัวแรกที่จะลบ ในตัวอย่างของคุณ 'H'
( เคอร์เซอร์บนอักขระแรกเพื่อลบ ) v / <[Enter] d
วิธีนี้เริ่มจากตัวอักษรตัวแรกจากนั้นเข้าสู่โหมดภาพ ("v") จากนั้นค้นหาวงเล็บเหลี่ยมเริ่มต้นถัดไป ("/ <") จากนั้นกด Enter เพื่อออกจากการค้นหา
ณ จุดนี้การเลือกภาพของคุณจะครอบคลุมข้อความที่จะลบ กด d ("d") เพื่อลบ
หากฉันต้องทำสิ่งนี้เพื่อหาแท็กจำนวนมากฉันจะบันทึกคำสั่งและรวมกับการค้นหาอื่น ๆ เพื่อให้สามารถทำซ้ำได้ ลำดับสำคัญอาจมีลักษณะเช่นนี้:
[ เคอร์เซอร์เมื่อเริ่มต้นไฟล์ ] qa /> [Enter] lv / <[enter] dnq
จากนั้นกด:
20 @
การทำเช่นนี้สำหรับ 20 แท็ก
c/<[enter]
มากใน "ชีวิต Vim" ของฉัน แต่ตอนนี้ฉันเสียใจเล็กน้อยเกี่ยวกับเรื่องนี้ คุณเห็นปลั๊กอิน "Vi-mode" ส่วนใหญ่สำหรับบรรณาธิการ / IDE ยอดนิยมอื่น ๆ ไม่สนับสนุนคำสั่งประเภทนี้โดยเฉพาะ พวกเขาสนับสนุนcit
, ci"
, ct<
และอย่างไร ดังนั้นฉันจะสอนอีกครั้ง
หากคุณต้องการที่จะทำสิ่งที่ตรงกันข้ามกับการลบข้อความระหว่างการตั้งค่าสถานะฉันขอแนะนำให้ติดตั้งVim-Surroundและการทำงานdst
ที่ลบแท็กเซอร์ราวด์
cit
เมื่อคุณต้องการเขียนทันทีหลังจากนั้น