ভিমে সন্নিবেশ মোডে আটকানো সম্ভব?
ভিমে সন্নিবেশ মোডে আটকানো সম্ভব?
উত্তর:
সন্নিবেশ মোডে থাকার সময় CTRL-R {register}
উদাহরণ:
CTRL-R *
ক্লিপবোর্ডের বিষয়বস্তু inোকানো হবে CTRL-R "
(নামবিহীন নিবন্ধক) সর্বশেষ মুছুন বা ইয়াঙ্ক সন্নিবেশ করান। এটি ভিএম এর সাহায্যের ধরণে খুঁজে পেতে :h i_ctrl-r
CTRL-R *
শুধুমাত্র জিভিআইএম বা সংস্করণগুলিতে কাজ করে যা এক্সের সাথে ইন্টারেক্ট করার জন্য সংকলিত। টাইপ vim --version
এবং সন্ধান করুন +xterm_clipboard
। আপনার যদি তা না থাকে তবে আপনার ভিএম এর ভিন্ন সংস্করণ দরকার। ( vim.wikia.com
+clipboard
, তবে আপনার যদি এটি থাকে তবে তা +xterm_clipboard
আপনার উচিত। কিছু ওএস প্রয়োগ xterm_clipboard
হয় না।
*
রেজিস্টার মাঝারি মাউস-ক্লিকের +
সাথে গতানুগতিক যখন প্রথাগত অনুলিপি / পেস্ট হয়। standards.freedesktop.org/clipboards-spec/clipboards-latest.txt
আপনি তেজ পাঠ্য আটকানো ইনকামিং এ বিন্যাস কাপড় ইস্ত্রী করা চাই না, তাহলে আপনি ব্যবহারের বিষয়ে বিবেচনা করতে চাইতে পারেন: :set paste
। এটি ভিমকে আপনার কোডটি পুনরায় ট্যাব করতে বাধা দেবে। আটকানো হয়ে গেলে, :set nopaste
স্বাভাবিক আচরণে ফিরে আসবে।
set pastetoggle=<F2>
আপনার .vimrc তেমন কিছু যুক্ত করে একটি একক কী দিয়ে মোডটি টগল করাও সম্ভব । টগলিং অটো-ইনডেন্ট সম্পর্কিত আরও বিশদ এখানে ।
:set nopaste
পেস্ট মোডটি অক্ষম করবে
:set paste!
সম্ভবত সেট করা যেতে পারে আপনার কমান্ডের ইতিহাসে পেস্টটি খুব কাছাকাছি থাকে, তাই আপনি কেবল ':' টিপুন, তারপরে তীর-আপ এবং একটি '!' যুক্ত করুন।
:set paste!
ধন্যবাদ সম্পর্কে আরও ভাল বা আলাদা কি আছে :)
!
কমান্ড শেষে vim
টগল এবং বন্ধ কমান্ড। এর :set nopaste
পরিবর্তে আপনাকে টাইপ করতে হবে না আপনি নিজের ইতিহাসটি স্ক্রোল করে :set paste!
আবার একই কমান্ডটি চালাতে পারবেন ( )।
সরাসরি না। আপনি যা করতে পারেন তা হ'ল দ্রুত কোনও একক সাধারণ মোড অপারেশনের জন্য সন্নিবেশ মোডে প্রস্থান করুন Ctrl-Oএবং তারপরে সেখান থেকে পেস্ট করুন যা আপনাকে প্রবেশের মোডে ফিরিয়ে রেখে শেষ হবে।
কী কম্বো: Ctrl-O p
সম্পাদনা: আকর্ষণীয়। এটি প্রদর্শিত হয় যে আরও বেশ কয়েকটি লোক তালিকাভুক্ত করার মতো একটি উপায় রয়েছে।
esc + p
?
esc + p + i
এবং স্পষ্টভাবে টাইপ করা সহজCTRL-R + "
CTRL-R "
। উদাহরণস্বরূপ, যদিও ভিএমআরসি সেটিংস এটি পরিবর্তন করতে পারে তবে নতুন লাইনে কিছু আটকানো তার প্রবর্তনকে CTRL-O p
দূরে সরিয়ে দেয়।
সন্নিবেশ মোডে থাকাকালীন আপনি ব্যবহার করতে পারেন Ctrl-R {register}
, যেখানে নিবন্ধক হতে পারে:
+
ক্লিপবোর্ডের জন্য,*
এক্স ক্লিপবোর্ডের জন্য (এক্সে সর্বশেষ নির্বাচিত পাঠ্য), "
নামবিহীন নিবন্ধের জন্য (সর্বশেষে মুছুন বা ভিমে ইয়ঙ্ক),:h registers
)।Ctrl-R {register}
পাঠ্যটি সন্নিবেশ করান যেন এটি টাইপ করা থাকে।
Ctrl-R Ctrl-O {register}
মূল ইনডেন্টেশন সহ পাঠ্য সন্নিবেশ করান।
Ctrl-R Ctrl-P {register}
পাঠ্যটি সন্নিবেশ করায় এবং এটিকে স্বয়ংক্রিয়ভাবে অন্তর্ভুক্ত করে।
Ctrl-O
সন্নিবেশ মোডে ফিরে আসার আগে যে কোনও সাধারণ মোড কমান্ড চালাতে ব্যবহার করা যেতে পারে
Ctrl-O "+p
, উদাহরণস্বরূপ এটি ব্যবহার করা যেতে পারে।
আরও তথ্যের জন্য ডকুমেন্টেশন সহ দেখুন :h i_ctrl-r
আপনি ক্লিপবোর্ড থেকে এটি দিয়ে পেস্ট করতে এটি ব্যবহার করতে পারেন Ctrlv:
set pastetoggle=<F10>
inoremap <C-v> <F10><C-r>+<F10>
এবং এটি দিয়ে ক্লিপবোর্ডে ভিজ্যুয়াল নির্বাচনটি ইয়াঙ্ক করার জন্য Ctrlc:
vnoremap <C-c> "+y
আপনি যদি সাধারণ মোডে ক্লাসিক ভিম ইয়ঙ্কিং / পেস্টিং ( y/ p) এর জন্য ডিফল্টরূপে ক্লিপবোর্ড ব্যবহার করতে চান তবে এখানে একটি কনফিগারেশন বিকল্প রয়েছে যা এটি করে:
set clipboard=unnamedplus
এই কনফিগারেশনের সাহায্যে আপনি প্রথমে স্বাভাবিক মোডে ইয়াঙ্ক করতে পারেন এবং তারপরে Ctrlvসন্নিবেশ মোডের মাধ্যমে পেস্ট করতে পারেন । এছাড়াও, আপনি বিভিন্ন ভিআইএম দৃষ্টান্ত এবং বিভিন্ন অ্যাপ্লিকেশন থেকে পাঠ্য আটকে দিতে পারেন।
আরেকটি বিকল্প হ'ল:
set clipboard=unnamed
তারপরে আপনি নিজের এক্স পরিবেশে মাউস টেনে কিছু নির্বাচন করতে সক্ষম হবেন এবং এরপরে এটি ভিমে আটকে দিতে পারবেন। তবে (কোনও কারণে) আপনি ভিমের মধ্যে কিছু ( y) ইঙ্ক করতে পারবেন না এবং shiftinsertএটি অন্য কোথাও পরে আসতে পারে যা সম্ভবত বেশ সীমাবদ্ধ।
এই সম্পর্কে দস্তাবেজগুলি ভিম করুন: http://vim.wikia.com/wiki/Acecessing_t__ সিস্টেম_ক্লিপবোর্ড
কাস্টম নিবন্ধগুলি থেকে পেস্ট করার জন্য আপনি অন্যান্য উত্তরগুলি অনুসরণ করতে পারেন :)। এই উত্তরটি মূলত আপনার সিস্টেম ক্লিপবোর্ডের সাথে ভিমে সংহত করার বিষয়ে।
নোট করুন set clipboard=unnamedplus
এবং set clipboard=unnamed
কাজ করার জন্য আপনার gvim বা vimx ( vim-X11
) ব্যবহার করতে হবে : সেগুলি সংকলিত +xterm_clipboard
। আপনি .bashrc
এটির vim
সাথে aliasচ্ছিকভাবে এটির সাথে নিজের নাম রাখতে পারেন vimx
:
if [ -e /usr/bin/vimx ]; then
alias vim='/usr/bin/vimx'; # vim with +xterm_clipboard
fi
আপনার ভিমে +xterm_clipboard
প্রদত্ত তথ্যগুলিতে আছে কিনা তা আপনি খুঁজে পেতে পারেন vim --version
।
:set paste
এবং বাইজেন্টাইন এর ডিফল্ট আচরণ <leader><leader> * y
এমনকি দূরবর্তী থেকে কাম্য? খুব বেশি প্রতিশ্রুতিবদ্ধ শোনার জন্য নয়, আমি যে সত্যিকারের দর্শনের প্রতিফলন ঘটায় তা সত্যই উত্সাহী, বা যদি এটি কেবল একটি .তিহাসিক দুর্ভাগ্য হয়।
inoremap <S-Insert> <F12><C-r>+<F12>
(আমি F12 টি পেস্টটোগল হিসাবে ব্যবহার করি)। ধন্যবাদ।
আপনি যদি সিস্টেম ক্লিপবোর্ড ( :set clipboard=unnamed
) ব্যবহার করতে ভিমটিকে সেট করেন তবে আপনার ভিমে অনুলিপি করা কোনও পাঠ্য Shift+ ব্যবহার করে আটকানো যেতে পারে Insert। Shift+ Insertহ'ল একটি ওএস-প্রশস্ত পেস্ট কী-সংমিশ্রণ ( Ctrl+ Insertএটি সম্পর্কিত 'অনুলিপি')।
p
ক্লিপবোর্ড-এর লেখাটি পেস্ট?
Shift + Insert
পাঠ্যটি পেস্ট করার আগে , আমাদের সন্নিবেশ মোডে থাকা দরকার।
সন্নিবেশ মোডে পেস্ট করতে আপনি কেবল মাউস মিডল বোতামটি ব্যবহার করতে পারেন (কেবলমাত্র লিনাক্স)।
আপনি এর -- INSERT (past) --
মাধ্যমে মোড প্রবেশ করতে পারেন :
অথবা
:set paste
এবং সন্নিবেশ মোডে প্রবেশ করা ( :set nopaste
অক্ষম করতে)একবার -- INSERT (past) --
মোডে কেবল আপনার সিস্টেমের পেস্ট ফাংশনটি ব্যবহার করুন (যেমন CtrlShiftvলিনাক্সে,Cmdv উপর, ম্যাক ওএসে)।
ভিএম ওভার এসএসএস ব্যবহার করার সময় এই কৌশলটি খুব কার্যকর।
হ্যাঁ. উইন্ডোজ Ctrl+ এV এবং লিনাক্সে প্রায় একই সাথে দুটি মাউস বোতাম টিপুন।
উইন্ডোজে আমার মনে হয় আমার _ ভিমআরসি-তে এই লাইনটি সম্ভবত এটি করে:
source $VIMRUNTIME/mswin.vim
লিনাক্সে আমি কীভাবে এটি করেছি তা মনে নেই। দেখে মনে হচ্ছে ডিফল্ট .vimrc ফাইল থেকে আমি সম্ভবত কিছু লাইন মুছে ফেলেছি।
কেবল মানচিত্র যুক্ত করুন:
" ~/.vimrc
inoremap <c-p> <c-r>*
পুনরায় আরম্ভ করুন এবং যখন Crtl+p
সন্নিবেশ মোডে টিপুন , অনুলিপিযুক্ত পাঠ্য আটকানো হবে