আমি যখন vi
সম্পাদকটিতে সন্নিবেশ মোডে তীর কীগুলি ব্যবহার করার চেষ্টা করেছি তখন নিম্নলিখিত অক্ষরগুলি সম্পাদককে সন্নিবেশ করা হচ্ছে:
- ↓আমি বি পেতে জন্য ,
- ↑আমি একটি পেতে জন্য ,
- জন্য ←আমি ডি পেতে,
- জন্য →আমি সি পেতে
এই সমস্যা সমাধানে আমাকে সাহায্য করুন।
আমি যখন vi
সম্পাদকটিতে সন্নিবেশ মোডে তীর কীগুলি ব্যবহার করার চেষ্টা করেছি তখন নিম্নলিখিত অক্ষরগুলি সম্পাদককে সন্নিবেশ করা হচ্ছে:
এই সমস্যা সমাধানে আমাকে সাহায্য করুন।
উত্তর:
.vimrc
আপনার নিজের ডিরেক্টরি ডিরেক্টরিতে ইতিমধ্যে যদি কোনও ফাইল না থাকে তবে এটি ব্যবহার করে একটি তৈরি করুন:
vim ~/.vimrc
ফাইলটির শীর্ষে এই লাইনটি যুক্ত করুন:
set nocompatible
ফাইলটি সংরক্ষণ করুন এবং এটি আপনার জন্য সমস্যার সমাধান করা উচিত। :)
vi
পরিবর্তে ব্যবহার করেন তবে একটি কৌশল vim
আছে, আপনাকে একই কনফিগারেশনটি করতে হবে তবে ~/.exrc
ফাইলটিতে in
Vim ইনস্টল করুন -> এটি সমস্যার সমাধান করবে।
sudo apt-get install vim
ইউটিউবে বা ওয়েবে সাধারণত অনেকগুলি ভাল ভিএম / ভিআই টিউটোরিয়াল রয়েছে। আপনার সমস্যার জন্য, এখানে দেখুন
তারপরে যথারীতি ফাইলগুলি খুলতে থাকুন :
vi desired-file
সহ vi
, iআপনি ক্লিক করার সময় পাঠ্য সন্নিবেশ করতে কমান্ডটি সক্রিয় করুন ।
এই কমান্ডটি আপনাকে আপনার ফাইলটিতে পাঠ্য সন্নিবেশ করতে দেয়।
এবং ডানদিকে ক্লিক করার সময়:
যতক্ষণ না আপনি এই আদেশটি নিষ্ক্রিয় করেন।
কমান্ডটি নিষ্ক্রিয় করতে vi
: কেবল ক্লিক করুন Esc
এবং তারপরে আপনি আপনার তীরচিহ্নগুলির সাধারণ ব্যবহার ফিরে পাবেন:
এফওয়াইআই, এখানে কয়েকটি vi
আদেশ রয়েছে:
এই উত্স থেকে ।
:x
Return ভিআই ছেড়ে দিন , আসল প্রার্থনায় নাম লেখার জন্য পরিবর্তিত ফাইল লিখুন
:wq
Return ভিআই ছেড়ে দিন , মূল আহ্বানে প্রস্থানিত ফাইলের জন্য পরিবর্তিত ফাইল লিখুন
:q
Return প্রস্থান করুন (বা প্রস্থান করুন) vi
:q!
Return ছাড়ুন vi যদিও সর্বশেষ পরিবর্তনগুলি এই ভি কলটির জন্য সংরক্ষণ করা হয়নি vi
↓ সরানো নিচে কার্সার এক লাইন
↓ পদক্ষেপ কার্সার এক লাইন
← পদক্ষেপ কার্সার একটি অক্ষর বাকি
→ পদক্ষেপ কার্সার ডান একটি অক্ষর
u
আপনি যা কিছু করেছেন তা পূর্বাবস্থায় ফিরিয়ে আনুন ; আপনি যা-ই করেছেন তা সাধারণ টগল
.
পুনরায় করুন
i
সন্নিবেশ কার্সার সামনে টেক্সট, যতক্ষণ না Escআঘাত
I
সন্নিবেশ বর্তমান লাইন শুরুতে টেক্সট, যতক্ষণ না Escহিট
a
যোগ কার্সর পরবর্তী অবস্থানে লেখা পর্যন্ত Escহিট
A
যোগ , টেক্সট বর্তমান লাইনের শেষ পর্যন্ত যতক্ষণ না Escআঘাত
o
খোলা এবং বর্তমান লাইনের নিচে নতুন লাইন পাঠ্য করা পর্যন্ত Escআঘাত
O
খোলা এবং Escহিট হওয়া অবধি বর্তমান লাইনের উপরে একটি নতুন লাইনে পাঠ্য রাখুন
r
প্রতিস্থাপন কার্সার (কোন অধীনে একক অক্ষর Escপ্রয়োজন)
cw
পরিবর্তন নতুন পাঠ্য বর্তমান শব্দ, কার্সার অধীনে অক্ষর দিয়ে শুরু হওয়া পর্যন্ত Escহিট
x
মুছতে কার্সার অধীনে একক অক্ষর
Nx
মুছে দিন , এন অক্ষর কার্সার অধীনে অক্ষর দিয়ে শুরু
dw
মুছতে একক শব্দ কার্সার অধীনে অক্ষর দিয়ে শুরু
C
পরিবর্তন (প্রতিস্থাপন) বর্তমান লাইনে অক্ষর, যতক্ষণ না Escআঘাত
D
মুছতে লাইন বাকি, বর্তমান কার্সার অবস্থানে দিয়ে শুরু
dd
মুছতে সমগ্র বর্তমান লাইন
Ndd
মুছে ফেলতে , এন লাইন বর্তমান লাইন থেকে শুরু করে; উদাহরণস্বরূপ, 5 ডিডি বর্তমান লাইনের সাথে বাফার অনুলিপি (ইয়ঙ্ক, কাটা) মুছে ফেলবে 5 লাইন
yy
অনুলিপি (ইয়ঙ্ক, কাটা) পরবর্তী লাইন সহ বর্তমান লাইন সহ, বাফারে বাফারে লাইন (গুলি) টেক্সটটিতে পেস্ট করুন বর্তমান লাইন
Nyy
p
0
(শূন্য) পদক্ষেপ কার্সার বর্তমান লাইন (কার্সার সঙ্গে এক) শুরু পর্যন্ত
$
সরানো কার্সার বর্তমান লাইন শেষে
w
পদক্ষেপ কার্সার পরবর্তী শব্দের শুরুতে
b
পদক্ষেপ শব্দ পূর্ববর্তী শুরুতে ফিরে কার্সার
:0
Returnবা 1G
সরাতে ফাইলের প্রথম লাইনে কার্সার
:n
Returnবা nG
সরাতে কার্সার লাইন এন
:$
Returnবা ফাইলের শেষ লাইনে কার্সার G
সরান
/string
অনুসন্ধান টেক্সট স্ট্রিং এর সংঘটন এগিয়ে
?string
অনুসন্ধান টেক্সট স্ট্রিং এর সংঘটন জন্য অনগ্রসর
n
পদক্ষেপ অনুসন্ধান স্ট্রিং পরবর্তী সংঘটন করার
N
পদক্ষেপ বিপরীত দিকে অনুসন্ধান স্ট্রিং পরবর্তী সংঘটন করতে
:help compatible
: "ডিফল্টরূপে এই বিকল্পটি চালু আছে এবং ভিআই ডিফল্টগুলি ব্যবহার করা হবে বিকল্পগুলি This এই ডিফল্টটি সেই সমস্ত লোকদের জন্য বেছে নেওয়া হয়েছিল যারা ভিমের মতোই ভিম ব্যবহার করতে চায় এবং 'সামঞ্জস্যপূর্ণ' বিকল্প সম্পর্কে জানতেও চায় না ""
সম্পাদনা মোডে তীর টিপে টিপে মুদ্রণ অক্ষম করতে আপনি নিম্নলিখিতটি করতে পারেন
vi $HOME/.exrc
(এটি উপস্থিত না থাকলে ফাইল তৈরি করুন) এবং তারপরে এতে লাইন যুক্ত করুন set nocompatible
এবং সংরক্ষণ করুন।
:version
লোড অর্ডার (এছাড়াও :h .exrc
বা :h init
) এর আউটপুট দেখুন । আমি অনুমান করি যে কেউ ভি এবং ভিআইএম উভয় ক্ষেত্রেই প্রয়োগ করার জন্য একটি সেটিংস চায়, বা অভ্যাসের নিখুঁত শক্তি হতে পারে।
ভিআই সম্পাদকের মধ্যে তিনটি পদ্ধতি রয়েছে:
আপনি যখন কোনও ফাইল খোলেন, আপনি ডিফল্ট মোডে থাকবেন। এখন আপনি আপনার পাঠ্য একটি নির্দিষ্ট অবস্থানে যেতে মাত্র নির্দেশক তীরচিহ্নগুলি বা ব্যবহারের ব্যবহার করতে চান তাহলে h, j, k, lকি। মনে রাখবেন, এই শুধুমাত্র কাজ করবে যখন আপনি চাপা নি i(অথবা অন্য কোন ইনপুট মোড মত কমান্ড লিখে a, A, I)।
'বি' এর কারণ হতে পারে কারণ ইনপুট মোডে থাকা তীর কীগুলি তীর কী হিসাবে কাজ করে না, তাই যে Escকোনও সময় কেবল ডিফল্ট মোডে যেতে টিপুন । ইনপুট মোড টিপুন নামান যখন iবা a, এবং তা নেভিগেট করা ঠিক চাপুন iকী এবং নির্দেশক তীরচিহ্নগুলি ব্যবহার করুন অথবা h, j, k, l।
আমার ঠিক একই সমস্যাটি ছিল তবে কেবল আমার স্থানীয় মেশিনে নয় সিটি্রিক্স রিসিভারের উপর উইন 7 ভিএম-তে স্লেস মেশিনে পুটিয়ের মাধ্যমে সংযোগগুলিও ছিল। উবুন্টু পুনরায় ইনস্টল করার পরে স্থানীয় হোস্ট এবং রিমোট হোস্ট উভয়ই একই সমস্যাটি দেখায়।
তা সন্ধান করার পরে
$ localectl list-keymaps
Couldn't find any console keymaps.
এই অদ্ভুত VI ষ্ঠ আচরণের কারণ হিসাবে আমি প্যাকেজ কনসোল-ডেটা ইনস্টল করেছি যা সমস্যার সমাধান করে!
sudo apt-get install console-data
বিঃদ্রঃ:
অন্যান্য পোস্টগুলিতে ভাল তথ্য রয়েছে তবে পোস্টগুলি কেউই কেন এই আচরণটি ঘটল তা বোঝানোর চেষ্টা করেনি । ভবিষ্যতে অনেক লোক হোঁচট খাতে বাধ্য। এছাড়াও, আগের কোনও পোস্ট সম্ভবত আপনাকে সহায়তা করায় আপনি কি এই প্রশ্নটিকে সমাধান হিসাবে চিহ্নিত করতে পারেন?
এখানে একটি ব্যাখ্যা :
ভিআই এমন একটি সম্পাদক যা ইউনিক্স সিস্টেমে ফিরে আসে এবং দীর্ঘকাল ধরে ছিল। এটি একটি ভাল সরঞ্জাম তবে এটি পুনরাবৃত্তি হয়েছে এবং এখন আরও ভাল। ভিম পরে লেখা হয়েছিল এবং এটিই পুনরাবৃত্তি। লোকেরা সাধারণত ভি'কে 'ভিএম-ন্যূনতম' হিসাবে উল্লেখ করে এবং ভিআইএমকে vi এর "উন্নত" সংস্করণ বলে মনে হয়। আপনি এটি এরকমভাবে ভাবতে পারেন: vi হ'ল মূল এবং এতে ভিআইএম প্রসারিত হয়।
সম্ভবত আপনি কীভাবে আচরণটি আবিষ্কার করেছেন :
আপনার এই সমস্যাটি আবিষ্কার করার জন্য, আপনি " i " টিপুন সন্নিবেশ মোডে প্রবেশ করার জন্য এবং তারপরে আপনার তীর কীগুলি সঠিক লাইনটি এবং সম্পাদনা পয়েন্টটি নেভিগেট করতে ব্যবহার করেছেন। এটিই আপনার অপ্রত্যাশিত চর সমস্যার কারণ ঘটেছে।
সমাধান 1 বা 2
1) vivi someFile
ব্যবহার করার সময় , প্রথমে সম্পাদনা বিন্দুতে সরান, তারপরে সন্নিবেশ মোডে প্রবেশ করুন।
2) vim someFile
সহজভাবে শুরু থেকেই ভিএম ব্যবহার করুন ।
আমি ম্যানুয়ালটি (ম্যান পেজ) পড়তে বা সাহায্যের জন্য -h ব্যবহার করার পক্ষে যথেষ্ট চাপ দিতে পারি না। একবার আপনি শেলের নিদর্শনগুলিতে সামঞ্জস্য করলে ম্যান পেজগুলি আপনার সেরা বন্ধু হয়ে যায়। উদাহরণ: man vi
বাman vim
Vim ইনস্টল করা হয়েছে তা যাচাই করুন ।
একটি কনসোল উইন্ডো খুলুন এবং কার্যকর করুন:
dpkg --list | grep vim
যদি আপনি এর অনুরূপ কিছু পান তবে আপনি কেবল ভিএম ব্যবহার শুরু করতে পারেন।
~ $ dpkg --list | grep vim
ii vim 2:7.4.052-1ubuntu3 amd64 Vi IMproved - enhanced vi editor
ii vim-common 2:7.4.052-1ubuntu3 amd64 Vi IMproved - Common files
ii vim-runtime 2:7.4.052-1ubuntu3 all Vi IMproved - Runtime files
ii vim-tiny 2:7.4.052-1ubuntu3 amd64 Vi IMproved - enhanced vi editor - compact version
কমান্ড প্রম্পট যদি কিছু না দিয়ে ফিরে আসে, তবে ভিম ইনস্টল করা হবে না। আপনার সংগ্রহস্থলগুলি আপডেট করার জন্য নীচের উদাহরণগুলি ব্যবহার করুন এবং তারপরে ভিএম ইনস্টল করুন।
sudo apt-get update
sudo apt-get install vim
ইন্টারনেটে অনুসন্ধান করার সময় আপনি কোনও কিছু ঠিক করার উপায় এবং আপনি টাইপ করতে ভুলে যাবেন কেবল তখনই আপনি যখন vi বা vim ব্যবহার করেন সেই অফ সুযোগটি vim
, ভবিষ্যতের জন্য এটি ঠিক করার একটি উপায় রয়েছে। আমি আপনাকে মনোযোগ দিতে সাবধান করছি। আপনি ভিআইএম-কে রেফারেন্স সহ ভিআই ওভাররাইট করতে একটি উপনাম ব্যবহার করতে পারেন যাতে আপনি ভবিষ্যতে যা-ই লিখুন তা হ'ল "উফ!" মুহূর্ত। আপনি সর্বদা একটি উপনাম পরে মুছতে পারেন।
প্রকার vim .bashrc
। খালি রেখায় কেবল একটি ~
(বা অন্য যে কোনও লাইনের সাথে শুরু হয়) দিয়ে নীচে সরান alias
(তারপরে তারা একত্রে শ্রেণিবদ্ধ করা হয়েছে) এবং তারপরে আই- কী টিপুন-সন্নিবেশ-মোডে প্রবেশ করুন। তার নিজস্ব পৃথক লাইনে, নিম্নলিখিতটি প্রবেশ করান:
alias vi='vim'
টিপুন Esc
এবং তারপরে টাইপ করুন :wq
। এখন আপনার ফাইলটি পুনরায় লোড করা দরকার। source .bashrc
এই সম্পাদনাগুলি করার পরে খোলে এমন অন্য কোনও শেল টাইপ করুন .bashrc ফাইলটি স্বয়ংক্রিয়ভাবে লোড হবে।
প্রদত্ত সমস্ত ব্যাখ্যা কিছুটা উদ্ভট। আমার কাছে vi আছে তবে vim ইনস্টল করা নেই।
বিকল্প চেক করা: /etc/alternatives/vi
→/usr/bin/vim.tiny
সুতরাং vi
হয় vim.tiny
, এবং এটি ব্যবহার /etc/vim/vimrc.tiny
।
এবং vimrc.tiny
আপনি নিম্নলিখিত লাইনটি খুঁজে:
set compatible
যা এই ফাইলটিতে প্রায় একমাত্র জিনিস। /etc/vim/vimrc
এটি ব্যবহার করে নোট করুন nocompatible
।
সুতরাং হয় ভিম ইনস্টল vimrc.tiny
করুন, অথবা ফাইলটি পরিবর্তন করুন, বা আপনার নিজস্ব তৈরি করুন ~/.vimrc
যাতে লাইনটি থাকা উচিত:
set nocompatible
~/.vimrc
এবং সেটিংস nocompatible
: Askubuntu.com/a/353944/158442 , বা 3. সিস্টেম ফাইল সম্পাদনা। কেবল সম্পাদনা করার পরামর্শটি /etc/vim/vimrc.tiny
নতুন, এবং তবুও আপনি উত্তরগুলি উদ্ভট কল হিসাবে তাদের একই জিনিসটি পরামর্শ দেওয়ার সময়।
Viতিহ্যবাহী vi সম্পাদকটি তীর কীগুলি (... দূরবর্তী) সনাক্ত করতে পারে না। দুটি সমাধান রয়েছে:
এটি TERM
ভেরিয়েবলের কারণেও হতে পারে ; এটি যেমন উদাহরণস্বরূপ সেট করুন:
export TERM=xterm
কিছু সিস্টেমে nocompatible
বিকল্পটি উপলভ্য নয় বা কোনও প্লাগইন তীর কী কার্যকারিতা ভঙ্গ করলে সমস্যাটি সমাধান করা যাবে না। এখানে একটি কার্যনির্বাহী ...
.exrc
নিম্নলিখিত লাইনগুলি অন্তর্ভুক্ত করতে ফাইলটি সম্পাদনা করুন :
map! ^[OA ^[ka
map! ^[OB ^[ja
map! ^[OC ^[la
map! ^[OD ^[ha
বা, যদি সমস্যাটি কেবলমাত্র সাধারণ মোডে উপস্থিত থাকে তবে আপনি নীচে পরিবর্তিত হয়ে nmap
এড়িয়ে যেতে পারেন a
:
nmap! ^[OA ^[k
ইত্যাদি।
এগুলি উত্পাদনের জন্য প্রয়োজনীয় মূল সংমিশ্রণগুলি এখানে রয়েছে (কেবল প্রথম দেখায়):
map! <CTRL-V><Up-Arrow> <CTRL-V><ESC>ka
এটি সম্পাদনা মোড থেকে পালাতে পারে, পছন্দসই দিকটিতে চলে যায় এবং সম্পাদনা মোডটিকে নতুন করে দেয়। আক্ষরিক <ESC> <O> <A>, ইত্যাদির ক্রম হিসাবে পলায়ন ক্রমটি পড়া ভি'কে অতিক্রম করার জন্য এটি প্রয়োজন overcome
VI এর জন্য "~ / .exrc" ফাইলটি তৈরি করুন বা সম্পাদনা করুন বা ভিআইএম "~ / .vimrc" ফাইলটি তৈরি বা সম্পাদনা করুন বা লাইনে যুক্ত করুন।
set nocompatible
এই লেখার সময় দ্বিতীয় সর্বাধিক ভোট দেওয়া আইটেমের প্রশংসা রয়েছে যা তারা কেন এন্ট্রি গ্রহণ করা হয়নি তা নিয়ে ভাবছেন। এর কারণ হ'ল এমন হোস্ট রয়েছে যা অন্য সম্পাদকদের ইনস্টল করার অনুমতি দেয় না। তারপরেও ভিমের মাঝে মাঝে একই প্রভাব থাকে, তাই শীর্ষ দুটি এন্ট্রি থেকে একগুচ্ছ ব্যবহারযোগ্য তথ্য রয়েছে। তবে আমি মন্তব্য করতে পারি না আশা করি এই কারণগুলি পরিষ্কার করে দেয় যে কেন একজনেরও সময় 100% সঠিক নয়।
কিছু কারণে উবুন্টু আমার নতুন 18.04 ভিপিএসে ব্যবহারকারীর রুটের জন্য এনভ্যাভার প্রাথমিক সূচনা বাদ দিয়েছে om যদি এটি হয় তবে vi .vimrc ফাইলটি খুঁজে পাচ্ছেন না। সমস্যাটি সাধারণ ব্যবহারকারীদের জন্য (ঘরে / ঘরে) দেখা দেয় না।
ভেরিয়েবল পরীক্ষা করতে:
echo $HOME
যদি এটি ফাঁকা লাইনে ফলাফল করে, ভেরিয়েবল সেট করা হয় না। সমস্যাটি পরে চলে গেল
export HOME=/root
আমি কমান্ডটি /root/.bashrc ফাইলে স্থানান্তরিত করেছি (আমি জানি না এটি সাধারণত কোথায় সেট করা থাকে)।