সি- কে কীভাবে আবদ্ধ করবেন (বাস্তবের জন্য (এই সময়ের জন্য সত্যিকারের জন্য গুরুত্ব সহকারে)


11

কোনও কিছুর সাথে বেঁধে C-[রাখার কোনও উপায় নেই এবং সমস্ত M-(মেটা) বাইন্ডিংগুলি গণ্ডগোল করে না?

না প্রথমবার এই প্রশ্নের আসে আপ। দুর্ভাগ্যক্রমে, পূর্ববর্তী থ্রেডে প্রদত্ত একমাত্র সমাধানটি হ'ল ) লিনাক্স নির্দিষ্ট, খ) একটি বাহ্যিক সরঞ্জাম প্রয়োজন (আবার লিনাক্স নির্দিষ্ট) যা ইমাসের সাথে কিছুই করার নেই। একই শিরাতে আমি ইমাসকে পাবারC-[ আগে ক্রমটি চুরি করতে কোনও ওএস এক্সে কারাবিনারের মতো কিছু ব্যবহার করতে পারতাম তবে এটি আটকানো এবং ব্যয়বহুল।

প্রদত্ত এটি এ গিয়ে Emacs যে অনুবাদ উপর জোরাজুরি হয় C-[থেকে ESC, C-iথেকে TABএবং সম্ভবত অন্যদের আমি করব খুব এই সম্পর্কগুলি বিরতি এবং বহুমূল্য কী সিকোয়েন্স ফিরে পেতে চাই। সম্প্রতি আমি এই সমস্যায় পুরো গতিতে দৌড়েছি এবং নিরীহ নির্দোষ স্মার্টপেনস মোডকে দোষ দিয়েছি

একটি সম্ভাব্য সমাধান যা এখানে জড়িত function-key-mapএবং এখানে আলোচনা করাkey-translation-map হয়েছিল তবে হায় এটি এটি আর কাজ করে না বা প্রথম স্থানে কাজ করে না (বা আমি কিছু ভুল করছি)। আমি মনে করি এটি যদিও সঠিক পথে চলছে।


3
ইমাকস "অনুবাদ C-[করতে ESC" জোর দেয় না । দুটো একই জিনিস । একইভাবে, C-iএবং একই ASCII নিয়ন্ত্রণ কোডের TABবিভিন্ন নাম ।
ড্রু

2
@ ড্রু এটি সামান্যতম স্পষ্ট নয় যে নিয়ন্ত্রণের সাথে মূল সংমিশ্রণগুলি অবশ্যই একটি জিইউআই অ্যাপ্লিকেশনে এএসসিআইআই নিয়ন্ত্রণ কোডগুলিতে ম্যাপ করতে হবে (যার মধ্যে কেবল 32 রয়েছে)। (বা, হ্যাক, এমনকি এক্সটার্মেও, যা অনেক ক্ষেত্রে অনন্য পালানোর সিকোয়েন্সগুলি প্রেরণ করার জন্য একটি মডিফাইওথেরকিস মোড রয়েছে, যদিও আমি বিশেষত এগুলি সম্পর্কে নিশ্চিত নই)
র্যান্ডম 832

3
@ র্যান্ডম 832: আপনি অক্ষর থেকে কীগুলি আলাদা করতে ঠিক বলেছেন । কোনও সম্পাদকের পক্ষে কন্ট্রোল ক্যারেক্টারে (ওরফে চরিত্রটি) কী সিকোয়েন্সটি (টিপুন এবং হিট করুন ) ম্যাপ করা কিছুটা যৌক্তিক এবং সোজাসাপ্টা , তবে না, সম্পাদক ডিজাইনকারী কারও পক্ষে এটি বাধ্যতামূলক নয়। এবং হ্যাঁ, ইমাকস এটি করে। এবং একই অক্ষর, তবে কীগুলি + এবং কোনও নির্দিষ্ট অক্ষরকে ম্যাপ করার দরকার নেই। C-[Ctrl[C-[ESCC-[ESCCtrl[Esc
ড্রয়

উত্তর:


8

আমার নিজের কনফিগারেশন থেকে অভিযোজিত :

(define-key input-decode-map [?\C-\[] (kbd "<C-[>"))
(global-set-key (kbd "<C-[>") 'butterfly)

এটি স্পষ্টতই কেবল জিইউআইতে কাজ করবে।

সম্পাদনা: লক্ষ্য করুন input-decode-mapটার্মিনাল-স্থানীয় যা মাধ্যম পরিবর্তন এটি কাজ করবে না যদি আপনি ব্যবহার করছেন emacsclient, কিন্তু যদি আপনি ব্যবহার করছেন কি করতে হবে emacs। আমি আমার কনফিগারেশনে এটি কোনও ফ্রেমে অপারেটিং কমান্ডে মোড়ানো এবং হুকটিতে যুক্ত করে সমস্যার সমাধান করেছি after-make-frame-functions


ধন্যবাদ এই আইনী প্রদর্শিত! আমি ভাবছি যে ইমাটসকে মেটা এবং ইসএসসি একই জিনিস হিসাবে চিকিত্সা করা থেকে বিরত করার কোনও উপায় আছে কি? এছাড়াও আমি ভাবছি যে আমি কি কিছু
ইমাস টার্মিনোলজিকে খালি গুছিয়ে নিচ্ছি

1
এটি একটি আলাদা প্রশ্ন, দয়া করে এটির জন্য একটি নতুন খুলুন।
ওয়াসমাস

মজার ব্যাপার হচ্ছে <C-i>এবং <C-[>করতে বাউন্ড ফিরে TABএবং ESC: গ্লোবাল-মানচিত্রে আপনি আপনার কনফিগ ফ্ল্যাট আউট সুপারিশ আমার এ গিয়ে Emacs প্রত্যেক সময় আমি ওকে আঘাত ক্র্যাশ
zeRusski

1
হ্যাঁ, আপনি "জে" চিঠিটি ইনপুট দেওয়ার সময় হেলম ক্র্যাশ করার জন্য যে বাগটি দিয়েছিলেন সেই ব্যক্তি হিসাবে বিবেচনা করে আমি আপনার ইমাস বিল্ডটিকে ক্র্যাশ হওয়ার জন্য দোষ দিচ্ছি এবং আপনাকে ওএস এক্সের জন্য আলাদা কিছু চেষ্টা করার পরামর্শ দিচ্ছি
wasamasa

বিশ্বাস করুন আমি অনেকগুলি নির্মাণের চেষ্টা করেছি। আমি থাকতে হবে অন্য রহস্য হতে হবে। আমি পরিচালনা করব -) সমাধানের জন্য আপনাকে ধন্যবাদ
zeRusski
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.