मोज़ेक के अंधेरे पक्ष (III): एक्समोनड

ऐसा लगता है कि मैंने बहुत प्रार्थना की है और यह है कि आज तक मैं सेटिंग्स का एक मिलीमीटर नहीं डालता हूं। जैसा कि मैं वादा कर रहा हूं कुछ समय आज मैं अपने xmonad.hs को अलग कर दूंगा जो मैंने विशेष रूप से इस अवसर के लिए तैयार किए थे। यह और अन्य कॉन्फ़िगरेशन फ़ाइलें विशेष रूप से पेस्ट में हैं कंसोल के रंग, विंडो सेटिंग्स y शीर्ष बार.

आप उन्हें वहां से डाउनलोड कर सकते हैं और अपने पसंदीदा टेक्स्ट एडिटर में खोल सकते हैं।

से पहले

यदि आप सोच रहे थे, तो मेरा डेस्कटॉप डेबियन स्थिर पर एक छोटा सा ओपनबॉक्स था। वितरण स्थापना प्रक्रिया को फिलहाल छोड़ते हुए, आपको सत्यापित करना चाहिए कि आवश्यक पैकेज रिपॉजिटरी में हैं। आइए ऐसा करते हैं (यह याद करते हुए कि मैं डेबियन पर हूँ):

sudo aptitude ghc xmonad xmobar gmrun dmenu स्थापित करें

और त्यार। हम सिर्फ उपस्थिति के क्रम में स्थापित; ग्लासगो हास्केल कंपाइलर जो हास्केल को संकलित करने और व्याख्या करने के प्रभारी है; XMonad, विंडो मैनेजर, XMobar एक बार है, जो सिस्टम और कुछ प्रोग्राम लॉन्चर्स, dmenu और grrun के बारे में जानकारी प्रस्तुत करता है; कृपया पहले से ही कॉन्फ़िगर करें ताकि XMonad ने उन्हें Mod + P और Mod + Shift + P के साथ लॉन्च किया।

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

कुछ खास नहीं

पर आश्चर्य। XMonad इस तरह से हमारा स्वागत करता है। कैद में मैंने पहले ही गमरून को खोल दिया है, ताकि आप देख सकें कि यह टूटा नहीं है:

कुछ भी शानदार नहीं

और हम चाहते हैं कि यह इस तरह दिखे, पहले से ही कॉन्फ़िगर और सब कुछ

तो हाँ

स्क्रीनशॉट टर्मिनल के लिए एक एमपीडी क्लाइंट, एनसीएमपीपीसी चलाने वाला एक टर्मिनल दिखाता है; और एक GVim सत्र, दोनों पैलेट के रंगों के साथ सोलराइज्ड लाइट। यह प्राप्त करना वास्तव में मुश्किल नहीं था और यहां तक ​​कि विम और urxvt मेरे सिस्टम पर पहले से ही तैयार थे।

Xmonad.hs, कितना डरावना!

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

- Xmonad विन्यास - जैसा कि आप देख सकते हैं, यह काफी सरल आयात है XMonad आयात XMonad.Util.EZConfig आयात XMonad.Util.Run wrk = ["A", "C", "" "," T "] main = do xmproc < - स्पॉनपाइप "xmobar" स्पॉन "नाइट्रोजन -स्टोर" "स्पॉन" urxvtd "स्पॉन" mpd "स्पॉन" xfce4-volumed "xmonad $ defaultConfig" modMask = mod4Mask, टर्मिनल = "urxvtc", borderWidth = 2, normalBorder.nic.in , focusBorderColor = "# 6b3", कार्यस्थान = wrk} `extraKeys` [((mod002Mask, xK_v), स्पॉन" gvim "), ((mod26Mask, xK_c), स्पॉन" mpc टॉगल "), (mod4Mask, xKaa) स्पॉन "mpc prev"), (mod4Mask, xK_s), स्पॉन "mpc next")] - कॉन्फ़िगरेशन का अंत। सरल, आसान और साफ।

यहाँ क्या हुआ?

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

निर्भरता खंड

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

आयात ज़ोनोनाड इम्पोर्ट ज़मोनैड। यूटिल। इज़कॉनफिग इम्पोर्ट एक्समोनाड। यूटिल।रून

हमारा कार्यक्रम तीन निर्भरता का उपयोग करता है। पहला हमें एक्सोनॉड फ़ंक्शंस लाता है, दूसरा और तीसरा हमें बाद में कीबोर्ड शॉर्टकट्स को परिभाषित करने और प्रोग्राम चलाने में मदद करेगा। चलो ऐसे ही चलते रहें।

चर

वह चीज है कुल्हाड़ी और यह किसके लिए है? आइए कोड की अधिक बारीकी से सराहना करें:

wrk = ["ए", "सी", "जी", "टी"]

कुल्हाड़ी एक चर है, जो चार तत्वों की सूची के बराबर है, सभी तार; क्योंकि हास्केल सूची केवल एक आइटम प्रकार को स्वीकार करती है। यदि आप सोच रहे हैं कि मैंने अपने डेस्कटॉप के लिए उन चार अक्षरों को क्यों चुना, तो मुझे याद आया चार न्यूक्लियर बेस डी.एन.ए.
नाम केवल एक संक्षिप्त नाम है, और हम इसे myWorkspaces, pepitoRojo या जो कुछ भी लगा सकते हैं, जब तक यह लोअरकेस अक्षर से शुरू होता है और हम इसे अगले भाग में निर्दिष्ट करते हैं।
यहां वह जगह है जहां हमारे निपटान में एक संपूर्ण प्रोग्रामिंग भाषा होने के बारे में अच्छी बात शुरू होती है, क्योंकि हम एक चर से खिड़की के रंग को परिभाषित कर सकते हैं:

windowColor = "# FFFFF"

या यहां तक ​​कि एक समारोह बनाएं जो हमारे मनोदशा के संबंध में एक रंग लौटाता है:

moodColor एम | m == "सैड" = "# b0c4f6" - कुछ ऐसा है नीला | m == "एंग्री" = "# ba3f3f" - लाल जैसा कुछ | m == "हैप्पी" = "# 8bff7e" - हरे रंग की तरह | अन्यथा = "# एफएफएफएफएफ" - सफेद, तटस्थ दिनों के लिए

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

मुख्य भाग

जो लाइन से कहता है मुख्य = करते हैं हमने ज़मोनाड के व्यवहार को निर्दिष्ट करना शुरू कर दिया। इसे शांति से देखते हैं।

शुरुआत में चीजों को मारना

यह कई मायनों में हासिल किया जा सकता है, लेकिन निर्भरता में कमी और कोड क्लीनर बनाने के लिए, स्पष्ट रूप से अधिक गुफाओं वाला, मैंने इसके लिए चुना:

xmproc <- स्पॉनपाइप "xmobar" स्पॉन "नाइट्रोजन - वेस्टोर" स्पॉन "urxvtd" स्पॉन "mpd" स्पॉन "xfce4-volumed"

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

अंतिम समायोजन

यहां हम कुछ चीजों को परिभाषित करते हैं जो आमतौर पर सिर्फ व्यक्तिगत प्राथमिकताएं हैं। उदाहरण के लिए, मैं अल्ट के बजाय सामान्य रूप से बेकार सुपर कुंजी (प्रभावी रूप से विंडोज़ एक) का उपयोग करना पसंद करता हूं, लेकिन यह मेरी प्राथमिकता है। यदि आप सुपर पर वापस जाना चाहते हैं, तो पहली पंक्ति को हटा दें।

- ... xmonad $ defaultConfig {modMask = mod4Mask, टर्मिनल = "urxvtc", borderWidth = 2, normalBorderColor = "# fdf6e3", फ़ोकसबॉर्डरसेल = "# 002b26", कार्यस्थान = wrk} - ... ...

तब हम अपने टर्मिनल को परिभाषित करते हैं, urxvtc, क्योंकि यह वही है जिसे हम उस दानव का ग्राहक कहते हैं जिसे हम पहले चलाते थे। कार्यक्षेत्रों की सूची जैसी अन्य चीजें, जिन्हें हम निम्नलिखित चीजों में डाल सकते हैं:

, कार्यस्थान = ["H", "O", "L", "A"], कार्यस्थान = ["A", "R", "C", "H", "L", "I", "N "," U "," X "], कार्यस्थान = [" 1: वेब "," 2: संगीत "," 3: अप्रयुक्त स्थान "," 4: Ufff "]

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

--..., focusBorderColor = moodColor "हैप्पी" - ...

$ लाइन पर Xmonad ... यह केवल सही सहयोगी कार्यों का एक अनुप्रयोग है, अर्थात, हम कुछ कोष्ठकों को सहेजते हैं। 😀

कुंजीपटल अल्प मार्ग

फ़ाइल के अंत में हमारे पास ट्यूपल्स की एक सूची है जिसमें कुछ शॉर्टकट हैं, इस मामले में, वे जीवीम लॉन्च करते हैं, संगीत को रोकते हैं या खेलते हैं, और इसे आगे बढ़ाते हैं या इसमें देरी करते हैं। बस। ExtraKeys फ़ंक्शन दूसरे मॉड्यूल में आता है जिसे हम आयात करते हैं और पीछे उच्चारण इसे 1/2 की तरह div (/) फ़ंक्शन की शैली में निष्पादित करते हैं और 1 2 div नहीं करते हैं, जिससे इसे पढ़ना आसान हो जाता है। इसलिए यह:

- ...} `extraKeys` [((mod4Mask, xK_v), स्पॉन" gvim "), ((mod4Mask, xK_c), स्पॉन" mpc टॉगल "), ((mod4Mask, xK_a), स्पॉन" mpc prev ")। ((mod4Mask, xK_s), स्पॉन "mpc next")]

.Xmobarrc

कॉन्फिग {font = "- * - मोनोस्पेस -9 - * - * - * - * - * - * - * - * - *", bCColor = "# fdf6e3", fgColor = "657b83", स्थिति = शीर्ष , निचलाऑनस्टार्ट = गलत, कमांड = [रन कॉम "गूंज" ["$ USER"] "उपयोगकर्ता नाम" 864000, रन कॉम "होस्टनाम" ["-s"] "होस्टनाम" 864000, रन कॉम "एमपीऑन करेंट" [""] "mpd" 10, रन डेट "% a% b% d" "दिनांक" 36000, रन दिनांक "% H:% M" समय "10", रन स्टडरीडर], sepChar = "'", alignSep = "} {" , टेम्पलेट = "'उपयोगकर्ता नाम' @ 'होस्टनाम'} {'एमपीडी' | 'तिथि' - 'समय'"

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

निष्कर्ष

ऐसा ही है, मुझे लगता है। हम पहले से ही मुख्य एक्समोनाड फ़ाइल के माध्यम से चले गए और हास्केल सीखना शुरू कर दिया कि हम इसे पसंद करते हैं या नहीं। यदि आप जारी रखना चाहते हैं, तो शुरू करने के लिए एक बहुत अच्छा मार्गदर्शक है।
अगली किस्त में हम गैर-प्रोग्राम योग्य प्रबंधकों, विशेष रूप से स्पेक्ट्रम / स्क्रोटवम का पता लगाएंगे। फिर मिलते हैं।


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।

  1.   इवानोवनेग्रो कहा

    !बहुत खुबस!

    अगली बार स्पेक्ट्रम? !जी श्रीमान!

  2.   द सैंडमैन86 कहा

    बहुत अच्छा मार्गदर्शक, यह बहुत दिलचस्प लगता है, मैं एक नज़र रखना चाहता हूं, भले ही मैं अपने ओपनबॉक्स के साथ अधिक से अधिक आरामदायक हूं।

  3.   विरोधी कहा

    ओह, मैंने यह निर्दिष्ट करने में चूक कर दी कि ये फाइलें कहां जा रही हैं, लेकिन जब मैं पोस्ट को संपादित करता हूं, तो यह मुझे एक त्रुटि संदेश भेजता है:
    घातक त्रुटि: ऑन लाइन अपरिभाषित फ़ंक्शन get_header () /home/desdelin/public_html/blog/wp-content/themes/dlinux/index.php पर कॉल करें
    अगर कोई इसे संपादित कर सकता है, तो वे इस तरह से जाते हैं:

    मुख्य कॉन्फ़िगरेशन फ़ाइल: ~ / .xmonad / xmonad.hs
    Xmobarrc फ़ाइल: ~ / .xmobarrc
    कंसोल कॉन्फ़िगरेशन फ़ाइल: ~ / .Xdefaults
    ????

    1.    विरोधी कहा

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

  4.   नैनो कहा

    खैर, मुझे यह सुपर दिलचस्प लगता है क्योंकि यह प्रोग्रामिंग के लिए अधिक उत्पादक है। मैं बहुत बढ़िया के साथ गड़बड़ करना चाहता हूं क्योंकि मैं वास्तव में LUA सीखना चाहता हूं।

    यह उन लोगों के लिए मौजूद है जो पायथन क्यूटील में कार्यक्रम करते हैं, लेकिन सच्चाई यह है कि मैं इसे नहीं चला सकता, मैं उबंटू का उपयोग कर रहा हूं और मैंने इसे पीपीए के माध्यम से और स्रोतों से भी स्थापित किया है लेकिन दुर्भाग्यपूर्ण काम नहीं करना चाहता है एक्सडी

    वैसे भी, LUA कुछ ऐसा है जिसे मैं सीखना चाहिए और इस प्रकार की टाइलों के साथ एक-दूसरे के चेहरे को देखने से बेहतर कुछ भी नहीं है।

    इसे जारी रखें, आप भीतर से एक लेखक बनने की राह पर हैं DesdeLinux

    1.    नैनो कहा

      और हाँ, मैं कॉलेज में हूँ और इस बकवास में उनके पास लिनक्स xD नहीं है

      1.    विरोधी कहा

        धन्यवाद नैनो। लेकिन, क्या आप लेख प्रकाशित होने के बाद मेरी मदद कर सकते हैं? मैं नही अ।

        1.    नैनो कहा

          हां, उन्हें शांत करें, उन्हें छोड़ दें क्योंकि वे मुझे ठीक करने से बेहतर हैं

  5.   ज़ायकीज़ो कहा

    धन्यवाद विरोधी, मैं निश्चित रूप से XMonad एक कोशिश करूँगा। मैं देखता हूं कि यह बहुत जटिलता की आवश्यकता के बिना बुनियादी हास्केल चीजों का उपयोग करता है जैसे कि गार्ड, एप्लिकेशन ऑपरेटर और जाहिर है सूचियों का उपयोग (अन्यथा यह हास्केल एक्सडी नहीं होगा)।

    आइए देखें कि यह कैसा दिखता है! 🙂

  6.   फर्नांडो कहा

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

    यदि आपके पास यह ठीक है, जब मेरे पास है, तो मैं आपको बता सकता हूं ताकि आप इसे यहां प्रकाशित कर सकें।

    वैसे और आपकी अनुमति से, मैं अपनी छोटी सी वेबसाइट पर थोड़ा सा विज्ञापन करता हूं, अगर आप चाहें तो किसी भी प्रकाशन में आपकी रुचि देख सकते हैं:

    http://niferniware.sytes.net

    नमस्ते!

    1.    MSX कहा

      अगर यह बहुत बढ़िया है 3 मैं निश्चित रूप से इसमें दिलचस्पी ले रहा हूं।

  7.   फर्नांडो कहा

    एक विवरण, वेब का वह भाग जहाँ मैंने ब्लॉग होस्ट किया है:
    http://niferniware.sytes.net/blog/

    मुझे गलती का दुख है।

    एक जयकार!

    1.    इलाव कहा

      मुझे वास्तव में आपका ब्लॉग पसंद आया ... ^ ^

      1.    फर्नांडो कहा

        बहुत बहुत धन्यवाद Elav, हम संपर्क में हैं!

        सच तो यह है कि एक तरह से DesdeLinux इसने मुझे अपना ब्लॉग बनाने के लिए प्रेरित किया। लिनक्स का उपयोग करने में इतना समय बिताने से व्यक्ति बदले में कुछ योगदान करने पर विचार करता है ^^

        नमस्ते!

  8.   MSX कहा

    "अगर आप सोच रहे हैं कि मैंने अपने डेस्क के लिए उन चार अक्षरों को क्यों चुना, तो मुझे डीएनए के चार न्यूक्लियर बेस याद आ गए।"
    मीठा, १

    1.    विरोधी कहा

      खैर, मुझे वास्तव में अपने डेस्क पर डीएनए लगाने का विचार पसंद है।

  9.   हलोंसोव कहा

    बहुत बढ़िया गाइड, उसके लिए धन्यवाद, मैं बस xmonad की कोशिश कर रहा हूं, और मैं केवल इसके बारे में एक बात कह सकता हूं, मुझे xmonad से प्यार हो गया, मैं अभी भी इस पर अपना हाथ नहीं डालता हूं और अभी भी यह बहुत अच्छा लगता है, बहुत बहुत धन्यवाद

    1.    MSX कहा

      बहुत बढ़िया, हम आशा करते हैं कि आपकी प्रगति एक पोस्ट में बदल जाएगी! =)

  10.   विक्टर सैल्मरन कहा

    ट्यूटर के लिए एक छोटा सा अवलोकन, इस समय मैं डेबियन स्थिर (निचोड़) का उपयोग करता हूं, और dmenu को स्थापित करने के लिए, यह एप्टीट्यूड इंस्टॉल dmenu के साथ नहीं किया जाता है, लेकिन बेकार-टूल्स पैकेज के साथ, अन्यथा, उत्कृष्ट ट्यूटोरियल

    1.    विरोधी कहा

      यही योग्यता इसे ठीक करती है। इसके अलावा, आदेश इस तरह से बेहतर समझा जाता है।

  11.   टैरंटोनियो कहा

    यह मार्गदर्शिका मानती है कि आपके पास x स्थापित है।
    मेरे मामले में, मैं केवल डेबियन कंसोल से शुरू करता हूं, जिसके साथ मुझे xorg स्थापित करना था। यह ठीक होगा, क्योंकि हम जो देख रहे हैं वह एक न्यूनतम वातावरण है, ग्राफिकल वातावरण के बिना एक डेबियन के साथ शुरू होता है, सरल मोड में xmonad स्थापित करना और उपकरण और कंसोल प्रोग्राम जोड़ना, जैसे कि म्यूट, irssi, आदि।

    1.    विरोधी कहा

      हां, एक्स पहले से ही थे। पोस्ट स्वयं बताती है कि मैंने ओपनबॉक्स के साथ पहले से ही बनाए गए एक न्यूनतम डेबियन के साथ शुरुआत की।