समस्या का विस्तार
कई हफ्ते पहले, मैंने फ़ायरफ़ॉक्स को उसके ऑस्ट्रेलिस मोड में, फ़ायरफ़ॉक्स ESR के बजाय फ़ायरफ़ॉक्स 54 का उपयोग करके कुछ समय बिताया (फ़ायरफ़ॉक्स 57 के रिलीज़ से पहले), यह पता लगाने की कोशिश कर रहा था कि आगामी, अत्यधिक भ्रमित, अत्यधिक डरावना वेबएक्सटेंशन फियास्को उतना ही फूबारी होने वाला है जितना अपेक्षित था। अब, वह बात नहीं है। बस एक परिचय।
मेरे परीक्षण के दौरान, मैंने कई नई थीम्स भी आज़माईं - जिसमें मोज़िला के अपने कॉम्पैक्ट लाइट और कॉम्पैक्ट डार्क शामिल हैं, क्लासिक उपयोग मॉडल की ओर एक संकेत - अभी भी महत्वपूर्ण नुकसान के साथ, जिसमें बुकमार्क्स टूलबार का स्थान टैब कंट्रोल के नीचे और मुख्य व्यू क्षेत्र के बहुत करीब शामिल है, जिससे दृश्य अव्यवस्था होती है। फिर, मैंने स्पेस फैंटेसी नामक एक थीम भी आज़माई, जो काफी साफ़ दिखती है।
एक अलग डिवाइस पर, स्पेस फैंटेसी थीम ने काम नहीं किया, इसलिए मैंने इसे हटा दिया। बदले में, इसने इसे फ़ायरफ़ॉक्स में उपलब्ध थीम्स की शॉर्टलिस्ट से गायब कर दिया, और साथ ही, मैं इसे मोज़िला की ऐड-ऑन साइट पर नहीं ढूंढ सका! माना जाता है कि यह वहां होना चाहिए, लेकिन यह नहीं है। इसलिए किसी अन्य सिस्टम पर किसी अन्य प्रोफ़ाइल से पोर्ट करने का सवाल उठा।
प्रोफाइल्स के बीच पर्सनास कैसे ले जाएं
इस ट्रिक का जोर पर्सनास को कैसे प्राप्त करें पर है - यदि वे कहीं और उपलब्ध नहीं हैं। वास्तव में, यह एक सरल अनुरोध है। यदि आपने एक थीम इंस्टॉल की है, तो आप इसे अपनी फ़ायरफ़ॉक्स प्रोफ़ाइल में ढूंढना चाहते हैं। मैं आपको दिखाऊंगा कि यह कैसे करना है, तो आइए पहले फुल थीम्स और लाइट थीम्स के बीच अंतर करें, जिन्हें पर्सनास के रूप में भी जाना जाता है, एक विषय जिस पर मैंने युगों पहले चर्चा की थी।
फुल थीम्स प्रोफ़ाइल फ़ोल्डर के एक्सटेंशन्स सब-डायरेक्टरी में उपलब्ध हैं। प्रोफ़ाइल का स्थान आपके ऑपरेटिंग सिस्टम पर निर्भर करता है। विंडोज़ में, आप इसे यहां पा सकते हैं:
लिनक्स में, यहां:
डिफ़ॉल्ट मानते हुए, वह है।
अब, पर्सनास प्रोफ़ाइल फ़ोल्डर के अंदर एक बार फिर prefs.js फ़ाइल में घोषणाओं के रूप में उपलब्ध हैं, जैसा कि ऊपर के स्क्रीनशॉट में दिखाया गया है। आइए इस फ़ाइल के एक विशिष्ट खंड को देखें, क्या हम?
user_pref("lightweightThemes.selectedThemeID", "recommended-2");
user_pref("lightweightThemes.usedThemes", "[{\"id\":\"recommended-2\",\"name\":\"Space Fantasy\",
\"headerURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/2.header.jpg\",
\"footerURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/2.footer.jpg\",
\"textcolor\":\"#ffffff\",\"accentcolor\":\"#d9d9d9\",
\"iconURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/2.icon.jpg\",
\"previewURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/2.preview.jpg\",
\"author\":\"fx5800p\",\"description\":\"Space Fantasy is (C) fx5800p. Available under CC-BY-SA. No warranty.\",
\"homepageURL\":\"https://addons.mozilla.org/
firefox/addon/space-fantasy/\",
\"version\":\"1.0\"},
{\"id\":\"recommended-4\",\"name\":\"Pastel Gradient\",
\"headerURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/4.header.png\",
\"footerURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/4.footer.png\",
\"textcolor\":\"#000000\",\"accentcolor\":\"#000000\",
\"iconURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/4.icon.png\",
\"previewURL\":\"resource:///chrome/browser/content/
browser/defaultthemes/4.preview.png\",
\"author\":\"darrinhenein\",\"description\":\"Pastel Gradient is (C) darrinhenein. Available under CC-BY. No warranty.\",
\"homepageURL\":\"https://addons.mozilla.org/firefox/
addon/pastel-gradient/\",
\"version\":\"1.0\",\"updateDate\":1499641520955,
\"installDate\":1499641520955}]");
...
जटिल और बदसूरत दिखता है - स्पष्टता के लिए मैंने जानबूझकर लाइन्स तोड़ी हैं! लेकिन आइए समझते हैं कि हमारे पास यहां क्या है। हमारे पास कई यूजर प्राथमिकताएं (user_pref) हैं। पहली, लेबल lightweightThemes.selectedThemeID परिभाषित करती है कि कौन सा सक्रिय है। अब तक इतना सरल।
दूसरा lightweightThemes.usedThemes आपके सिस्टम में वर्तमान में मौजूद थीम्स की एक कॉमा-सीमित सूची है - आप इन्हें टूल्स > ऐडऑन्स > अपीयरेंस के माध्यम से भी देख सकते हैं। सूची एक बदसूरत JSON-जैसे प्रारूप का पालन करती है लेकिन इससे आपको चिंता नहीं होनी चाहिए।
यदि आप एक प्रोफ़ाइल से दूसरी प्रोफ़ाइल में पर्सनास माइग्रेट करना चाहते हैं, तो आपको केवल इस घोषणा के एक भाग को कॉपी करना होगा और इसे संबंधित लक्ष्य प्रोफ़ाइल में पेस्ट करना होगा। विशेष रूप से, हम स्पेस फैंटेसी पर्सन को कॉपी करना चाहते हैं। प्रत्येक थीम कर्ली ब्रैकेट्स द्वारा परिभाषित की जाती है, और दूसरों से कॉमा द्वारा अलग की जाती है। यहाँ थोड़ा अधिक साफ़ किया गया खंड है:
\"name\":\"Space Fantasy\",
\"headerURL\":\"resource:///chrome/browser/content/browser/->
-> defaultthemes/2.header.jpg\",
\"footerURL\":\"resource:///chrome/browser/content/browser/->
-> defaultthemes/2.footer.jpg\",
\"textcolor\":\"#ffffff\",
\"accentcolor\":\"#d9d9d9\",
\"iconURL\":\"resource:///chrome/browser/content/browser/->
-> defaultthemes/2.icon.jpg\",
\"previewURL\":\"resource:///chrome/browser/content/browser/->
-> defaultthemes/2.preview.jpg\",
\"author\":\"fx5800p\",
\"description\":\"Space Fantasy is (C) fx5800p. Available ->
-> under CC-BY-SA. No warranty.\",
\"homepageURL\":\"https://addons.mozilla.org/firefox/addon/->
-> space-fantasy/\",
\"version\":\"1.0\"}
P.S. डेस्कटॉप उपयोगकर्ता: -> वर्ण मेरे हैं, और वे इंगित करते हैं कि विशिष्ट निर्देश अगली लाइन पर बहता है। FYI, यह कॉमा द्वारा अलग किए गए key:value जोड़ी निर्देशों की एक सूची है, और विशेष वर्णों को स्पष्ट रूप से घोषित किया गया है (उद्धरण चिह्न " बन जाते \")। बदसूरत और नर्डी।
तो अब, आप स्रोत फ़ायरफ़ॉक्स प्रोफ़ाइल खोलें, prefs.js फ़ाइल खोलें, lightweightThemes.usedThemes अनुभाग पर जाएं, जिस थीम को आप किसी भिन्न प्रोफ़ाइल में माइग्रेट करना चाहते हैं उसे ढूंढें और विशिष्ट खंड को कहीं टेक्स्ट फ़ाइल में सेव करें। आवश्यक खंड एक कर्ली ब्रैकेट से शुरू होगा, एक के साथ समाप्त होगा, और इसमें उपरोक्त विभिन्न फ़ील्ड्स होंगे, एक चिकनी, बहती हुई लाइन में। मेरे उदाहरण के विपरीत, जिसे संक्षिप्तता के लिए कई लाइनों में तोड़ा गया है, यह एक बहुत लंबी लाइन होगी। इस पर ध्यान दें।
लक्ष्य प्रोफ़ाइल में, prefs.js फ़ाइल खोलें, lightweightThemes.usedThemes अनुभाग पर जाएं, और टेक्स्ट के स्निपेट को लाइन की शुरुआत या अंत में डालें, यह सुनिश्चित करते हुए कि आप सिंटैक्स को सही रखते हैं। ओपनिंग और क्लोजिंग स्क्वायर और कर्ली ब्रैकेट्स, और कॉमा की स्थिति और उपस्थिति पर ध्यान दें।
फ़ायरफ़ॉक्स लॉन्च करें, और अब आपके पास लक्ष्य प्रोफ़ाइल में गायब पर्सनास होने चाहिए, और आप उन्हें फिट देखते हुए लागू कर सकते हैं। यह एक उपयोगी ट्रिक है जब लाइटवेट थीम्स अचानक गायब हो जाती हैं, या आप उन्हें ऑनलाइन नहीं ढूंढ सकते।
निष्कर्ष
यह एक नर्डी लेख है। वास्तव में, prefs.js फ़ायरफ़ॉक्स के मामले में आपका आनंद, दर्द और आश्चर्य का स्रोत है, और यदि आपको HTML और CSS में ज्ञान की एक झलक है, तो लिनक्स में डेस्कटॉप थीम्स की तरह, आप ब्राउज़र को हैक करना शुरू कर सकते हैं ताकि यह आपके अनुसार दिखे और व्यवहार करे। पागल लगता है, लेकिन वह आधुनिक दुनिया वहीं है। JSON आपका आधुनिक प्रेतवाधित है।
फिर भी, इस सभी दार्शनिक विचार-विमर्श के बावजूद, मुझे आशा है कि आपको यह लेख उपयोगी लगेगा। कभी-कभी, पर्सनास आ और जा सकते हैं या गायब हो सकते हैं, और यह आपको पागल कर सकता है कि आप उनका फिर से उपयोग नहीं कर पा रहे हैं, खासकर जब से फ़ायरफ़ॉक्स विभिन्न प्रोफाइल्स के बीच थीम्स को माइग्रेट और इम्पोर्ट करने का एक तुच्छ तरीका प्रदान नहीं करता है। उम्मीद है, यहां गाइड आवश्यक समाधान प्रदान करता है। यह सबसे आसान या सबसे सुंदर नहीं है, लेकिन यह काम पूरा करता है। फिर मिलते हैं।
चीयर्स।