ओपन मैन सेक्शन 3


10

मैं लिनक्स पर सी विकसित करने के लिए विम का उपयोग कर रहा हूं। जब मैं Kअंतर्निहित शब्द के लिए मैन पेज खोलने के लिए प्रेस करता हूं, तो मेरा नियंत्रण नहीं होता है कि किस मैन सेक्शन को खोला जाता है। क्या कहीं निर्दिष्ट करने का कोई तरीका है?


अद्भुत सुझाव: मैंने इसे set keywordprg=man\ 3\ -sअपने .vimrc
stdcall

1
क्या आप अलग-अलग भाषाओं के लिए अलग-अलग "सहायता" कार्यक्रम नहीं चाहते हैं?
डी बेन Knoble

अध्याय 3
stdcall

2
आप एक ftplugin में इस keywordprg स्थापित करने के लिए इतना है कि आप एक काम कर रखना चाहते हो सकता है Kअन्य फ़ाइल प्रकारों में:h ftplugin
statox

जवाबों:


18

प्रलेखन से उद्धरण

  When 'keywordprg' is equal to "man -s", a count
  before "K" is inserted after the "-s".  If there is
  no count, the "-s" is removed.

man -s'keywordprg'सेटिंग के लिए डिफ़ॉल्ट प्रतीत होता है , इसलिए टाइपिंग Kकरने से पहले बस एक गिनती का उपयोग करके लगता है कि यह ट्रिक है।

(के साथ 2Kऔर 3Kकर्सर पर सफलतापूर्वक परीक्षण किया गया open)।


3
लानत है मैं 43 सेकंड बहुत देर हो चुकी थी! :)
statox

8

से :h K:

                            *K*
K           Run a program to lookup the keyword under the
            cursor.  [...]
            Special cases:
            - When 'keywordprg' is equal to "man" or starts with
              ":", a [count] before "K" is inserted after
              keywordprg and before the keyword.  For example,
              using "2K" while the cursor is on "mkdir", results
              in: 
                !man 2 mkdir
            - When 'keywordprg' is equal to "man -s", a count
              before "K" is inserted after the "-s".  If there is
              no count, the "-s" is removed.

तो 3Kचाल चलनी चाहिए


4

यदि आप लिनक्स पर हैं, तो आप मैंडब का उपयोग manकर सकते हैं, और आप उस क्रम को नियंत्रित कर सकते हैं जिसमें अनुभाग खोजे गए हैं। देखें man 1 man:

MANSECT
यदि $ MANSECT सेट किया गया है, तो इसका मान वर्गों की एक सीमांकित-सीमांकित सूची है और इसका उपयोग यह निर्धारित करने के लिए किया जाता है कि कौन से मैनुअल अनुभागों को खोजा जाए और किस क्रम में। जब तक /etc/manpath.config में अनुभाग निर्देश द्वारा ओवरराइड नहीं किया जाता है, तब तक डिफ़ॉल्ट "1 nl 8 3 2 3posix 3pm 3perl 3am 5 4 9 6 7" होता है।

एक अन्य विकल्प यह है कि आप अपने शेल इनिशियल फाइल को सेट करें:

MANSECT=3:3posix:3pm:3perl:3am:1:n:l:8:2:5:4:9:6:7
export MANSECT

या अपने vimrc में:

let $MANSECT="3:3posix:3pm:3perl:3am:1:n:l:8:2:5:4:9:6:7"

(इसके अलावा, आप जो प्रोग्रामिंग कर रहे हैं, उसके आधार पर, अनुभाग 2 को भी उच्च प्राथमिकता की आवश्यकता हो सकती है।)

(या, जैसा कि मैनपेज कहता है, सिस्टम-वाइड इन सेट करें /etc/manpath.config।)

यह FreeBSD के आदमी के लिए भी काम करता है ।


यह वही है जो -sआंतरिक रूप से करता है
क्रिश्चियन Brabandt

1
वास्तव में, -sओवरराइड करता है MANSECT। लेकिन यह विशिष्ट अनुभाग (जो <count>Kकरेगा) को मजबूर करने के बजाय प्राथमिकता सूची निर्धारित करने के लिए उपयोगी है , जो अधिक उपयोगी हो सकता है। उदाहरण के लिए, यदि open(3posix)उपलब्ध नहीं है, open(2)तब भी उपयोगी होगा (शायद अधिक ऐसा)। man -s 3 openबस अनदेखी होगी open(2)
मूरू
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.