मार्कडाउन: क्रमांकित सूची जारी रखें


473

निम्नलिखित मार्कडाउन कोड में मैं item 3सूची संख्या 3 से शुरू करना चाहता हूं । लेकिन मार्कडाउन के बीच कोड ब्लॉक होने के कारण यह सूची आइटम एक नई सूची के रूप में शुरू होता है। क्या उस व्यवहार को रोकने का कोई तरीका है?

वांछित उत्पादन:

1. item 1
2. item 2

```
Code block
```

3. item 3

उत्पादित उत्पादन:

  1. वस्तु 1
  2. आइटम 2

Code block

  1. आइटम 3

4
यहाँ सही समाधान है । मैकमेड के उत्तर में ट्रिपल बैकटिक्स वास्तव <code>में इसमें एक नई एलिमेंट के साथ एचटीएमएल तत्व का उत्पादन करता है, जो कि सिंटैक्स-हाइलाइट करने योग्य नहीं है, और इसमें कोड के रूप में दिखाई देने वाली दृष्टि से ऊपर एक अतिरिक्त रिक्त लाइन है।
दान डैस्कलेस्कु

1
यदि आप वास्तव में हताश हैं, तो आप उन संख्याओं के लिए HTML वर्ण कोड देख सकते हैं, जिनका आप उपयोग करना चाहते हैं (और प्रत्येक बाद की वस्तु के लिए) ... जैसा कि &#50;&#57;. this is list item number 29। हालांकि यह सभी मार्कडाउन पार्सर में काम नहीं कर सकता है।
रॉय टिंकर

जवाबों:


620

बुलेट बिंदुओं के बीच सामग्री को इंडेंट करने के लिए चार स्थानों का उपयोग करें

1. item 1
2. item 2

    ```
    Code block
    ```
3. item 3

पैदा करता है:

  1. वस्तु 1
  2. आइटम 2

    Code block

  3. आइटम 3

5
हां, इंडेंटेशन पार्सर को स्पष्ट करता है कि कोड ब्लॉक सूची आइटम 2 से संबंधित है। अन्यथा, यह सिर्फ एक सामान्य पैराग्राफ है, और सूची को समाप्त कर देगा।
मैकडेम

42
लेकिन ... क्या होगा अगर आप वहाँ इंडेंटेशन नहीं चाहते हैं? जहां तक ​​मुझे पता है, मार्कडाउन का कोई हल नहीं है। किसी सूची को शुरू करना अक्सर स्वाभाविक बात है, फिर रुकें और कुछ पाठ प्रदान करें जो सूची के बारे में एक मेटा टिप्पणी है - हमने अभी क्या किया है, और आगे क्या आ रहा है - पाठ के बिना, तार्किक रूप से, सूची का हिस्सा - और फिर सूची जारी रखें। मार्कडाउन नहीं चाहता कि हम ऐसा करें। यह विचार का एक रूप है कि मार्कडाउन लोगों को व्यक्त नहीं करना चाहता है - कि मार्कडाउन को यह नहीं पता है कि कैसे व्यक्त किया जाए, कि मार्कडाउन सोचता है कि वह भी ... मुक्त। साधनों का विचार करना चाहिए। आह। मैं HTML में लिख सकता हूं, या PDF बना सकता हूं।
मंगल

2
मेरे लिए बिल्कुल काम नहीं करता है। मेरे पास एक सरल क्रमांकित सूची है, और ऊपर दिखाए गए अनुसार इंडेंटेड और नई-पंक्तिबद्ध है। अभी भी 1 पर पुनरारंभ।
रे

10
कुछ मार्कडाउन संपादकों में जो मैंने कोशिश की है (बिटबकेट, टंबलर), यह काम नहीं करता है - यह ठीक से इंडेंट किए गए कोड ब्लॉक के बजाय इनलाइन कोड को प्रस्तुत करता है।
थुडन

2
इंटेलीज में यह फर्क पड़ता है कि प्रत्येक गिने ब्लॉक के नीचे कितनी खाली लाइनें हैं। यदि आप 2 खाली लाइनें छोड़ते हैं, तो यह नंबरिंग को पुनरारंभ करता है; केवल एक को छोड़ दो और यह जारी है।
Rhubarb

36

मैकमेड के समाधान में कैसे ध्यान दें, आप "कोड ब्लॉक" के ऊपर कोड की एक अतिरिक्त रेखा देख सकते हैं।

यहां दो बेहतर उपाय दिए गए हैं:

  1. एक अतिरिक्त 4 रिक्त स्थान द्वारा कोड ब्लॉक को इंडेंट करें (इसलिए आमतौर पर 8, इस नेस्टेड सूची उदाहरण में, 12)। यह एक <pre>तत्व में कोड डाल देगा । SO पर, आप सिंटैक्स हाइलाइट को
    <!-- language: lang-js -->4 स्थानों के इंडेंट के साथ निर्दिष्ट कर सकते हैं (नेस्टेड सूची के कारण यहां +1)।

    1. वस्तु 1
    2. आइटम 2

      Code.block('JavaScript', maybe)?
    3. आइटम 3

  2. या, सिर्फ 4 रिक्त स्थान (यहां, नेस्टेड सूची के कारण 1 अतिरिक्त) द्वारा बैकटिक्स और इंडेंट के भीतर कोड ब्लॉक डालें। आपको इसके <code>अंदर एक तत्व के साथ एक नियमित इंडेंटेड टेक्स्ट पैराग्राफ मिलेगा । यह एक आप वाक्य-हाइलाइट नहीं कर सकते हैं:

    1. वस्तु 1
    2. आइटम 2

      Code block

    3. आइटम 3

नोट: आप अंतर्निहित मार्कडाउन कोड देखने के लिए इस उत्तर पर "संपादित करें" पर क्लिक कर सकते हैं। बचाने की आवश्यकता नहीं;)


27
यह इस विशेष समस्या के लिए एक समाधान है, लेकिन यह कुछ हस्तक्षेप करने वाले पाठ के बाद अगले नंबर पर मार्कडाउन सूची को फिर से शुरू करने की समस्या का एक सामान्य समाधान नहीं है। ऐसा प्रतीत होता है कि ऐसा करने का कोई तरीका नहीं है, जो मुझे पागल कर देता है। मार्कडाउन के बारे में बाकी सब कुछ बहुत अच्छा है।
मंगल

@ मार्स जैसा कि आप डेविडटी के उत्तर से देख सकते हैं , सामान्य समाधान किसी भी स्थान के साथ पाठ को इंडेंट करना है। उदाहरण के लिए, चार के बजाय एक स्थान जोड़ने से आप कोड ब्लॉक बनाने के बिना किसी भी हस्तक्षेप पाठ को सम्मिलित कर सकेंगे।
ClydeTheGhost 14

36

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

Markdown:

1. one
2. two

 three
3. four

आउटपुट:

  1. एक
  2. दो

    तीन

  3. चार

1
मिठाई! मेरे पास छद्म कोड ब्लॉक और MathJax समीकरणों की एक श्रृंखला थी। यह वही था जो मुझे चाहिए था।
20

GitHub Wiki पर काम नहीं करता है। अधिक रिक्त स्थान जोड़ने से कम से कम नंबरिंग उसी प्रकार हो जाएगी जैसे कि थो से ऊपर की संख्या। : rofl:
चैम एलियाह

1
@ChaimEliyah Thats क्योंकि im 99% यकीन है कि विकी GitHub फ्लेवर्ड मार्कडाउन का उपयोग नहीं करता है (मुझे यकीन है कि मैं इस जिज्ञासा से पहले आया हूं)
DavidT

यह उन स्थितियों का भी ध्यान रखेगा जहां आपके पास एक सूची प्रविष्टि है जिसमें कुछ पाठ, कुछ कोड और अंत में सूची प्रविष्टि के अंत से पहले अधिक पाठ है।
फ्राटोज़

14

यदि आप कोड ब्लॉक को इंडेंट करने के लिए टैब का उपयोग करते हैं तो यह पूरे ब्लॉक को एक लाइन में आकार देगा। इससे बचने के लिए आपको HTML ऑर्डर की गई सूची का उपयोग करना होगा।

  1. वस्तु 1
  2. आइटम 2

कोड ब्लॉक

<ol start="3">
  <li>item 3</li>
  <li>item 4</li>
</ol>

13

मैकमेड का समाधान अब मेरे लिए गीथब पेज पर मेरे जेकील उदाहरण पर काम नहीं करता है, लेकिन मुझे क्रामडाउन जीथब रेपो के लिए एक मुद्दे पर यह समाधान मिला । ओपी के उदाहरण के लिए यह इस तरह दिखेगा:

1. item 1
2. item 2

```
Code block
```

{:start="3"}
3. item 3

मेरे मुद्दों को हाथ से हल किया।


3
दुर्भाग्य से, यह GitHub readme फ़ाइलों के साथ काम नहीं करता है। :(
Nostalg.io

7

स्रोत;

<span>1.</span> item 1<br/>
<span>2.</span> item 2
```
Code block
```
<span>3.</span> item 3


परिणाम;

1. आइटम 1
2. आइटम 2 Code block 3. आइटम 3


4

आप सूची के आइटम के बीच में लाइनों, इंडेंट किए जाने की उपयोगकर्ता मंगल ग्रह की तरह अपने टिप्पणी में आपका उल्लेख नहीं करना चाहते हैं, तो आप उपयोग कर सकते हैं pandocकी example_listsसुविधा। उनके डॉक्स से :

(@)  My first example will be numbered (1).
(@)  My second example will be numbered (2).

Explanation of examples.

(@)  My third example will be numbered (3).

हाँ! इसने बहुत अच्छा काम किया। बहुत बढ़िया।
जावदबा 19

यह इस समस्या का सबसे सार्वभौमिक समाधान है। यदि आपको सूची तत्वों के बीच शीर्षकों की आवश्यकता है तो इसे इंडेंट करने की आवश्यकता नहीं है और यह काम भी करता है।
लिलेमेट्स

(@)एक वैश्विक जारी सूची से मेल खाती है (ताकि वहाँ केवल एक ही हो सकता है का उपयोग करना। pandocके startnumविस्तार आप नंबर आप चाहते हैं के साथ एक आदेश दिया सूची शुरू कर सकते हैं और यह सिर्फ काम करता है।
आबिद एच मुज़तबा

2

अवधि के बाद कोष्ठक में सूची संख्या डालें।

(१) आइटम १
(२) आइटम २ code block (३) आइटम ३


5
यह <ol>और <li>एलम्स को नष्ट कर देता है और इसके बजाय उन्हें केवल <p>टैग में लपेटता है । इसके अतिरिक्त, आप सचमुच प्राप्त करते हैं (1)
jmargolisvt

2
मुझे लगता है कि यही इरादा था।
गैल

1

मैंने गितुब पर एक नई लाइन के साथ इंडेंट सब-ब्लॉक को अलग करते हुए इस समस्या को हल किया, उदाहरण के लिए, आप आइटम 1 लिखते हैं, फिर दो बार हिट दर्ज करते हैं (जैसे कि यह एक नया पैराग्राफ था), ब्लॉक को इंडेंट करें और आप जो चाहते हैं उसे लिखें (एक ब्लॉक कोड, पाठ, आदि)। मार्कडाउन सूचियों और मार्कडाउन लाइन पर अधिक जानकारी टूट जाती है

उदाहरण:

  1. आइटम एक
  2. आइटम दो

    this block acts as a new paragraph, above there is a blank line

  3. आइटम तीन

    some other code

  4. आइटम चार

0

ध्यान दें कि कई एक्सटेंशन भी उपलब्ध हैं जो मार्कडाउन उपयोग के विशिष्ट संदर्भों के लिए इस व्यवहार को ठीक करेंगे।

उदाहरण के लिए, python-markdown के sane_lists एक्सटेंशन (उदाहरण के लिए mkdocs में प्रयुक्त), मार्कडाउन सूचियों में उपयोग किए गए नंबरों को पहचान लेंगे। आपको इस एक्सटेंशन को सक्षम करने की आवश्यकता हैarkdown.markdown(some_text, extensions=['sane_lists'])


0

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

स्रोत: (डॉट्स रिक्त स्थान हैं ;-) बेशक)

1.·item1··
····This is some text
2.item2

परिणाम:

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