আপনি i3 উইন্ডো ম্যানেজারে অ্যাপ্লিকেশনগুলির স্ব-স্টার্টিংয়ের সাহায্যে লেআউটটি কীভাবে প্রয়োগ করবেন?


23

এটি আই 3 উইন্ডো ম্যানেজারের সাথে পৃথক ওয়ার্কস্পেসগুলিতে কীভাবে অ্যাপ্লিকেশনগুলি স্বস্টার্ট করতে হবে এবং কনফিগারেশন ফাইলের মধ্যে কী করা যায় এবং কী করা যায় না তার পূর্ববর্তী প্রশ্নের একটি ফলোআপ ।~/.i3/config

প্রথমত, আর্ক লিনাক্স ডকুমেন্টেশনের উপর ভিত্তি করে প্রদত্ত সমাধান এবং অপের মাধ্যমে সরবরাহিত একটি আপডেট যেখানে তিনি যুক্তিকে আরও ধাক্কা দেন:

exec --no-startup-id i3-msg 'workspace 1:Web; exec /usr/bin/firefox'
exec --no-startup-id i3-msg 'workspace 1; exec firefox; workspace 2; exec urxvt; workspace 1'

আগ্রহের বিষয় এই যে বিনিময়টি হ'ল ডুপ্লিকেট ছাড়াই কমান্ড লাইনে সরাসরি কিছুটি ব্যবহার করা সম্পর্কে:

i3-msg workspace 3; i3-msg exec firefox
i3-msg workspace 9; i3-msg exec chromium

কিন্তু আমি করেছি কখনো একটি কনফিগারেশন যা অনেক জানালা autostarts / একটি পছন্দসই উল্লম্ব বা অনুভূমিক বিন্যাস অনুযায়ী প্রতিটি কর্মক্ষেত্র অ্যাপ্লিকেশানগুলি দেখা যায়। আমার লক্ষ্যটি হ'ল আমি ব্যবহার করা এই সাধারণ কনফিগারেশনটি অটোস্টার্ট করা:

 _____ _____     ___________     ___________
| lx  | lx  |   |        |u_|   |     |     |   proportions:
|_____|_____|   |  FF    |lx|   |spacefm    |   1- 25% each
|medit| lx  |   |        |__|   |     | vlc |   2- 75/25 x 25/50/25
|_____|_____|   |________|u_|   |_____|_____|   3- 50/50
      1               2               3

সুতরাং এটি configফাইলের মধ্যে কিছু দিয়ে শুরু হয় :

exec --no-startup-id i3-msg 'workspace 1; exec i3-sensible-terminal; layout toggle split; layout splitv; split vertical; exec i3-sensible-terminal; exec i3-sensible-terminal; exec i3-sensible-terminal; workspace 2; exec firefox; exec urxvt; exec i3-sensible-terminal; exec urxvt; workspace 3; exec spacefm; exec vlc'

তবে বিশ্বে কীভাবে আপনি চান লেআউট এবং উল্লম্ব / অনুভূমিক বিভাজনের প্রকারটি অর্জন করতে পারেন? আমি চেষ্টা করছি, তবে আপনি কীভাবে কার্যনির্বাহীকরণ এবং বিন্যাসকে "মিশ্রিত" করবেন তা পরিষ্কার নয়। সিনট্যাক্সটি শুরু করতে আইডিসিঙ্ক্র্যাটিক অনুভব করে কারণ আপনি i3-imgi3 এর কনফিগারেশনের মধ্যেই চালাচ্ছেন। আপনি কি প্রতিটি কলের মধ্যে ( split h- বা v) - layout split v- exec layout split v- focus down(অথবা ডান) ব্যবহার করেন exec?

একটি একক ওয়ার্কস্পেসের জন্য, কনফিগারেশনটি সমস্ত অ্যাপ্লিকেশনগুলি উল্লম্ব বা অনুভূমিকভাবে শুরু করে এবং আমি লেআউটটিকে প্রভাবিত করতে পারি না - বা splitচেইনের শেষ কমান্ডটি সিদ্ধান্ত নেয় যে উইন্ডোগুলি উল্লম্বভাবে বা অনুভূমিকভাবে যুক্ত হয়েছে কিনা। i3-msgআপাতদৃষ্টিতে কমান্ডের কিছু অংশ উপেক্ষা করে যা কিছু ক্ষেত্রে সঠিকভাবে ফর্ম্যাট হয় না তাই এটি ডিবাগ করা শক্ত। এটি আরও জটিল করে তুলেছে যে startxফলাফলগুলি যাচাই করার জন্য আপনাকে বার বার সত্যমতো এক্স ছাড়তে হবে এবং পুনরায় কনফিগারেশনকে সতেজ করে তোলা mod+shift+Rহবে না এমনকি আপনি প্রতিটি ওয়ার্কস্পেসের সমস্ত কিছু বন্ধ করে দিলেও।

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


এছাড়াও বিস্তৃতি এই

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

আপনি কি আপনার i3-ফাইলের অংশটি সংরক্ষিত / পুনরুদ্ধারকৃত জসন-লেআউটের সংমিশ্রণে আপলোড করতে পারেন? আমারও একই সমস্যা .. তবে এটি কাজে লাগবে না। আপনি কি আপনার কনফিগারেশন / জসন ফাইলে একাধিক প্রদর্শন ব্যবহার করেন?

উত্তর:


11

আমি বিশ্বাস করি যে আপনি নতুন লেআউট-সংরক্ষণ বৈশিষ্ট্যটি সন্ধান করছেন যা i3 v4.8 (2014-06-15) এ চালু হয়েছিল । লিঙ্কযুক্ত ডকুমেন্টেশন বেশ পুরোপুরি মনে হচ্ছে।

ডকুমেন্টেশন থেকে উদ্ধৃতি:

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

... এবং প্রকাশের নোটগুলি :

TL; ড: রপ্তানি 1 JSON ফাইল হিসাবে আপনার বর্তমান লেআউট, নতুন i3 সেশন সেটিকে লোড, স্থানধারক যে উইন্ডো প্রকৃত অ্যাপ্লিকেশান দ্বারা প্রতিস্থাপন করা হবে একবার আপনি তাদের শুরু পেতে।


1. আপনি প্রয়োজন হতে পারে Perl-anyevent-i3 এবং Perl-JSON-XS ব্যবহার করতে প্যাকেজ i3-save-treeইউটিলিটি।


3
লেআউট বৈশিষ্ট্যটি অবাক করে ব্যবহার করা চ্যালেঞ্জিং। অ্যাপ্লিকেশনগুলিকে "গিলতে" প্লেসোল্ডার উইন্ডো সম্পর্কে তাদের ধারণার অর্থ হল যে আপনি যদি একই অ্যাপ্লিকেশনটির মতো lxterminalবা urxvtএকক ওয়ার্কস্পেসের জন্য বহুবার চান তবে আপনাকে --name somethingতাদের .i3 / কনফিগারেশনে কার্যকর করার সময় তাদের আলাদা করতে হবে । দস্তাবেজের উদাহরণটি কাজ করে তবে আমি যখন আমার ওয়ার্কস্পেসের একটি থেকে এক্সপোর্ট ব্যবহার করি তখন মনে হয় না যে এটি কাজ করবে। আপনি নাম এবং উদাহরণের জন্য ক্লাস ব্যবহার করেন - নাম ব্যবহার করে যা ব্যবহার করেছেন তার জন্য। এই ক্ষেত্রে আমি কেবলমাত্র গুই সরঞ্জামটির জন্য গুরুত্ব সহকারে আশা করতে পারি, যেহেতু জসন ফর্ম্যাটে এতে অনেকগুলি বন্ধনী রয়েছে!

1
আমি এখন 4.8 এ আপডেট করেছি এবং আমি এই নতুন বৈশিষ্ট্যটি নিয়ে বেশ খুশি। .i3/configপূর্ববর্তী সংস্করণগুলি থেকেও লগইন করার সময় নির্ভরযোগ্যভাবে জিনিস শুরু করতে আমার সর্বদা কিছুটা সমস্যা ছিল , তবে একবার আমি সঠিকভাবে লগ ইন করলে সবকিছু ঠিকঠাক হয়ে যায়। আমি যা করেছি তা হ'ল কয়েকটি বিন্যাস সাজানো এবং সেভ করা, তবে কেবলমাত্র জসন ফাইলগুলির শ্রেণি ভেরিয়েবলগুলি সম্পাদনা করুন। তারপরে i3-msg workspace 2\; append_layout mylayout.json\;এবং এর পরে কিছু i3-msg exec lxterminal\; exec lxterminal\; exec lxterminal\; exec meditআপনার প্রথম পছন্দসই বিন্যাস পুনরুদ্ধার করা উচিত। // আমার উত্তর উন্নতির জন্য ধন্যবাদ, বিটিডাব্লু।
দামেইন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.