Vim এ তীর কীগুলি সুপারিশ করা হয় না


125

"ভিমে কখনও তীর কী ব্যবহার করবেন না!"

আমি এলোমেলো স্পিকারের কাছ থেকে শুনেছি, তবে কেন তাকে জিজ্ঞাসা করার সুযোগ ছিল না। এছাড়াও, আপনি যদি তীর কীগুলি ব্যবহার না করেন তবে কীভাবে আপনি সন্নিবেশ মোডে কার্সারটি সরিয়ে নিতে পারবেন?


6
এই প্রশ্নের historicalতিহাসিক প্রতিক্রিয়াগুলি আকর্ষণীয়। ধর্মাবলম্বীরা তাই কম।
আইজাক রবিনোভিচ

5
ভাল প্রশ্ন. ডিভোরাক কীবোর্ড ব্যবহারকারী হিসাবে এটি সত্যই সফল হয়!
উইম

32
আমার মনে আছে যখন ভিআই ব্যবহার করার সময়, বহু বছর আগে, একজন প্রবীণ সহকর্মী আমাকে পরামর্শ দিয়েছিলেন "আপনি এইচ, জে, কে এবং এল কী ব্যবহার করতে শিখেছেন তা নিশ্চিত করুন কারণ একদিন আপনি ক্লায়েন্ট সাইটে মেশিনে পৌঁছে যাবেন যেখানে তীরটি কীগুলি কোনও কাজ করে না, এবং আপনি এমনকি vi কাজ করতে না পারলে আপনি সম্পূর্ণ ডি *** মাথার মতো দেখবেন। "
এরগওয়ান

1
সন্নিবেশ মোডে আপনি এখনও Ctrl-O ব্যবহার করে একটি সাধারণ মোড কমান্ড ব্যবহার করে কার্সারটি সরাতে পারেন এবং এটি সন্নিবেশ মোডে ফিরে যাবে। এছাড়াও আপনি সিটিআরএল-জি সিটিআরএল-জে এবং সিটিআরএল-জি সিটিআরএল-কে পরীক্ষা করুন যা কার্সারটি পরবর্তী এবং পূর্ববর্তী লাইনে সন্নিবেশ করানো শুরু করা কলামে নিয়ে যাবে।
বেনোইট

1
আমি বছরের পর বছর ধরে অনেকগুলি খারাপ vi [অভ্যাস] অভ্যাস গড়ে তুলেছি। আমি মনে করি আমাকে আরও ধীরে ধীরে সংযোগের মাধ্যমে এটি ব্যবহার করা দরকার, আমাকে আরও ভাল অভ্যাসগুলি ব্যবহার করতে বাধ্য করতে।
এইডান

উত্তর:


172

তীর কীগুলি ব্যবহার করা একটি খারাপ অভ্যাস হিসাবে বিবেচিত হয়, কারণ আপনি যদি তীরচিহ্নগুলি ব্যবহার করেন তবে আপনি সম্ভবত ভিমের অনেকগুলি সুন্দর বৈশিষ্ট্য হারিয়ে ফেলছেন।

লোকেরা প্রথমে ভিএম ব্যবহার শুরু করলে, তারা সন্নিবেশ মোডে থাকায় ঝোঁক থাকে কারণ এটি প্রচলিত পাঠ্য সম্পাদনার মতো। তবে ভিমে কার্যকর হতে, আপনি যখন কেবল পাঠ্য প্রবেশ করান তখন আপনার কেবল সন্নিবেশ মোডে থাকা উচিত। আপনি যদি কার্সারটিকে প্রায় ঘুরিয়ে নিতে চান তবে আপনার স্বাভাবিক মোডে থাকা উচিত। আপনার বেশিরভাগ ডিফল্টরূপে স্বাভাবিক মোডে থাকা উচিত।

সাধারণ মোডে ঘুরে বেড়ানোর জন্য মিলিয়ন শর্টকাট রয়েছে। আপনি hjklএকবারে একটি স্পেসের চারদিকে ঘোরাতে ব্যবহার করতে পারেন , বা আপনি শব্দ, অনুচ্ছেদ ইত্যাদি দ্বারা স্থানান্তর করতে পারেন। আপনি যদি স্বাভাবিক মোডে থাকেন তবে তীরচিহ্নগুলি hjklআরও দূরে থাকায় এর পরিবর্তে তীর কীগুলি ব্যবহার করার কোনও অর্থ নেই ।

এমন মনোভাব রয়েছে যে আপনি যদি তীরচিহ্নগুলি ব্যবহার করেন তবে আপনি ভিম "ভুল" ব্যবহার করছেন। সত্য কথাটি হ'ল ভিমে সত্যই খাড়া শেখার বক্ররেখা থাকে, তাই আপনি যা শিখছেন তা বুদ্ধিমান রাখে do আমি যখন প্রথম প্রথম ভিআইএম ব্যবহার করা শুরু করলাম তখন আমি "ভুল" উপায়ে সমস্ত কিছু করেছি এবং ভিএম এর আদেশগুলি আরও জানার পরে অভ্যাসটি ভাঙতে আমার কোনও সমস্যা হয়নি didn't

উদাহরণ হিসাবে, যখন আমি প্রথম শুরু করেছি, বলুন আমি উদ্ধৃতিতে পাঠ্যটি পরিবর্তন করতে চেয়েছিলাম:

String mystring = "I want to change this";

আমি সন্নিবেশ মোডে যাব, তীর কীগুলি ব্যবহার করে স্ট্রিংয়ের শেষ প্রান্তে চলে যাব, স্ট্রিংটি শেষ না হওয়া অবধি ব্যাকস্পেস টিপুন এবং নতুন পাঠ্য প্রবেশ করবো।

আরও ভাল উপায় হ'ল আপনার কার্সারটিকে স্ট্রিং (নরমাল মোড) এর যে কোনও জায়গায় রাখা, তারপরে টিপুন ci"। এই হবে change in "। এটি উদ্ধৃতিগুলির মধ্যে থাকা সমস্ত কিছু মুছে ফেলবে এবং আপনাকে সন্নিবেশ মোডে রাখবে যাতে আমি নতুন পাঠ্য প্রবেশ করতে পারি।


4
@ অট-- ci<এবং ci)পাশাপাশি কাজ করুন এবং আপনার হাত কীবোর্ড থেকে মাউসে সরিয়ে নিতে হবে না। আপনি যদি বন্ধনীর শুরুতে নেভিগেট করতে চান এবং তারপরে সামগ্রীটির f(ci(কাজগুলি পরিবর্তন করতে চান ।
ম্যাথু ফিনলে

6
"আপনার কার্সারটিকে স্ট্রিংয়ের যে কোনও জায়গায় রাখুন" - এবং আবার, সন্নিবেশ মোডে আপনি তীরগুলি সেখানে পৌঁছানোর জন্য ব্যবহার করতে চান, সাধারণ মোডে আপনি করতে চান /wantএবং 'চান' শব্দের উপর প্রবেশ করতে চাপতে পারেন, তারপরে করুন ci"
নাথান লং

8
আরে এটা পরিষ্কার! কার্সারকে চারপাশে সরানোর জন্য কী দ্রুত একটি শক্তিশালী উপায়। এটির উন্নতি করার একমাত্র উপায় হ'ল আপনি কার্সারটি কোথায় চেয়েছিলেন তা যাদুতে নির্দেশ করার কিছু উপায় এবং এটি কেবল সেখানে লাফিয়ে। আমরা কিছু আবিষ্কার করতে পারে। আমি মনে করি আমাদের এটি "মাউস" বলা উচিত।
ম্যাথিউ স্কাউটেন

18
@ ম্যাথেজস্কুটেন কেউ দাবি করছেন না যে ভিউম একটি মাউসের চেয়ে সহজ। কিছুটা অনুশীলন সহ যদিও এটি অনেক বেশি দ্রুত। মাউস ব্যবহার করা আপনার পয়েন্টটি জুড়ে পেতে পয়েন্টিং এবং হুঙ্কার দেওয়ার মতো। ভিম আপনাকে পুরো বাক্যে কথা বলতে দেয়।
ডিন

4
অভ্যাস ভঙ্গ করা একটি উত্তম উত্তর - তবে জোর করে কাউকে সাধারণ ক্রিয়াকলাপ থেকে রোধ করা ফ্যাসিবাদী। সবচেয়ে খারাপ, ( ) এর ব্যবহারযোগ্যতাhjkl : ম্যাপিং upএবং down2 টি কী যা একে অপরের থেকে উল্লম্বভাবে পৃথক হয়ে যায়, বাম এবং ডান কী থেকে একা থাকুক ..... এটি আদর্শিক-অন্ধ অহঙ্কারের করুণ প্রদর্শন।
নিউ আলেকজান্দ্রিয়া

92

কী প্লেসমেন্ট

সংক্ষেপে, কীগুলি নেভিগেশন ইন্টারফেস হিসাবে Vimব্যবহার করে hjklকারণ এটি পুরানো "ADM-3A" টার্মিনালের একটি অবশিষ্টাংশ, যেগুলিতে এই তীরগুলি চিহ্নযুক্ত ছিল।

কীবোর্ড

যেহেতু vimথেকে প্রাপ্ত vi, তাই এটি একই hjkl কী ব্যবহার করে।

নতুন অভ্যাস

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

সংস্থানসমূহ এবং সন্নিবেশ মোড

আপনার প্রশ্নের ২ টি অংশের কয়েকটি খুব বিশদ এবং নির্ভুল উত্তর রয়েছে: তীর কী প্রতিস্থাপনের ক্ষেত্রে, আমি আপনার সন্নিবেশ প্রশ্নের জন্য দ্রুত এবং সংক্ষিপ্ত পদ্ধতিতে উত্তর দিয়েছি , দয়া করে নীচে তালিকাভুক্ত সংস্থানগুলি দেখুন।


2
আপনার হাতটি তীর কীগুলিতে সরিয়ে দেওয়ার চেয়ে hjkl কীগুলি আরও কার্যকর mention
ষাট ফুটারসুডে

2
এটি প্রশ্নের উত্তর দেয় না, কেবল hjkl কেন বেছে নেওয়া হয়েছে তা ব্যাখ্যা করে ।
ম্যাটসেম্যান

3
এটি সত্য এবং আকর্ষণীয় ইতিহাস, তবে ওপি জিজ্ঞাসা করে আপনি কীভাবে সন্নিবেশ মোডে কার্সারটি সরান । hjklসন্নিবেশ মোডে কাজ করবেন না, সুতরাং এটি প্রশ্নের উত্তর কীভাবে?
LarsH

3
@ ক্রুগ, প্রশ্নের প্রথম অংশটি হ'ল কেন কেউ কখনও ভিএম-এ তীর কী ব্যবহার করবেন না বলে জানিয়েছেন। আপনি যে hjklভিমে ব্যবহার করতে পারবেন তা যেহেতু কারও কখনও তীর কী ব্যবহার করা উচিত নয় তা ঠিক তা জানায় না, ঠিক তেমনি আমি আমার সাইকেলটি কাজে চালাতে পারি কেন কেউ আমাকে জগ করতে কখনও বলবে না তা ব্যাখ্যা করে না।
LarsH

1
এখন আমি বুঝতে পারি কেন সন্নিবেশ মোড থেকে বেরিয়ে আসার জন্য ভিম পলায়ন ব্যবহার করে ^^ দুর্দান্ত ছবি!
Étienne

56

এই বোকা মন্ত্রটি প্রায়শই স্পর্শ-টাইপবিদদের দ্বারা পুনরাবৃত্তি হয় যার জন্য হোম সারিটি দ্বিতীয় মেরুদণ্ডের মতো বা অ-টাচ-টাইপবাদক যারা শীতল দেখতে চান। টাচ-টাইপবিহীনদের জন্য, হোম সারিটি কেবল তেমন বিশেষ নয় এবং তীরের কাছে পৌঁছানোর জন্য ডান হাতটি সামান্য সরানো মোটেই সমস্যা নয়।

যে বিষয়টি বিবেচনা করতে হবে তা হ'ল সেই মন্ত্রটির পুনরাবৃত্তিকারী লোকেরা পরিবর্তে ব্যবহারের প্রস্তাব দেয়।

বেশিরভাগ সময়, তারা ব্যবহারে জোর দেয় hjkl

যদি আমরা এই সত্যটি বাদ দিয়ে থাকি যে এই কীগুলি কেবলমাত্র vi এর লেখক দ্বারা ব্যবহৃত কীবোর্ডের শারীরিক তীর কীগুলি নেই এবং সুতরাং তীর কীগুলির বিরুদ্ধে যে কোনও যুক্তি কেবল যুক্তিযুক্তকরণ, hjklযাইহোক যাইহোক তীরের চেয়ে সামান্যতর ভাল। হ্যাঁ, hjklতীরগুলি ব্যবহার করার একমাত্র সুবিধা হ'ল আপনি ডান হাতের সেই ছোট্ট চলাচলটি তীরের কাছে এবং এড়িয়ে যান। সেই সুবিধাটি যে সমস্যার জন্য মূল্যবান তা আপনার কল।

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

13 বার ডান তীর হামার করা অকার্যকর এবং বিরক্তিকর। এটা কি যে ভাল হাতুড়ি lকী 13 বার? না এটি সমান বোকা।

আপনার টার্গেটে পৌঁছা পর্যন্ত ডান তীরটি টিপে রাখা কম বিরক্তিকর তবে এটি ত্রুটি-প্রবণ এবং প্রায় 13 টি হিট হিসাবে অপরিহার্য কারণ প্রয়োজনীয় এবং অ-নিরোধক শেষের দিকে ধীর হয়ে যায়। এটা কি যে ভাল রাখার lকি টেপা? না অবশ্যই না.

ধন্যবাদ, বেশিরভাগ জিইআইআই টুলকিটগুলি এর মতো কম্বো সরবরাহ করে Ctrl+Rightযা আমাদের পরবর্তী শব্দগুলিতে বা অন্য যাই হোক না কেন, শব্দ-বাণীতে স্থানান্তরিত করতে বা EOL এ যেতে দেয়। এই শর্টকাটগুলি একক তীরগুলির চেয়ে আমাদের আরও দ্রুত এবং আরও বুদ্ধিমানভাবে নেভিগেট করতে সহায়তা করে। আমাদের কি একই আছে hjkl? না, আমরা না। আমরা চাইলে একটি গণনা ব্যবহার করতে পারি, তবে কে প্রতিটি গতির জন্য অক্ষর গণনা করতে চায়? এরকম 14kসাহায্যে relativenumberমহান কিন্তু কি অনুভূমিক গতি সম্পর্কিত? বড় চলাচলের জন্য, hjklপরিবর্তিত + তীরের চেয়ে খারাপ worse এবং কি অনুমান? বৃহত্তর আন্দোলন আমাদের সবচেয়ে বেশি প্রয়োজন।

কিন্তু আমরা ভাগ্যবান বেজন্মাদের হয়, আমাদের প্রিয় সম্পাদক গতি প্রায় উভয় তীর চেনাশোনা চালানোর কয়েক ডজন হয়েছে এবং hjkl : bBeEwW/?*#{}()ইত্যাদি। এই কমান্ডগুলি অপেক্ষাকৃত বেশি শক্তিশালী hjklএবং এর চেয়ে বেশিরভাগ অংশে অনেক বেশি যুক্তিযুক্ত এবং স্বজ্ঞাত যদি আপনি Ctrl+Rightএবং বন্ধুদের ব্যবহার করেন ।

থেকে স্যুইচ <Right><Right><Right><Right><Right><Right><Right><Right><Right>করতে lllllllllবা এমনকি 9lহাস্যকর অর্থহীন নয়।

থেকে স্যুইচ <Right><Right><Right><Right><Right><Right><Right><Right><Right>করতে <C-Right>অতি উত্তম। সেখান থেকে স্যুইচ করা wসহজ এবং দ্রুত উভয়ই। <nop>আপনার তীর প্রয়োজন নেই !

যদি এই আদেশগুলি আরও কার্যকর, আরও শক্তিশালী এবং এর চেয়ে স্বজ্ঞাত হয় তবে hjklকেন সমস্ত নরকমে এতগুলি ব্লগার এবং মন্তব্যকারী তীরটি প্রতিস্থাপনের জন্য জোর দিয়ে থাকে hjkl?

আমার আছে. কোন ধারণা নেই.

উপসংহারে, hjklআমাদের টুলবেলেটে তাদের জায়গা রাখুন কারণ আমাদের সর্বদা 2 টি অক্ষর বা লাইন দিয়ে চলতে হয় তবে তারা গাছটি যে বনকে লুকিয়ে রাখে তার চেয়ে বেশি প্রায়ই হয়। তীরগুলির বিরুদ্ধে প্রচারকারী লোকদের থেকে সাবধান থাকুন: আপনার জন্য তাদের যা সঞ্চয় রয়েছে তা মোটে ভাল নাও হতে পারে।


প্রথমদিকে, আমি ভেবেছিলাম যে আপনি বলছেন যে 'এইচজেকিএল' অকেজো, তবে ভাল ধরা, শব্দ / অনুচ্ছেদ / বাক্য গতিগুলি আরও বেশি কার্যকর যে একক চরিত্রের গতি সম্পর্কিত মন্ত্রটি।
জাভিয়ার টি।

1
ধন্যবাদ। অন্য দিন আমার এইচএন তে অনুরূপ আলোচনা হয়েছিল যা খারাপ কথাবার্তার কারণে লাইনচ্যুত হয়েছিল। কারও প্রচেষ্টাতে ফোকাস hjkl করা নিরর্থক তবে hjklদরকারী।
রোমেনেল

5
এখানেও একই: শেষ পর্যন্ত আমি আপনার উত্তরটি পছন্দ করেছি তবে আমি মনে করি সুরটি অযৌক্তিকভাবে রেটিং / ট্রোলিং / জ্বলন্ত রূপ হিসাবে এসেছে।
আঙ্কেলজিভ

তাদের অকেজো বলবেন না, গতি সম্পর্কে তর্কগুলি ভাল এবং এইচজেকেএল যেভাবে অন্য ভিআইএম কমান্ডের সাথে এমনভাবে কাজ করে যাতে তীর কীগুলি গুরুত্বপূর্ণ নয় সেগুলিও গুরুত্বপূর্ণ।
Aviator45003

@ টিসি পুরো বিতর্কটিকে আরও আকর্ষণীয় করার জন্য কোনও উদাহরণ?
রোম্যানেল

18

অন্যরা বর্ণনা করেছেন যে কার্সারকে কেনাকাশে নিয়ে যাওয়ার অন্যান্য উপায়কে অগ্রাধিকার দেওয়া হয় তবে এই প্রশ্নের উত্তর দিতে খুব কমই বলা হয়, তীরচিহ্নগুলি ব্যবহার করা কেন এটি একটি খারাপ ধারণা হিসাবে বিবেচিত হয়?

আমি মনে করি যে মূল কারণটি (এবং @ স্কিজি কিছুটা এটিকে ইঙ্গিত করেছেন) তা হ'ল ভিটি 100 এর মতো টার্মিনালের দিনগুলিতে তীর কীগুলি একটি পালানোর ক্রম তৈরি করেছিল যা চলমান প্রোগ্রাম দ্বারা ব্যাখ্যা করা হয়েছিল। (যেহেতু তীর কীগুলি ASCII তে প্রতিনিধিত্ব করা হয় না তাই তীর কীগুলির টাইপিংটি কিছু "বিশেষ" উপায়ে জানাতে হবে)) পালানোর ক্রমটি সাধারণত কিছুটা ছিল

ESC [ A

আপনার টার্মিনালের বৈশিষ্ট্য, আপনার সংযোগ এবং আপনার কার্সার মোডের উপর নির্ভর করে । যদি আপনার শেল বা আপনার প্রোগ্রামটি টার্মিনালের জন্য সঠিকভাবে কনফিগার করা না থাকে তবে তারা তীরচিহ্ন হিসাবে পালানোর ক্রমটি বুঝতে পারে না।

আমি যখন কলেজে ছিলাম তখন ভিটি 100 টার্মিনালের মাধ্যমে আল্ট্রিক্সে লগ ইন করতাম, যদি আমি সন্নিবেশ মোডে vi থাকাকালীন একটি তীর টিপতাম, তবে ESC"সন্নিবেশ মোড থেকে বেরিয়ে আসুন" [ Aহিসাবে ব্যাখ্যা করা হত এবং তারপরে নিম্নলিখিতটি সাধারণ-মোড কমান্ড হিসাবে ব্যাখ্যা করা হত । স্পষ্টতই ব্যবহারকারী যা চায় বা প্রত্যাশা করে না!

আজকাল, টার্মিনাল এবং তীর কীগুলি পরিচালনা করা আরও শক্তিশালী বলে মনে হচ্ছে, বিশেষত জিইউআই পরিবেশে। কিন্তু এসএসএইচ বা টেলনেটের উপর ভিএম ব্যবহার করার পরেও একই সমস্যাগুলি দেখা দেয়।


14

তীর কীগুলি ব্যবহার করা ভঙ্গুর কারণ এটি কিওয়ারওয়ারি লেআউট ব্যবহার করার সময় এবং ডিভোরাক বা অন্য যে কোনও লেআউট ব্যবহার করার সময় অক্ষর প্যাড (?) থেকে হোম্রো থেকে আপনার আঙ্গুলগুলি সরিয়ে নিতে বাধ্য করে।


4
কি দারুন. সিরিয়াসলি? আমি এটি বিশ্বাস করতে চাই না, কারণ এর দ্বারা বোঝা যায় যে ভিম ডিজাইন করেছেন এমন লোকেরা ভাববেন যে তাদের ব্যবহারকারীরা চিন্তাভাবনার চেয়ে টাইপিংয়ে বেশি সময় ব্যয় করেন।
রেনান

13
কেন আপনি হাত ঘোরাতে ইঙ্গিত ভাবনা?
ইবিগ্রিন

8
ঠিক আছে, যখন আমি স্কুলে এটি করতে হয়েছিলাম, আপনি এইচজেকিএল নেভিগেশন ব্যবহার করার আগে আপনাকে এসকে আঘাত করতে হয়েছিল, তাই আপনি নিজের গোলাপীটিকে এসকে নিয়ে যাওয়ার জন্য আপনার বাম হাতটি ইতিমধ্যে ঘরের সারি থেকে সরিয়ে ফেলেছিলেন। আমি মনে করি যে একটি স্থান ফিরে যেতে এবং একটি অক্ষর সন্নিবেশ করতে আপনাকে 'ইস্ক: হাই' লিখতে হবে এবং তারপরে আপনি যে চরিত্রটি সন্নিবেশ করতে চান তা টাইপ করুন। এটি এতটা সহায়ক নয়।
ফ্র্যাঙ্ক থমাস

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

2
@ রেনান - ১) আপনি সঞ্চয়কে কম মূল্যায়ন করেন এবং ২) সামান্য জিনিস যোগ করেন। আমি অন্যান্য বিকাশকারীদের গতি 10x এ ভিচ পাওয়ার ব্যবহারকারীরা টাচ-টাইপ করতে দেখেছি। পর্যাপ্ত গতিতে, সম্পাদনা স্বয়ংক্রিয় হয়ে যায় এবং কারও চিন্তা বা প্রবাহকে বাধা দেয় না। এইভাবে কাজ করতে পেরে আনন্দিত, সুতরাং এটি আমার নৌকাকে ভাসিয়ে তুলবে, তবে আমি এটিই বাজি ধরব যে আপনি যা ভাবেন তার চেয়েও বেশি উত্পাদনশীলতা বাড়িয়ে তোলা। উদাহরণ হিসাবে গ্যারি বার্নহার্টের মতো কোডার দেখার চেষ্টা করুন।
নাথান লং

10

তীর কীগুলি একটি সমস্যা প্রদর্শন করে - এটি ইতিমধ্যে vi- তে পরিচিত ছিল - ধীর সংযোগে, যেমন 1200 বাউড মডেম। তীরটি একটি ইসি সিকোয়েন্সে অনুবাদ করে ESC a। এখন যখন সময়টি এসএসসি বেটাবে এবং একটি খুব দীর্ঘ হয়ে যায়, আপনি অ্যাপেল মোডের পরে একটি বিইএল (বা কোনও ফ্ল্যাশ দেখে) শুনবেন। এটি hjklকীগুলির সাথে উপস্থিত হবে না ।


আমি মনে করি ESC [ Aআপনি কি উল্লেখ করছেন?
LarsH

2
ESC [ Aএকটি ডিসি ভিটি -100 টার্মিনাল (এএনএসআই টার্মিনালটি ডিইসি ভিটি -100 এর দৃ strongly়ভাবে ডেরিভেটিভ ছিল) তীর। আইআইআরসি, ESC Aএডিএম -3 এ তীর বা সম্ভবত ডিসি ভিটি -২২ তীর ছিল। পয়েন্টটি একইরূপে রয়ে গেছে, তবে, ESCতীরচিহ্নের অংশ হিসাবে প্রেরিত চরিত্রটি সহজেই ESCটাইপ করে নিজেই বিভ্রান্ত হয়েছিল ।
আরবার্তেগ

@ আরবার্টিগ: জেনে রাখা ভাল।
LarsH

5

দ্বিতীয় প্রশ্ন সম্পর্কে:

[আমি] যদি আপনি তীর কীগুলি ব্যবহার না করেন তবে কীভাবে আপনি সন্নিবেশ মোডে কার্সারটি সরিয়ে নিতে পারবেন?

যিনি মাস্টার, এবং যেহেতু তীর কীগুলি তুচ্ছ করে তার কাছে, একইভাবে "মোড" ধারণাটি বিদ্যমান নেই।

মাস্টার একটি সন্নিবেশ মোড না ব্যবহার করে নতুন পাঠ্য যুক্ত করুন, বরং সম্পূর্ণ সন্নিবেশ বা প্রতিস্থাপন কমান্ডগুলি যা একটি অপকোড যেমন শুরু হয় i, oবা cwযা পে- লোড পাঠ্য দ্বারা অনুসরণ করা হয় এবং এর দ্বারা সমাপ্ত হয় ESC। কমান্ডগুলির একটি বাক্য গঠন থাকে এবং সুতরাং মেশিন কমান্ডের বাক্য গঠন গ্রহণ করার ক্ষেত্রে রাজ্যগুলিতে বিভ্রান্ত হয়, তবে সম্পাদকের মাস্টারের মডেলগুলিতে এগুলি কোনও মোডকে জন্ম দেয় না। শিক্ষানবিসরা নির্লজ্জভাবে "মোড" বলে, যা একটি অসম্পূর্ণ কমান্ড রাষ্ট্রের কাছে, এটি অত্যন্ত ঘৃণ্য পরিস্থিতি যা মাস্টার এড়িয়ে চলে।

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

এছাড়াও, যেহেতু কমান্ড অসম্পূর্ণ রেখে যাওয়ার জন্য মাস্টার খুব কমই এমনভাবে বিভ্রান্ত হয়ে পড়ে, তাই মাস্টার খুব কমই, যদি কখনও ESC" অতিরিক্ত ক্ষেত্রে" জারি করা একটি অতিরিক্ত অতিরিক্ত জারি করা প্রবেশের কারণে সম্পাদককে বীপ করে তোলে ।

(তবে, নেটওয়ার্কটি পিছিয়ে থাকলে বা মেশিনটি ঠাঁই হয়ে গেলে, মাস্টার ESCঅন্যের মতো কী এবং ক্রোধে বার বার চাপ দেয় p)


2
মনে রাখবেন, যদি viসন্নিবেশ করানো কমান্ড এন্ট্রিটি একটি মোড হয়, তবে ন্যায়বিচারের জন্য, আমাদের অন্যান্য সম্পাদকদের মধ্যে এই জাতীয় সমস্ত মোডগুলি সনাক্ত করতে হবে এবং তাদের মডেল কল করতে হবে। উদাহরণস্বরূপ, যখন আমরা ইমাসে সিটিআরএল-এক্স আঘাত করি তখন আমরা একটি "মোডে" থাকি, উদাহরণস্বরূপ, দস্তাবেজটি সংরক্ষণ করতে Ctrl-S টিপুন, যা "মোড" এর বাইরে কাজ করবে না।
কাজ

5
  • অ্যারো কীগুলি নির্দিষ্ট পরিবেশে ভাল কাজ করতে পারে না। hjkl হ'ল সাধারণ অক্ষর এবং সমস্ত ধরণের টার্মিনাল দ্বারা ভালভাবে বোঝা যায়।
  • আপনি সন্নিবেশ মোডে কার্সারটি সরান না ( ব্যাকস্পেস বাদে এবং একটি সংক্ষিপ্ত টাইপো সংশোধন করে), vi এর ধারণাটি কেবল কিছু প্রবেশের জন্য সন্নিবেশ মোডে প্রবেশ করা উচিত। নরমাল মোডে মুভমেন্ট করা হয়
  • যদি আপনি পারেন তবে আপনার প্রযোজ্য হুইভারে চলার জন্য এইচজেকিএল ব্যবহার এড়ানো উচিত এবং পরিবর্তে কেবল সেগুলি নির্দেশাবলীর জন্য ব্যবহার করুন। ভিআই- তে সরানোর জন্য অনেকগুলি বিকল্প রয়েছে , দেখুন: http://vim.wikia.com/wiki/ মুভিং_আরাউন্ড

আসলে আপনি ব্যাকস্পেস ব্যবহার করে কমপক্ষে বাম দিকে সন্নিবেশ মোডে কার্সারটি সরাতে পারেন। তবে আমি একমত যে আপনি এটিকে অবাধে সরাতে পারবেন না।
LarsH

আমি প্রকাশ করার চেষ্টা করেছি যে আপনি কার্সারটি সন্নিবেশ মোডে সরাতে চান না ।
স্কিজি

দুঃখিত, আপনি যা লিখেছেন তা ভুল বুঝেছি আপনি কার্সারটি সন্নিবেশ মোডে সরাতে পারবেন না । আসলে আমি কার্সারটি সন্নিবেশ মোডে সরাতে চাই: আমি যদি কিছু নতুন পাঠ্য লিখছি এবং আমি যদি ভুল কীটি আঘাত করি তবে আমি এটি সংশোধন করতে ব্যাকস্পেস ব্যবহার করতে চাই। তবে সেই সীমিত ব্যবহারের বাইরেও আমি সম্মত।
LarsH

3

হ্যাঁ, উপরে উল্লিখিত অনেক কারণে, viমূলত ব্যবহার করার জন্য লেখা হয়েছিল hjkl, তবে " কখনই নয়" একটি দুর্দান্ত বিবৃতি।

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

আমি "বৈমানের তীর কী কখনই ব্যবহার করবেন না!" এর সাথে একমাত্র বৈধ কারণ নিয়ে আসতে পারি! আপনি যাতে এমন মেশিন ব্যবহার করতে সক্ষম হন যা তীর কীগুলি পরিচালনা করতে পারে না। এটি " কখনও নয় " বলার মতো বেশ পাতলা কারণ বলে মনে হয় ।


3

আপনি যদি তীর কীগুলি ব্যবহার না করেন তবে কীভাবে আপনি সন্নিবেশ মোডে কার্সারটি সরিয়ে নিতে পারবেন?

আমি কেন লোককে তীরচিহ্নগুলি ব্যবহার করা থেকে নিরুৎসাহিত করার প্রাথমিক কারণটি স্পষ্টভাবে কারণ এটি সন্নিবেশ মোডে থাকাকালীন আপনাকে ঘুরে বেড়াতে দেয়।

নতুনদের জন্য ভিম শিখার এক অদ্ভুত সমস্যা হ'ল ভিম-এর পূর্বাবস্থায়িত কমান্ডটি সর্বশেষ কী-স্ট্রোক নয়, শেষ ক্রিয়াটি পূর্বাবস্থায় নিয়ে কাজ করে । আমার অনেক বন্ধু পুরো সময় সন্নিবেশ মোডে থাকা শেষ করে কারণ এটি ছেড়ে দেওয়ার কোনও কারণ নেই। যখন তারা আমাকে জিজ্ঞাসা করে "আমি কীভাবে পূর্বাবস্থাপন করব?" আমি "কমান্ড মোড থেকে চিঠিটি হিট করুন" দিয়ে উত্তর দিয়েছি যখন ভিএম পুরো ফাইলটি সরিয়ে দিলে তারা হতাশ হয়ে পড়ে।

"ভিম হ'ল বেশ মূল্যহীন পাঠ্য সম্পাদক it

আপনি কীভাবে তা শিখার আগে কোনও সরঞ্জাম ব্যবহার করা কঠিন।

আপনি কীভাবে এটি ব্যবহার করবেন তা শিখার পরেই ভিম দরকারী হয়ে ওঠে। ভিমের শক্তি এতে রয়েছে যে আপনি অবচেতন পেশী স্মৃতির মাধ্যমে "এ জিনিসটি আবার করুন" বা "সেই জিনিসটি পূর্বাবস্থায় ফিরিয়ে আনুন" বা "যখন আমি এই ম্যাক্রো হটকিকে আঘাত করব" তখনই সেই জিনিসটি করতে পারবেন। যদি "জিনিসটি" হয়ে যায় "শুরু থেকে শেষের জন্য পুরো ফাইলটি টাইপ করুন", আমি সম্মতি জানাই, ভিআইএম মোটেই কার্যকর নয়।

এটি কেবলমাত্র আপনি যখন থাকবেন তখনই পাঠ্য প্রবেশ করা উচিত insert mode। তীরচিহ্নগুলি এড়ানো কেবলমাত্র একটি উপায় যা আমরা আপনাকে আরও ভাল ভিএম ব্যবহারকারী হয়ে ওঠার জন্য দ্রুত খুঁজে পেয়েছি।


0

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

উদাহরণস্বরূপ, সন্নিবেশ কী এই পরিবেশে কাজ করে না তাই আমি Iসন্নিবেশ মোডে স্যুইচ করতে ব্যবহার করছি । Esc কীটি, যা আমি সাধারণত সন্নিবেশ মোডে পালাতে ব্যবহার করি তা কার্যকর হয় না তাই ctrl + [পরিবর্তে আমি পালানোর জন্য ব্যবহার করছি । আমি অভ্যস্ত থাকায় হোম এবং এন্ড কীগুলি কাজ করে না। পরিবর্তে আমি উপর নির্ভর করছি 0এবং $শর্টকাট আমি সূচনা অথবা একজন লাইনের শেষে পৌঁছানোর এর আগে কখনো বিরক্ত।

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


0

ভিমে লেখার আগে নিম্নলিখিত কমান্ডটি লিখুন:

  1. প্রস্থান
  2. : সেট আপ নোট

এর সাথে একটি সমস্যা হ'ল আপনাকে এটি প্রতিবার লিখতে হতে পারে।


ভাল আপনি যখন সন্নিবেশ মোডে তীর কী ব্যবহার করতে চান এটি কার্যকর হবে
0

0

এখানে আমার 2 ¢

আপনি যা স্বাচ্ছন্দ্য বোধ করেন তা করুন। আপনি যদি বিভিন্ন সম্পাদক ব্যবহার করেন তবে ধারাবাহিকতার জন্য তীর কীগুলি ব্যবহার করা সহজ।

অন্যদিকে, এটি একেবারে উজ্জ্বল vi (এবং ভিআইএম) এর সম্ভবত কোনও বিশেষ কীগুলির প্রয়োজন নেই। টার্মিনাল হিসাবে কাজ করার জন্য আপনি সম্ভবত কোনও পুরানো আইবিএম নির্বাচনকারী হ্যাক করতে পারেন।

অন্য জিনিসটি সন্ধানের জন্য হ'ল তীর কীগুলি প্রত্যাশার মতো কাজ না করে। আমি টার্মিনালগুলি ব্যবহার করেছি যেখানে তারা কাজ করেনি। সেগুলি কীভাবে ভিমে বাস্তবায়িত হয় তা আমি নিশ্চিত নই তবে আমি নিশ্চিত যে এটি অভিন্ন নয়। আমার দাগযুক্ত মেমরি এমনকি এমন একটি বাস্তবায়ন প্রত্যাহার করে বলে মনে হচ্ছে যেখানে সেগুলি ভিম ম্যাক্রো হিসাবে প্রয়োগ করা হয়েছিল।


0

বর্ধিত পাঠ্য সম্পাদকগুলির সাথে গেমের নামটি "তাড়াহুড়ো করে ঘুরে বেড়াচ্ছে" এবং অপচয় / পুনরাবৃত্ত গতি হ্রাস করে বলে মনে হচ্ছে। নেই কিছু সময় হারিয়ে যখন আপনি নির্দেশক তীরচিহ্নগুলি (কীবোর্ড মাত্রা উপর নির্ভর করে) চিঠি কী থেকে সরানো এবং তুলনায় ফিরে বাড়িতে সারিতে। তবে আপনি যদি আপনার বাম হাতের গোলাপী বা রিং আঙুলের স্যুইচিং মোডগুলি দিয়ে ইসি কীটিতে পৌঁছাতে পারেন তবে একটি তরল গতিতে পরিণত হয় এবং সম্পাদনা সেশন চলাকালীন একটি গতি বৃদ্ধি পাবে।

এবং এটি আপনার প্রশ্নের দ্বিতীয় অংশের মূল চাবিকাঠি, আপনার বাম দিয়ে ESC টিপুন এবং সন্নিবেশ মোড থেকে আপনার ডানদিকে hjkl দিয়ে সরান। অবশেষে আপনি একটি বিট এড়িয়ে চলা ছাড়া এটি করতে সক্ষম হবেন।

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

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