2012-07-05 8 views
7

दो भिन्नताएं हैं। मुझे लगता है कि आप एक आयत का चयन कर सकते हैं और सभी लाइनों की शुरुआत और अंत में सामान जोड़ सकते हैं।Emacs में मैं एक साथ कई बिंदुओं को कैसे संपादित करूं?

मैं यह भी जानना चाहूंगा कि अलग-अलग ऑफसेट पर कई बिंदुओं का चयन करना संभव है, जहां आप एक ही समय में सभी बिंदुओं को संपादित करते हैं। मुझे लगता है कि यास्निपेट कुछ समान प्रदान करता है, लेकिन केवल तभी जब आप एक पूर्वनिर्धारित टेम्पलेट का उपयोग करते हैं। कुछ इस तरह।

<div class=""> 
<a class=""> 

जहां मैं दोनों वर्ग बातों पर एक बिंदु से चिह्नित कर सकते हैं और टाइपिंग दोनों वर्ग विशेषताओं को संपादित करेंगे। क्या यह संभव है?

उत्तर

10

Emacs चट्टानों! mark-multiple प्रदान करता है, जो आप चाहते हैं कि करता है।

+0

ध्यान दें कि यह बाद से [ 'बहु-cursors'] (https://github.com/magnars/multiple-cursors ने ले लिया है .el) (ऐसा लगता है कि यह अभी भी विकास में है)। – Liffon

3

जुआंचो के उत्तर के अलावा, मैंने आपके उद्देश्य के लिए स्टीव येगेज multi-select का उपयोग किया है। उदाहरण उपयोग (पहला उदाहरण है कि मैं क्या लगता है कि आप चाहते हैं प्रदान करेगा):

C-u C-M-m w foo <RET> <RET> 
    - inserts/prepends "foo" to every multi-selection (you can also append or replace text) 

C-u -1 C-M-m r <pre>\(\w+\).+\s-+\(.+\)</pre> 
    - selects first and last word of the contents every <pre> tag 
    (provided the contents don't span multiple lines) 

C-M-m x M-x upcase-region 
    - converts all multi-selections in buffer to uppercase 

C-u M-w C-q C-j --- C-q C-j <RET> 
    - saves all multi-selections to kill-ring as a single item, 
    with selections separated by "---" on a line by itself 
संबंधित मुद्दे