বিভিন্ন ডেস্কটপ পরিবেশের জন্য বিভিন্ন ডিফল্ট অ্যাপ্লিকেশন সেট করা


9

আমি উবুন্টু 12.04 ডিফল্ট ইউনিটি ইন্টারফেস সহ ব্যবহার করছি। আমি পরে কেডিপি ডেস্কটপ, এক্সএফসিই, এলএক্সডিই, জিনোম-শেল এবং দারুচিনি ইনস্টল করেছি।

Unক্যের চেয়ে কে-ডি-ই বিভিন্ন ডিফল্ট অ্যাপ্লিকেশন নিয়ে আসে

  • kwrite পাঠ্য সম্পাদনার জন্য,
  • konsole ভার্চুয়াল টার্মিনাল হিসাবে,
  • kfontview হরফ দেখার এবং ইনস্টল করার জন্য,
  • dolphin ফাইল ব্রাউজার ইত্যাদি হিসাবে

অন্যান্য ডিই কিছু অন্যান্য ডিফল্ট অ্যাপ্লিকেশন নিয়ে আসে।

সমস্যা দেখা দেয় যখন আপনি কোনও ফাইল যেমন টেক্সট ফাইল খুলতে চান, যা দিয়ে উভয়ই খুলতে পারেন geditএবং kwrite, আমি kwriteকেডিএতে এবং geditityক্য বা জিনোমে ব্যবহার করতে চাই । তবে, এটি সেট করার কোনও উপায় নেই। আমি কেডিএইচ এবং ইউনিটি উভয়ই সম্পর্কিত সেটিংস পরিবর্তন করে পাঠ্য ফাইলের জন্য ডিফল্ট অ্যাপ্লিকেশন সেট করতে পারি তবে এটি ডিই উভয়ের জন্য ডিফল্ট হয়ে যায়।

উদাহরণস্বরূপ, আমি kfontviewerযদি কে ডি কে ডিফল্ট ফন্ট দেখার অ্যাপ্লিকেশন হিসাবে সেট করি তবে আমি Iক্য বা জিনোমে থাকাকালীন ফন্টগুলিও খোলে। এটি একটি সমস্যা কারণ অন্যান্য ডিই এর প্রোগ্রাম লোড করতে ব্যবহৃত ডিই এর ডিফল্ট চেয়ে অনেক বেশি সময় নেয়।

আমার প্রশ্নটি: আমি কি ডিই এর জন্য বিভিন্ন ডিফল্ট অ্যাপ্লিকেশন ব্যবহার করতে পারি? কিভাবে?


উত্তর:


5

আপনার সমস্যাটি সমাধান করার জন্য আমি এই সমাধানটি একসাথে রেখেছি এবং এটি কেডিএ এবং এক্সএফসিইতে টেক্সট ফাইল এবং ফন্ট ফাইল খোলার মাধ্যমে পরীক্ষা করেছি। এটি একটি জেনেরিক সমাধান যা কোনও সংখ্যক ডেস্কটপ পরিবেশ এবং মাইম ধরণের ক্ষেত্রে প্রযোজ্য। এটি যেভাবে কাজ করে সেখানে কাস্টম-ওপেন নামে একটি সাধারণ অজগর স্ক্রিপ্ট রয়েছে যা বিভিন্ন ডেস্কটপ পরিবেশের জন্য বিভিন্ন অ্যাপ্লিকেশন ব্যবহার করে একটি ফাইল খুলবে। সমাধান সমাধানের জন্য এই পদক্ষেপগুলি:

  1. আপনার পথে পছন্দসইভাবে আপনার কম্পিউটারে কাস্টম-ওপেন স্ক্রিপ্ট সংরক্ষণ করুন তবে তা হওয়ার দরকার নেই।
  2. আপনার হোম ডিরেক্টরিতে .custom-open.ini সংরক্ষণ করুন। / .Custom-open.ini
  3. আপনি এটির দ্বারা পরিচালিত যে কোনও ফাইল ধরণের ডিফল্ট অ্যাপ্লিকেশন হিসাবে কাস্টম-ওপেন সেট করুন।

কাস্টম খোলা

#!/usr/bin/env python
import traceback, sys, os, ConfigParser, os.path
from subprocess import Popen, check_output
from gtk import MessageDialog, MESSAGE_ERROR, BUTTONS_CLOSE

try:
    file, desktop = sys.argv[1], os.environ['DESKTOP_SESSION']
    mime = check_output(['file', '--mime-type', file]).strip().split(': ')[1]
    config = ConfigParser.RawConfigParser()
    config.read(os.path.expanduser('~/.custom-open.ini'))
    cmd = config.get(desktop, mime)
    Popen([cmd] + sys.argv[1:])
except:
    msg = "CUSTOM OPEN ERROR\n\n" + traceback.format_exc()
    MessageDialog(None, 0, MESSAGE_ERROR, BUTTONS_CLOSE, msg).run()

কাস্টম-open.ini

[gnome]
text/plain = gedit
application/x-font-ttf = gnome-font-viewer

[xubuntu]
text/plain = leafpad
application/x-font-ttf = gnome-font-viewer

[kde-plasma]
text/plain = kate
application/x-font-ttf = kfontview

সুতরাং এই সমাধানটির দুর্দান্ত যা হ'ল আপনি যতটা নতুন ডেস্কটপ এনভায়রনমেন্ট চান যতটা আপনি চান এবং যতটা মাইম টাইপ আপনি চান তা যুক্ত করতে পারেন। ডেস্কটপ পরিবেশের জন্য আপনার কোন নামটি সরবরাহ করা উচিত তা পরীক্ষা করতে একটি টার্মিনালে নীচের কমান্ডটি চালান।

env | grep -i DESKTOP_SESSION

ঠিক চালানো কোনও ফাইলের সঠিক মাইম ধরণের পরীক্ষা করতে:

file --mime-type filename

সম্পাদনা করা হয়েছে: প্রতীকী লিঙ্কগুলির প্রয়োজনীয়তা অপসারণ করা হয়েছে এটির ব্যবহারটি আরও সহজ করা উচিত। আমি একটি গ্রাফিকাল ত্রুটি হ্যান্ডলার যুক্ত করেছি যা কোনও ত্রুটি দেখা দিলে একটি সতর্কতা এনে দেবে।


1
আপনার উত্তর করার জন্য আপনাকে ধন্যবাদ। আমি আপনার পদক্ষেপগুলি অনুসরণ করেছি এবং সমস্ত স্ক্রিপ্ট, লিঙ্ক এবং ফাইল তৈরি করেছি। আপনার সমাধানটি কমান্ড লাইনের আকারে দুর্দান্ত কাজ করে এবং বিজ্ঞাপন হিসাবে সম্পাদন করে। তবে যখন আমি কোনও নির্দিষ্ট ফাইল টাইপ খোলার জন্য স্ক্রিপ্টটি (বা বরং প্রতীকী লিঙ্ক) ডিফল্ট অ্যাপ্লিকেশন হিসাবে সেট করার চেষ্টা করি তখন এটি ব্যর্থ হয় এবং দ্বিতীয় ডিফল্টে ফিরে যায়। আমি জানি না, আমি যদি কিছু ভুল করছি।
গ্লুটানীমেট

স্ক্রিপ্টটিকে আমি কীভাবে ডিফল্ট অ্যাপ্লিকেশন হিসাবে সংজ্ঞায়িত করেছি: ১) ~ / .local / share / অ্যাপ্লিকেশন co.desktopসহ একটি লঞ্চার ( ) তৈরি করুন Exec=/home/user/.scripts/Customization/Defaultapps/custom-open-text। 2.) সম্পাদনা ./local/share/applications/mimeapps.listও নিম্নলিখিত ডিফল্ট সমিতি যোগ করুন: text/plain=co.desktop। এই পদ্ধতিতে কোন ভুল খুঁজে পেতে?
গ্লুটানীমেট

1
ঠিক আছে নতুন সংস্করণটি ব্যবহার করে দেখুন, এটি ব্যবহার সহজ করার জন্য আমি কিছু বর্ধন করেছি। আমি গ্রাফিকাল ত্রুটি হ্যান্ডলারটিও যুক্ত করেছি তাই এখন এটির ত্রুটির বার্তার সাথে একটি সতর্কতা পপআপ করা উচিত। আবার চেষ্টা করুন এবং ত্রুটি বার্তাটি একটি মন্তব্যে পোস্ট করুন যদি এটি এখনও কাজ না করে। এছাড়াও আপনি উবুন্টুর কোন সংস্করণ এবং কোন ডেস্কটপ পরিবেশের চেষ্টা করেছেন তা উল্লেখ করতে পারেন।
মারওয়ান আলসাববাগ

এটি কাজ করে এবং এটি দুর্দান্তভাবে কাজ করে (এলএক্সডিইডি / ইউনিটি ব্যবহার করে)! আপনার সমাধান এই অনুগ্রহের প্রতিটি একক পয়েন্ট প্রাপ্য। এটি করার জন্য সময় দেওয়ার জন্য আপনাকে অনেক ধন্যবাদ। (পিএস: আমি এখনও মনে করি যে ডিফল্টরূপে উবুন্টুর সাথে এই জাতীয় কোনও ফাংশন আসা উচিত DE ডি-হপিং জনপ্রিয় অনুশীলন না হলেও এটি সরকারী সমাধানের নিশ্চয়তা দেওয়ার পক্ষে যথেষ্ট সাধারণ বিষয়))
গ্লুটানিমেট

1
আমি দুঃখিত, তবে আমি ওপি নই, আমি কেবল অনুগ্রহ স্থাপন করেছি। @ অলিভ টুইস্টকে উত্তর হিসাবে তার নিজের প্রশ্ন চিহ্নিত করতে হবে।
গ্লুটোনিমেট

2

যদি আপনি এটি করতে "সঠিক" উপায়টি না খুঁজে পান তবে আপনি একটি ব্রুট ফোর্স পদ্ধতিটি এমন কিছু ব্যবহার করতে পারেন:

  1. একটি ডেস্কটপ পরিবেশে সমস্ত ডিফল্ট সেট করুন
  2. cd $HOME;ls -Rlrt | lessসবেমাত্র ফাইলগুলি কীভাবে আপডেট হয়েছিল - এটি যেখানে পছন্দগুলি সংরক্ষিত হয়েছিল তা সন্ধান করার মতো কিছু করুন
  3. প্রতিটি ডেস্কটপ পরিবেশের জন্য এই ফাইলগুলির একটি পৃথক অনুলিপি করুন (ব্যাক আপ)।
  4. প্রতিটি ডেস্কটপ পরিবেশের জন্য পুনরাবৃত্তি
  5. সেই ডেস্কটপ পরিবেশে স্যুইচ করার ঠিক আগে যথাযথ সেটটি অনুলিপি করুন (সম্ভবত লগ আউট করে এবং আবার লগ ইন করে এবং নতুন ডেস্কটপ পরিবেশ নির্বাচন করে)।

আশা করা যায়, শেল স্ক্রিপ্ট থেকে ডেস্কটপ পরিবেশের সুইচ করার একটি উপায় রয়েছে যেখানে ডেস্কটপ পরিবেশটি এটির কনফিগারেশন ফাইলগুলি কোথা থেকে পাবেন তা জানানোর বিকল্প রয়েছে telling এটি সার্বক্ষণিকভাবে ফাইলগুলি সরানোর চেয়ে পরিষ্কার হতে পারে তবে আমি কীভাবে বা কীভাবে এটি কাজ করে তা নিয়ে গবেষণা করিনি।

আরেকটি, খুব সহজ সমাধান, তবে আপনি যা চেয়েছিলেন ঠিক তা নয়, কেবলমাত্র এটি হবে:

  1. প্রতিটি ডেস্কটপ পরিবেশের জন্য পৃথক ব্যবহারকারী অ্যাকাউন্ট তৈরি করুন
  2. এই ব্যবহারকারীদের জন্য একটি নতুন গ্রুপ তৈরি করুন
  3. এই সমস্ত ব্যবহারকারীদের নতুন দলে যুক্ত করুন
  4. এই সমস্ত ব্যবহারকারীর -rwxrwxr-x ( chmod 775 list-of-files-and-directories) থেকে আপনার অ্যাক্সেস করার জন্য কোনও সাধারণ ডেটা ফাইল তৈরি করুন । এইভাবে আপনি যে কোনও "ব্যবহারকারী" প্রথমে লিখেছেন এমন কোনও ফাইলে লিখতে চেষ্টা করার অনুমতি ত্রুটিগুলি পাবেন না।

    • আপনি যদি এই সমস্ত ব্যবহারকারীর মধ্যে কিছু ফাইল একইরকম হতে চান তবে আপনি সেগুলিকে একটি ব্যবহারকারীর মধ্যে তৈরি করতে এবং তাদের বাকীগুলির সাথে সিমলিংক করতে পারেন। এটি কাজ করা উচিত, তবে আপনি যখন তাদের কোনও পরিবর্তন করেন তখন সেগুলি সেভাবে সেট আপ করার কথা মনে রাখা দরকার। উদাহরণস্বরূপ, আপনি যদি এগুলির একটিতে সম্পাদনা করেন এবং আপনার সম্পাদক একটি ব্যাকআপ ফাইল তৈরি করেন তবে সেই ব্যাকআপ ফাইলটি কেবল তখনই সংরক্ষণ করা হবে যেখানে আপনি এটি সম্পাদনা করেছেন, অন্য সমস্ত ব্যবহারকারীর অ্যাকাউন্টে নয়।

আপনি খেয়াল করতে পারেন যেখানে প্রতি ব্যবহারকারী ফাইল সমিতিগুলি সংরক্ষণ করা হয়~/.local/share/mime/
রোবটহমানস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.