ฉันรู้ว่า
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เมื่อคุณต้องการเขียนทันทีหลังจากนั้น