उदात्त पाठ 2 में, मैं एक सीधे किनारे पर एक दांतेदार किनारे पर कई कर्सरों के साथ कैसे बाहर निकल सकता हूं?


33

मान लीजिए कि मुझे इस तरह कई पंक्तियों के साथ कई कर्सर मिले हैं:

foo|
barr|
foobar|
baz|

मैं प्रत्येक पंक्ति के अंत में व्हाट्सएप को स्वचालित रूप से एक फ्लैट किनारे पर कैसे धकेल सकता हूं, इस तरह से ?:

foo    |
barr   |
foobar |
baz    |

(इन उदाहरणों में, |मेरा कर्सर माना जाता है।)

जब आप सिर्फ Tabया Spaceप्रारंभिक व्यवस्था से, आपको यह मिलता है:

foo    |
barr    |
foobar    |
baz    |

यह उपयोगी है, लेकिन वह नहीं है जिसकी मुझे तलाश है। मैं किसी प्रकार के कीबोर्ड शॉर्टकट की तलाश कर रहा हूं जो मुझे एक सीधे कॉलम के लिए एक रैग्ड मल्टी-कर्सर सम्मिलित करने से प्रेरित करेगा।


क्या केवल एक टैब या दो कार्य सम्मिलित करना है?
डार्थ एंड्रॉइड

नहीं, लेकिन मैं समझने में असफल हो सकता हूं। मैंने अपने प्रश्न को स्पष्ट करने के लिए संपादन किया है।
ग्लैडस्टोन

आपका संपादन बताता है कि स्पेस क्या करता है, और कुछ हद तक अगर आपकी लाइनें एक बड़ी राशि से भिन्न होती हैं, लेकिन अगर वे सभी बहुत करीब हैं, तो दो टैब के बाद आपके कर्सर सभी को एक टैबस्टॉप पर होना चाहिए। आपको उन सभी को समान टैब पर लाने के लिए थोड़ा सा समायोजन करना पड़ सकता है, लेकिन यह रिक्त स्थान के साथ समायोजित करने की कोशिश से कम होगा।
डार्थ एंड्रॉइड

यह अजीब है। दबाने Tabप्रत्येक पंक्ति के अंत में indents प्रचंड बहु कर्सर एक सीधे स्तंभ के लिए बाहर डालने, लेकिन यह regex का उपयोग कर एक ही प्रभाव को प्राप्त करने के लिए संभव नहीं है। मैंने अनुगामी स्थानों की खोज की: \s*$और उन्हें टैब वर्ण से बदल दिया: \t- लेकिन मैन्युअल \tरूप से दबाने जैसा प्रभाव प्राप्त नहीं करता है Tab
amiregelz

1
FYI करें, मैंने इसे उदात्त पाठ 2 अनुरोध बोर्ड पर एक फीचर अनुरोध के रूप में पोस्ट किया
ग्लैडस्टोन

जवाबों:


10

आप wbond के उदात्त संरेखण का उपयोग कर सकते हैं

आपको इसे अपनी सेटिंग फ़ाइल में जोड़ना पड़ सकता है (प्राथमिकताएँ> पैकेज सेटिंग्स> संरेखण> सेटिंग्स-उपयोगकर्ता:

// The mid-line characters to align in a multi-line selection, changing
// this to an empty array will disable mid-line alignment
"alignment_chars": ["=", "|"],
// If the following character is matched for alignment, insert a space
// before it in the final alignment
"alignment_space_chars": ["=", "|"]

बदलें "|" जिस भी पात्र के साथ आप संरेखित करना चाहते हैं।

संपादित करें: जैसा कि mtoast को पता चला है, "\n""alignment_chars" को जोड़ने से वांछित प्रभाव मिलता है। "Alignment_space_chars" में नई पंक्ति वर्ण जोड़ना संभवतः आवश्यक नहीं है और पाठ को हटा सकता है। हालांकि, मेरे सीमित परीक्षणों से मुझे कोई अंतर नहीं दिखाई दिया।

पकड़ो controlऔर प्रत्येक पंक्ति के अंत में क्लिक करें। फिर संरेखण हॉटकी दबाएं (For linux the default is ctrl+ alt+ a)। आप पाएंगे कि श्राप देने वालों को सबसे दूर स्थित कर्सर स्थिति के साथ पंक्तिबद्ध किया गया है।

Edit2:"alignment_space_chars" यदि आप पाठ के एक खंड को हाइलाइट करते हैं तो पाठ को जोड़ना नई पंक्ति को जोड़ सकता है और उदात्त संरेखण पंक्ति पर संरेखित करने के लिए कुछ और नहीं मिल सकता है (जैसे एक समान चिह्न)।

इसके अलावा, यदि उदात्त संरेखण किसी और चीज़ को संरेखित करने के लिए नहीं मिल सकता है, तो "alignment_chars"सबसे लंबी हाइलाइट की गई रेखा से मिलान करने के लिए रिक्त स्थान (या आपकी सेटिंग्स के आधार पर टैब) के साथ लाइनों की समाप्ति को जोड़ने के लिए नईलाइन जोड़ना होगा।


1
वाह महान! मैंने अपने लिए उपखंड संरेखण पैकेज स्थापित किया, "\n"(नई पंक्ति) "alignment_chars", और वांछित परिणाम प्राप्त किया। (नोट: मैंने इसे नहीं जोड़ा "alignment_space_chars", जिससे लाइनें हट गईं।) यदि आप "n"अपने उत्तर में वह विशिष्ट सुझाव ( ) जोड़ देंगे , तो मैं स्वीकार कर लूंगा।
ग्लैडस्टोन

अच्छा! मेरे जैसे पूर्णतावादियों के लिए बहुत उपयोगी पैकेज :)
amiregelz

3
एक समान पैकेज भी है: संरेखित सारणीबद्ध , जो थोड़ा अधिक लचीला है (आप कई वर्णों पर संरेखित करने में सक्षम हैं)।
d_rail

AlignTab के साथ d_rail द्वारा ऊपर उल्लेख किया गया है, |एक एकल '\' से बचने के लिए याद रखें
उपयोगकर्ता

मैं विश्वास नहीं कर सकता कि यह एक लाख वोट नहीं है।
चार्ल्स

44

आप मामूली हैक का उपयोग करके बाहरी पैकेज के बिना भी कर सकते हैं, केवल थोड़ा और प्रयास के साथ। ऐसे:

| इन निर्देशों में एक कर्सर का प्रतिनिधित्व करता है।

  1. का उपयोग करते हुए सभी वांछित तर्ज पर कर्सर बनाएं Ctrl+ क्लिक करें या पाठ का एक ब्लॉक का चयन करके और दबाकर Ctrl+ Shift+ L। ( चयन डॉक्स )

  2. हर शब्द के अंत में अतिरिक्त रिक्त स्थान जोड़ें, जब तक कि हर कर्सर उस बिंदु पर या उस बिंदु पर न आ जाए जहां आप अपना कॉलम चाहते हैं (इससे कोई फर्क नहीं पड़ता कि अतीत कैसा है):

    foo     |
    barr     |
    foobar     |
    baz     |
    
  3. ( वैकल्पिक 1 ) किसी भी वर्ण को एक स्थान के बाद टाइप करें; चलो उपयोग करें c:

    foo     c |
    barr     c |
    foobar     c |
    baz     c |
    
  4. प्रेस Homeको श्राप देने वालों को रेखाओं की शुरुआत करने के लिए दबाएं :

    |foo     c
    |barr     c
    |foobar     c
    |baz     c
    
  5. प्रेस → (right arrow) तब तक करें जब आप अपने स्तंभ चाहते हैं

    foo    | c
    barr   |  c
    foobar |    c
    baz    | c
    
  6. प्रेस Ctrl+ Shift+ सभी निम्नलिखित खाली स्थान के चयन और करने के लिए c, उसके बाद Delete:

    foo    |
    barr   |
    foobar |
    baz    |
    
  7. ( वैकल्पिक 1 ) Deleteअतिरिक्त व्हाट्सएप चरित्र को साफ करने के लिए फिर से दबाएं जिसे हमने वैकल्पिक चरण में जोड़ा था।


1 हम cएक स्थान का अनुसरण करते हुए चरित्र का उपयोग करते हैं, अगर हम उस रेखा पर अतिरिक्त सामग्री रखते हैं जिसे हम रखना चाहते हैं। इसके बिना, Ctrl+ Shift+ लाइनों पर किसी भी अतिरिक्त सामग्री के पहले शब्द का चयन करेगा, जिससे विलोपन मुश्किल हो जाएगा।


2
यह पहली बार में मुड़ दिखता है लेकिन यह एक साफ-सुथरा हैक है। उचित संरेखण के साथ कॉलम चिपकाने के लिए अच्छा है। टेक्स्ट पेस्ट्री प्लग-इन का उपयोग करके अगला कॉलम चिपकाया जा सकता है।
उपयोगकर्ता

1
मैं थोड़ी देर के लिए इस तकनीक का उपयोग कर रहा हूं, लेकिन सावधान रहें , ctrl+shift+rightसभी पात्रों का लगातार इलाज नहीं करता है , इसलिए यह केवल सफेद स्थान से अधिक का चयन कर सकता है।
स्पेयरबाइट्स

1
वास्तव में साफ-सुथरी चाल, मैं सहमत हूं। लेकिन मैंने इसे अंत में एक चरित्र के बिना कोशिश की, और इस्तेमाल किया Shift-End Deleteऔर यह बस काम कर गया। क्या यह कुछ मामलों में काम करता है लेकिन दूसरों को नहीं?
12

यह वही है जो मैं हमेशा करता हूं :)
डोमिनोज़

यह काम नहीं करता है अगर cएक लाइन पर दूसरे शब्द के अंत से पहले है। मुझे अभी जो समस्या है वह है। कुछ पंक्तियों में दाईं ओर स्क्रॉल करने के लिए पर्याप्त वर्ण नहीं है, इसलिए जब आप इसे अगली पंक्ति में लपेटते हैं, तो इस हैक को बस ऐसे ही छोड़ दें। यह एक हैक है, एक उपयोगी कैच-सभी प्रतिस्थापन नहीं है।
leetNightshade

0

जो लोग के अलावा अन्य पात्रों पर इंडेंट के लिए =और |, मैं स्थापित करने में सक्षम था संरेखण पैकेज और फ़ाइल को संशोधित में Sublime Text > Preferences > Package Settings > Alignment > Settings - Userऐसा दिखाई दे रहे हैं:

{
  "alignment_chars": [
    "{create",
   ]
}

मैंने तब निम्न कोड का चयन किया:

  let!(:admin_user) {create(:admin_user, :admin)}
  let!(:another_admin_user) {create(:admin_user, :admin)}
  let!(:superadmin_user1) {create(:admin_user, :superadmin)}
  let!(:superadmin_user2) {create(:admin_user, :superadmin)}
  let!(:nonadmin_user) {create(:admin_user)}

और Command + Ctrl + Aइसे संरेखित करने के लिए दबाया गया।

  let!(:admin_user)        {create(:admin_user, :admin)}
  let!(:another_admin_user){create(:admin_user, :admin)}
  let!(:superadmin_user1)  {create(:admin_user, :superadmin)}
  let!(:superadmin_user2)  {create(:admin_user, :superadmin)}
  let!(:nonadmin_user)     {create(:admin_user)}

सब कुछ बाईं ओर के स्तंभ में ले जाया गया था, जो कि {createपाठ को संरेखित करते हुए भी कब्जा कर सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.