Y কেন y instead এর পরিবর্তে y এর সমার্থক শব্দ?


28

এর কোন নির্দিষ্ট historicalতিহাসিক কারণ আছে কি?


পটভূমি - (আপনি যদি ইতিমধ্যে প্রশ্নটি বুঝতে থাকেন তবে আপনি এই অংশটি এড়িয়ে যেতে পারেন))

মধ্যবর্তী / অগ্রণী viব্যবহারকারীরা জানতে পারবেন, y"ইয়াঙ্ক" কমান্ডটি হ'ল - এটি নীচের আন্দোলন কমান্ড দ্বারা নির্দিষ্ট করা পাঠ্যকে কপি করে (অনুলিপি করে) Thus এইভাবে yeশব্দের শেষে y0yanks, কার্সার অবস্থান থেকে রেখার শুরুতে শুরু করে, y_পুরো বর্তমান লাইনটি y$ইয়াঙ্কস, কার্সার অবস্থান থেকে বর্তমান রেখার শেষ পর্যন্ত ইয়াঙ্কস ইত্যাদি

d(Delete) কমান্ড c(পরিবর্তন) কমান্ড উভয় এই গতি সব পাশাপাশি ব্যবহার করা যেতে পারে।

ddএটি একটি প্রতিশব্দ d_এবং পুরো বর্তমান লাইন মুছে দেয়। একইভাবে, এর ccপ্রতিশব্দ c_এবং বর্তমান লাইনটি পরিবর্তন করবে (যেমন এটি সমস্ত পাঠ্য মুছে ফেলবে এবং লাইনের শুরুতে আপনাকে সন্নিবেশ মোডে রাখবে)। **

"ইয়ঙ্ক" কমান্ড এই সম্মেলন অনুসরণ করে; yyপুরো বর্তমান লাইনটি ঠিক ঠিক মতো ইঙ্ক করে দেবে y_

প্রতিশব্দগুলির আরও একটি সেট রয়েছে: এর Dজন্য একটি প্রতিশব্দ d$এবং কার্সার অবস্থান থেকে রেখার শেষ পর্যন্ত মুছে ফেলা হবে। Cএর প্রতিশব্দ c$এবং এটি কার্সার অবস্থান থেকে পাঠ্যটি লাইনের শেষ দিকে পরিবর্তন করবে এবং আপনাকে নতুন পাঠ্য টাইপ করতে সন্নিবেশ মোডে রাখবে।

তবে এটির জন্য বা অন্য প্রতিশব্দ Yহ'ল এবং সম্পূর্ণ লাইনটি ইয়েঙ্ক করবেyyy_ , কেবল কার্সার থেকে শুরু করে লাইনের শেষ পর্যন্ত আপনি যেমনটি নিদর্শন Cএবং Dনিদর্শনগুলি থেকে প্রত্যাশা করবেন তা নয় ।


আমি বুঝতে পারি যে ভিমের সাথে এটি পশ্চাদপদ সামঞ্জস্যতা সংরক্ষণের জন্য এইভাবে রাখা হয়েছিল vi, যেমন ভিম সহায়তায় উল্লেখ করা হয়েছে :help Y:

আপনি যদি "Y" পছন্দ করেন তবে কার্সার থেকে শুরু করে লাইনের শেষ পর্যন্ত (যা আরও যৌক্তিক তবে vi- সামঞ্জস্যপূর্ণ নয়) ব্যবহার করুন ": মানচিত্র Y y $"।

সুতরাং এটি থেকে একটি হোল্ডওভার vi। ফাইন।

তবে, কমান্ডটি কেন প্রথম স্থানে ডিজাইন করা হয়েছিল? এটিতে কি কোনও যুক্তি ছিল?


* বিশেষত এটি 0 টি রেজিস্টারে পাঠ্য রাখে এবং নামবিহীন নিবন্ধকে 0 টি রেজিষ্টারে নির্দেশ করে।

** যদিও এটি আমার প্রশ্নের সাথে প্রাসঙ্গিক নয়, এটির বা এর Sঅন্য প্রতিশব্দ ।ccc_


3
কেন এটি তৈরি করা হয়েছিল তা আমি নিশ্চিত নই । আপনাকে বিল জয়কে এ সম্পর্কে জিজ্ঞাসা করতে হবে। সম্ভাবনাগুলি অবশ্য এটি একটি যৌক্তিক ত্রুটি, এটি কখনই আসল VI তে ঠিক করা হয়নি এবং পরে এটি সমস্ত ক্লোনগুলিতে তৈরি করা হয়েছে এবং অবশেষে পসিক্স দাবি করেছে।
খ্রিস্টান ব্র্যাব্যান্ড

3
যদি আপনি কখনও উত্তর খুঁজে পান তবে তাদের এটিরও এখানে প্রয়োজন । ;)
জোয়েটউইডল

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

উত্তর:


16

আমি উইলিয়াম জয়ের (vi স্রষ্টা) এবং মার্ক হর্টনের (1979 সাল থেকে vi রক্ষণাবেক্ষণকারী) একটি "পেছনের" ভিআইপি উইথ ডিসপ্লে এডিটিং উইথ ভি " পেয়েছি ।

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

Try the command YP. This makes a copy of the current line 
and leaves you on this copy, which is placed before the current line. 
The command Y is a convenient abbreviation for yy. 
The command Yp will also make a copy of the current line, 
and place it after the current line. 
You can give Y a count of lines to yank, and thus duplicate 
several lines try 3YP.

কমান্ডের তালিকায় পরে ( পিডিএফ সংস্করণে পরিশিষ্ট দেখুন ), ওয়াইয়ের বিবরণটি হ'ল:

Y  Yanks a copy of the current line into the unnamed buffer, 
   to be put back by a later p or P; a very useful synonym for yy.

এইভাবে আমি নিশ্চিত যে ওয়াই একটি বৈশিষ্ট্য ছিল এবং কোনও বাগ ছিল না।

সঙ্গে অসঙ্গতি হিসাবে Dএবং C- আমি একটি যৌক্তিক ব্যাখ্যা আছে। আপনি যদি আপনার মূল আকাঙ্ক্ষার চেয়ে কোনও পাঠ্য সম্পাদক লেখক হিসাবে ভাবার চেষ্টা করেন তবে এটি নতুন পাঠ্য তৈরি করা এবং এটি মোছার নয়। তারা (পাঠ্য সম্পাদক লেখক) তাদের ব্যবহারকারীদের আরও বেশি লেখা এবং আরও আরও অনেক কিছু লিখতে চায় ...

সুতরাং সিনট্যাকটিক চিনির কমান্ডগুলির জন্য (এবং Y, Dএবং Cএটি সিনট্যাকটিক চিনির একধরণের কারণ তারা ইতিমধ্যে বিদ্যমান বৈশিষ্ট্যগুলিকে নকল করে) তারা এমন ক্রিয়াকলাপগুলি চয়ন করে যা যথাসম্ভব পাঠ্য যুক্ত করে ( Yপুরো লাইনটিকে নকল করে) বা যতটা সম্ভব কম পাঠ্য মুছুন ( Dএবং Cঅবধি মুছুন লাইনের সমাপ্তি এবং সম্পূর্ণ লাইনটি নয়)।


ঠিক আছে, আমি পছন্দ করি YP; এটি দ্রুত এবং টাইপ করা সহজ। আমি বিশ্বাসী ;)
ওয়াইল্ডকার্ড

8

Yপ্রথম vi সংস্করণের ইয়াঙ্ক কমান্ড ছিল (প্রাক্তন 1.1, জানুয়ারী 1, 1978)। এই সংস্করণে yyক্যামমন্ড ছিল না । প্রাক্তন -২.২ (মে,, 1979) yyএবং উভয়ই ছিল Y। সুতরাং আসলে ( predates ) এর yyপ্রতিশব্দ ।YYyy


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