আমি কি টার্মিনাল এমুলেটরের ভিতরে চিত্র দেখতে এবং চলচ্চিত্রগুলি দেখতে পাচ্ছি? ভার্চুয়াল কনসোলের ক্ষেত্রে আমি ফ্রেমবাফারের মাধ্যমে এটি করতে পারি, তবে টার্মিনাল এমুলেটরগুলির কী হবে?
আমি কি টার্মিনাল এমুলেটরের ভিতরে চিত্র দেখতে এবং চলচ্চিত্রগুলি দেখতে পাচ্ছি? ভার্চুয়াল কনসোলের ক্ষেত্রে আমি ফ্রেমবাফারের মাধ্যমে এটি করতে পারি, তবে টার্মিনাল এমুলেটরগুলির কী হবে?
উত্তর:
উদাহরণস্বরূপ - আমি আমার টার্মিনালের পটভূমি পরিবর্তন করতে চাই?
printf '\033}bp%s\000' \
'http://hdwalldesktops.com/wp-content/uploads/2014/02/background-backgrounds-high-resolution-abstract-picture-background-wallpaper.jpg'
এটি কিছু এক্সটেনশান এবং বেলিং ফেলে দিয়ে কিছুটা প্রসারিত ভিটি 100 অনুকরণ করে।
> Most escapes supported by xterm, rxvt etc. work
> Xterm 256 color escapes work
> Backgrounds (bitmap, scalable/vector, animated gif, videos)
> Transparency
> Bitmap and scalable fonts supported
> Themes for the layout and design
> URL, file path and email address detection and link-handling
> Inline display of link content
> Multiple copy and paste selections and buffer support
> Works in X11
> Works in Wayland
> Works directly in the linux framebuffer (fbcon)
> Can be finger/touch controlled
> Scan scale by UI scaling factors
> Can render using OpenGL or OpenGL-ES2 (not a requirement - just an
option)
> Can display inlined media content (images, video, documents)
> Can do multiple "tabs"
> Can do splitting into multiple panes
> Block text selection
> Drag and drop of text selections and links
> Can stream media from URLs
> Tab switcher has live thumbnail content
> Single process, multiple windows/terminals support
> Fast (gives urxvt a run for its money)
> Themable visual bell
> Compress backscroll
> Text reflow on resize
> Color palette selection
> More...
আপনি কি উপরে দেখতে পাচ্ছেন? এটি ফ্রেমবাফারে এটি করে ।
টার্মিনাল emulators বেশ কয়েকটি সমর্থন Sixel গ্রাফিক্স থেকে PySixel GitHub পৃষ্ঠা , তালিকা হচ্ছে:
আপনি পূর্বের উল্লিখিত পাইসিক্সেল সহ চিত্রগুলি প্রদর্শন করতে পারেন যা প্রয়োজনীয় রূপান্তর করতে সক্ষম বলে মনে হচ্ছে। অন্য বিকল্পটি থেকে সরঞ্জামগুলি ব্যবহার করা netpbm
। এমএলটারমে জেপিইজি চিত্রটি রূপান্তর করতে এবং প্রদর্শন করতে আমার নীচের ব্যবহার করে ভাল ফলাফল হয়েছে:
jpegtopnm image.jpg | pnmquant 256 | ppmtosixel >/dev/tty
ফলাফল:
এক্সটার্ম এছাড়াও সিক্সেল চিত্রগুলি প্রদর্শন করতে পারে, যদিও সমর্থনটি বর্তমানে 16 টি রঙের মধ্যে সীমাবদ্ধ (এবং এটি বগিও রয়েছে)। স্ক্রিপ্টগুলি নষ্ট হয়ে গেছে বলে মনে হলেও নমুনা চিত্রযুক্ত একটি সংরক্ষণাগারটি এখানে ডাউনলোড করা যায়। এক্সটার্ম সঠিক বিন্যাসের আউটপুট প্রদর্শন করে না ppmtosixel
(এটি শুরু / শেষে ব্যবহৃত নিয়ন্ত্রণ ক্রমগুলি সমর্থন করে না)। সন্ধানের আগে PySixel
, ppmtosixel
এক্সটির্ম প্রদর্শিত হবে এমন কিছুতে আউটপুট হ্যাক করতে আমি নীচের স্ক্রিপ্টটি ব্যবহার করেছি :
#!/bin/bash
echo -e '\eP0;0;0;q"1;2;400;400'
jpegtopnm "$1" |
pnmquant 16 |
ppmtosixel |
tail -n +2 |
head -c -3
echo -e '\x1b\x5c\x0d'
tput cup "$(tput lines)" 0
চিত্রগুলি ডিফল্ট ভিটি 420 মোডে প্রদর্শিত হবে না। কেবল ভিটি 240, ভিটি 241, ভিটি 330 বা ভিটি 340 মোডে সেগুলি প্রদর্শিত হবে। এছাড়াও --enable-sixel-graphics
বিল্ড বিকল্পটি প্রয়োজন। আমি ভিটি 340 ( xterm -ti vt340
) এর সাথে সেরা ফলাফল পেয়েছি । এখানে ফলাফল রয়েছে (প্রথমটি নমুনা সংরক্ষণাগার থেকে খুব শীতল ট্রোন চিত্র):
perl -wpe 'use bytes;s!([\x80-\x9f])!qq(\e).chr(ord($1)-64)!ge'
পিপিএমটোসিকেলের পরে দুর্দান্ত ফিল্টার হিসাবে কাজ করে (এবং আপনি যে কোনও সময় 8 বিট সি 1 কোডগুলি তাদের 7 বিটের সমতুল্যে স্যুইচ করতে চান)।
হ্যাঁ, সাজানো। উদাহরণস্বরূপ, ম্লেপ্লেয়ার একটি পাঠ্য টার্মিনালে ভিডিও আলিবি (মনোক্রোম) এবং লাইবকাচা (রঙ) উভয় সমর্থন করে । এটি ঠিক উচ্চ-রেজোলিউশন নয়, তবে কার্যকর "রেজোলিউশন" উপ-পিক্সেল "রেন্ডারিং এবং অস্থায়ী দৃষ্টিকোণ উভয়ই কার্যকর রেজোলিউশন বাড়ানোর সাথে সাথে, আপনি সাধারণত কী ঘটছে তা বলতে পারেন।
ইউনিক্স ওয়ার্ল্ড টার্মিনালে এমুলেটরগুলি সিরিয়াল টার্মিনালগুলি অনুকরণ করে, যেখানে ব্যবহারকারীকে ডেটা স্ট্রিম দেখানোর জন্য সিরিয়াল লাইনের উপরে একবারে পাঠানো হয়।
মোডেমের সময়ে এটি সাধারণত এক সেকেন্ডে 1000-2000 অক্ষরের কাছাকাছি ছিল তবে কেবল অনুকরণকৃত হার্ডওয়ারের সাথে জড়িত থাকলে আজ এটি আরও দ্রুত হতে পারে। পাঠানো বাইটগুলি বোঝার জন্য এটি তখন টার্মিনাল পর্যন্ত ছিল। সাধারণত এটি অক্ষর দেখাতে, কার্সারটি সরিয়ে নেওয়া এবং স্ক্রিন ডিসপ্লে ম্যানিপুলেট করার জন্য ছিল। কয়েকটি টার্মিনাল গ্রাফিক্স মোডে স্যুইচ করতে পারে - gnuplot সমর্থন বেশ কিছুটা - তবে ব্যান্ডউইথ ভিডিওর দিক থেকে আকর্ষণীয় কিছু করতে খুব ছোট।
তবুও, এমুলেটেড হার্ডওয়্যারযুক্ত একটি আধুনিক কম্পিউটারের জন্য একটি টার্মিনাল এমুলেটর বেশ কিছু করতে পারে। এর কিছু কিছু দেখার জন্য "ttyquake" শব্দটি দিয়ে ছবিগুলি অনুসন্ধান করার চেষ্টা করুন। যদিও আমি বলব যে আপনি যদি এইচডি পছন্দ করেন তবে আপনি সম্ভবত হতাশ হবেন।