ভিমে ক্লিপবোর্ডে কীভাবে অনুলিপি করবেন?


752

ভিম থেকে সরাসরি ক্লিপবোর্ডে অনুলিপি করা সম্ভব? yyভিমের অভ্যন্তরীণ বাফারে কেবল স্টাফ অনুলিপি করে। আমি ওএসের ক্লিপবোর্ডে অনুলিপি করতে চাই। ভিমে কি এরকম কোনও কমান্ড রয়েছে বা আপনি কেবল ভিমের মধ্যেই জিনিসগুলি ইয়াঙ্ক করতে পারবেন?


139
দয়া করে নীচের ভোটের জবাবটি দেখুন যা একটি গুরুত্বপূর্ণ সত্যকে স্পষ্ট করে: প্রথম স্থানটিতে কাজ করার জন্য নীচের পরামর্শগুলির জন্য আপনার অবশ্যই + ক্লিপবোর্ড বৈশিষ্ট্যটি সহ ভিএম সংকলন করতে হবে! এটি বেশিরভাগ সিস্টেমে ডিফল্ট নয়।
নিল ট্রাফট

7
@ নীলফ্রাফ্ট, কিছু উত্তর ভিআইএম থেকে বহিরাগত প্রোগ্রামগুলিতে পাইপিংয়ের পরামর্শ দেয়, সুতরাং যে কোনও উত্তর + ক্লিপবোর্ড পতাকা প্রয়োজন বলে দাবি করা ভুল। ভবিষ্যতের পাঠকদের বিভ্রান্তি থেকে বাঁচানোর জন্য কেবল ইশারা করা।
হ্নাত

2
সিস্টেমের ক্লিপবোর্ড থেকে (এবং অনুলিপি করে) ভিএম পেস্ট কীভাবে তৈরি করবেন তার সম্ভাব্য নকল ? (দ্রষ্টব্য: অন্য প্রশ্নটি নতুন, তবে এর উত্তরের উত্তর আইএমএইচওর রয়েছে, যার কারণেই আমি কেন এটিকে একটি
ডুপ

5
sudo apt-get install vim-gnome নীচে এই আদেশগুলি প্রয়োগ করার আগে আপনি নিশ্চিত হয়ে গেছেন বা আপনি অবৈধ রেজিস্টার ত্রুটি পাবেন!
হরণিরভাইর সিং

7
@ হার্নিরভাইয়ার এখানে প্রচুর পাঠকের vim-gnomeজন্য সম্ভবত অতিরিক্ত ওভারকিল বা তাদের অপারেটিং সিস্টেম / ডিস্ট্রোতে সহজলভ্য নয়, যেখানে আমি সন্দেহ করি vim-gtkএবং vim-gtk3সম্ভবত ক্লিপবোর্ড ইন্টিগ্রেশন সরবরাহ করার সময় কমপক্ষে নির্ভরশীলতার উপস্থিতি বেশি হয় (কমপক্ষে এক্স 11 তে এখনও তাদের জন্য; আমি নিশ্চিত নই যে এটি কীভাবে ওয়েল্যান্ডের সাথে যোগাযোগ করে)।
আন্ডারস্কোর_

উত্তর:


496

*রেজিস্টার করব। উইন্ডোজ +এবং *সমতুল্য। ইউনিক্সে +এবং এর মধ্যে একটি সূক্ষ্ম পার্থক্য রয়েছে *:

উইন্ডোজের অধীনে, * এবং + নিবন্ধগুলি সমান। এক্স 11 সিস্টেমে যদিও তাদের পার্থক্য রয়েছে। এক্স 11 সিস্টেমের জন্য, * নির্বাচন, এবং + হ'ল কাট বাফার (ক্লিপবোর্ডের মতো)। http://vim.wikia.com/wiki/Accessing_the_system_clipboard

*সম্ভবত আপনি বেশিরভাগ সময় যা চান তাই *এটি ব্যবহার করি কারণ এটি উভয় পরিবেশে যেমন প্রত্যাশা করা হয় তেমনি এটি কাজ করে।

লিনাক্স ডিস্ট্রোজগুলিতে আপনাকে ক্লিপবোর্ডের কার্যকারিতা অর্জন করতে প্রথমে vim-gtk(ওরফে gvim) ইনস্টল করতে হবে । এটি কারণ নন- gtk ভিম সাধারণত এক্স 11 সমর্থন ছাড়াই সংকলিত হয়। এটি কেবল কনসোলটিতে কেবল মেশিনে চালিত হওয়ার অনুমতি দেয় (প্রায়শই সার্ভারগুলি)।

এবং ইয়ঙ্কিং বা রাখার সময় রেজিস্টারগুলি কীভাবে ব্যবহার করবেন সে সম্পর্কে বিভ্রান্তদের জন্য, আপনি কেবল "নিবন্ধকের নামটি লিখুন । তাই আপনি যে ক্লিপবোর্ড রেজিস্টার লিখেছেন তাতে কিছু অনুলিপি করার জন্য "*yএবং তারপরে আপনাকে টাইপ করা যায় "*p(ক্রেডিট: কাইল ম্যাথিউজ)


31
ম্যাক ওক্স সিংহের উপর কাজ করে না। "তারপরে" টিপানোর পরে, আপনি যখন কিছু করতে না পারছেন তখন ম্যাকটি শব্দ করে তোলে I আমি কীভাবে ম্যাকটিতে এটি করব?
এডি

62
আপনাকে এটিও নিশ্চিত করতে হবে যে ক্লিপবোর্ডের জন্য সমর্থন সহ ভিআইএম সংকলিত হয়েছে। উবুন্টুতে ডিফল্ট ভিমে হয় না। চেষ্টা করুন vim --version|grep .xterm_clipboard -oএবং যদি তা হয় -তবে আপনার সমর্থন নেই। উবুন্টুফর্মস.org
স্পারহাক

66
আপনি যদি লিনাক্স ব্যবহার করেন তবে আপনার +নিবন্ধভুক্ত করা উচিত । উদাহরণস্বরূপ, আপনি যদি সিস্টেমের ক্লিপবোর্ডে তিনটি লাইন অনুলিপি করতে চান, তবে কমান্ডগুলি ব্যবহার করুন v3j"+yএবং তারপরে আপনি এগুলিকে আরও একটি ভিআইএম-এ আটকে দিতে পারেন। *লিনাক্সের অধীনে রেজিস্টার ব্যবহার করে কেবলমাত্র বিভিন্ন ভিআইএম অ্যাপ্লিকেশনগুলির মধ্যে অনুলিপি করা যায়।
ডায়াবলোনও

6
লিনাক্সে, * রেজিস্টারটি অনুলিপি অনুলিপি করা এবং আটকানোর জন্য কাজ করে না।
weberc2

11
weberc2 এবং diabloneo, * নিবন্ধটি বাছাই ক্লিপবোর্ডের জন্য, মিডল ক্লিক থেকে অ্যাক্সেসযোগ্য, মেনু পেস্ট বা ^ ভি নয়
জিম কেইনার

354

ম্যাক ওএসএক্স-এ

  • নির্বাচিত অংশটি অনুলিপি করুন: চাক্ষুষভাবে পাঠ্য নির্বাচন করুন (টাইপ করুন vবা Vসাধারণ মোডে) এবং টাইপ করুন:w !pbcopy

  • পুরো ফাইলটি অনুলিপি করুন :%w !pbcopy

  • ক্লিপবোর্ড থেকে পেস্ট করুন :r !pbpaste

উপর সবচেয়ে লিনাক্স ডিস্ট্রো, আপনি প্রতিস্থাপন করতে পারেন:

  • pbcopyউপরের সাথে xclip -i -sel cবাxsel -i -b
  • pbpasteব্যবহার xclip -o -sel -cবা xsel -o -b
    - দ্রষ্টব্য: আপনার ডিস্ট্রোতে এই সরঞ্জামগুলির ( xselএবং xclip) কোনওটিই পূর্বনির্ধারিত না হলে আপনি সম্ভবত সেগুলি रिपোজে খুঁজে পেতে পারেন

1
+1 সিংহের সাথে কাজ করে, যদিও vim --versionশো হয়-clipboard
রোপ্লেসো

26
ভিভের সাথে সামঞ্জস্যপূর্ণ যা মাভেরিক্স অক্স সহ প্রেরণ করা হয়। আপনার .vimrc vnoremap <C-c> :w !pbcopy<CR><CR> noremap <C-v> :r !pbpaste<CR><CR>এ যুক্ত করুন এই ম্যাপিংটি ব্যবহার করতে, আপনি যদি অনুলিপি করতে চান তবে ভিজ্যুয়াল মোডে পাঠ্য হাইলাইট করুন এবং অনুলিপি করতে Ctrl-c টিপুন। সিস্টেম ক্লিপবোর্ড থেকে পেস্ট করতে, Ctrl-v টিপুন।
ডেভিডিটসু

7
লিনাক্সে এটি এর সাথে কাজ করে: w! Xclip -sel c বা: w! Xsel -b
trve.fa7ad

4
লিনাক্স সিটিআরএল + সি কপির জন্য: ~ / .vimrc এ যুক্ত করুন:vnoremap <C-C> :w !xclip -i -sel c<CR><CR>
অ্যান্ডি

3
গৃহীত উত্তরটির চেয়ে অনেক বেশি সহায়ক উত্তর। ধন্যবাদ!
ব্রাইস জনসন

165

আপনার ভিএমআরসি ফাইলে আপনি অনুলিপি করতে এবং অনুলিপি করার জন্য সিস্টেম ক্লিপবোর্ডটি স্বয়ংক্রিয়ভাবে ব্যবহার করতে পারেন।

উইন্ডোজ সেটটিতে:

set clipboard=unnamed

লিনাক্স সেটে (vim 7.3.74+):

set clipboard=unnamedplus

দ্রষ্টব্য: এগুলি কাজ করার জন্য আপনার ভিমের একটি আধুনিক সংস্করণ ব্যবহার করতে হতে পারে।

http://vim.wikia.com/wiki/Accessing_the_system_clipboard


39
আপনার নোটের সংযোজন হিসাবে - এটি কাজ করতে আপনাকে অতিরিক্ত প্যাকেজও ইনস্টল করতে হতে পারে। যদি আপনার ভিমে +xterm_clipboardবৈশিষ্ট্যটির অভাব হয় (আপনি চালানোর সময় দৃশ্যমান vim --version)। এটি আমার ক্ষেত্রে ছিল (কুবুন্টু 12.10 চালানো)। vim-gui-commonসঠিক কার্যকারিতা পেতে আমাকে প্যাকেজটি ইনস্টল করতে হয়েছিল ।
জ্যাকব ডালটন

4
set clipboard=unnamedম্যাক ওএস 10.11.6 (এল ক্যাপ্টেন) এ
ভিএম 7.4- র

1. টেনে আনতে অনুলিপি করুন 2. মাউস নির্বাচন করুন, ম্যাক সিয়েরা -10.12.6 এবং ভিআইএম-সংস্করণে কাজ করে: 8.0.1800 ~ / set mouse=vset clipboard=unnamed
.vimrc

set clipboard=unnamedম্যাকস ক্যাটালিনা
ডিয়েগো সোমার

আপনি আপনার উত্তর আপডেট করতে ইচ্ছুক হতে পারে। এটি 8.0.0 এর সাথে উবুন্টু 18.04 এ কাজ করে না।
Luís de Sousa

124

"+সিস্টেম ক্লিপবোর্ডে অনুলিপি করতে (যেমন "+yপরিবর্তে y) নিবন্ধ ব্যবহার করুন ।

তেমনিভাবে আপনি "+সিস্টেম ক্লিপবোর্ড থেকে পাঠ্য পেতে পেস্ট করতে পারেন (এর "+pপরিবর্তে p)।


আমি "* ব্যবহার করি, তবে মনে হয় এক্স এর মধ্যে কেবল তফাত আছে
ড্যাশ-টম-ব্যাং

3
@ ড্যাশ-টম-ব্যাং: +/ *পার্থক্যটি হ'ল SELECTIONবনাম PRIMARYকপির বাফারগুলি (এটি কোন এটিকে এটি মনে করতে পারে না)
দেনিথ

2
হ্যাঁ স্টারটি সিলেকশন, প্লাস হ'ল ক্লিপবোর্ড।
ড্যাশ-টম-ব্যাং

6
ডাবল উদ্ধৃতি চরিত্রটি vi এবং vim এ নিবন্ধক নির্বাচক হিসাবে কাজ করে।
অমরদীপ AC9MF

1
শর্টকাটের দুটি সেট মনে রাখবেন: "+yy(ক্লিপবোর্ডে "+yyঅনুলিপি করুন ) এবং (নির্বাচনের অনুলিপি অনুলিপি); "+p(ক্লিপবোর্ড থেকে পেস্ট করুন) এবং "*p(নির্বাচন থেকে পেস্ট করুন)। "ডিফল্টরূপে ভিআইএম এর নিজস্ব অভ্যন্তরীণ রেজিস্ট্রার যা রেজিস্ট্রার নির্বাচন করা হয় ( কোনও ধরণের রেজিস্ট্রার উল্লেখ না করে উপায় yyএবং pকাজ করবে )। পিএস: আমি ভাবছি যদি ভিমের নিজস্ব অভ্যন্তরীণ রেজিস্ট্রারের জন্য এমন কোনও চরিত্র আছে যা ডিফল্টরূপে পরিণত হয় turns "&yyyy

72

@ জ্যাকব ডাল্টন একটি মন্তব্যে এটি উল্লেখ করেছেন বলে মনে হয়, তবে কারও পক্ষে কোনও উত্তরে ভিমকে ক্লিপবোর্ড সমর্থন সহ সঙ্কলন করতে হবে বলে উল্লেখ করেছেন বলে মনে হয় না। আমার ডিফল্টভাবে ম্যাক ওএস এক্সে সেভাবে কনফিগার করা হয়নি এবং আমাকে ভিএম পুনর্নির্মাণ করতে হয়েছিল। আপনার কাছে আছে কি নেই তা জানতে এই কমান্ডটি ব্যবহার করুন vim --version | grep 'clipboard'+clipboardমানে আপনি ভাল আছেন এবং পরামর্শগুলি এখানে আপনার জন্য কাজ করবে, এর -clipboardঅর্থ আপনাকে ভিএম পুনরায় সংকলন এবং পুনর্নির্মাণ করতে হবে।


15
অথবা, নিজেকে সংকলনের পরিবর্তে, আপনি একটি ভিআইএম প্যাকেজ ইনস্টল করতে পারেন যা ইতিমধ্যে ক্লিপবোর্ড সমর্থন দিয়ে তৈরি করা হয়েছে। OS X এর উপর, Homebrew এই আছে: brew install vim। উবুন্টুতে, আপনি ব্যবহার করতে পারেন sudo apt-get install vim-gnome। অন্যগুলিতে (নন-জিনোম) লিনাক্সগুলি ডিস্ট্রো করে আপনি বরং ইনস্টল করতে পারেন vim-gtkবা vim-athena
নিল ট্রাফ্ট

3
ধন্যবাদ, আর্চ লিনাক্সে আমাকে wiki.archlinux.org/index.php/Vim#Installationvimgvim
michalzuber

আপনার উত্তরগুলি ব্যাখ্যা করছে যে কেন ইয়াঙ্ক ক্লিপবোর্ডের সাথে কাজ করে না, আপনার তথ্যের সাথে একা আমি আরও ভাল গুগল অনুসন্ধান করতে পারি এবং এটি সহজে কাজ করতে পারি। এবং এখন এটি কাজ করে। আপনি নিজের উত্তরটিতে @ নীলফ্রাট মন্তব্যটি অন্তর্ভুক্ত করলে আরও ভাল হবে যাতে লোকেরা গুগল অনুসন্ধান করার প্রয়োজন না হয়।
ইয়ানা আগুন সিসওয়ান্তো

ম্যাকে, brew install vimআমি set clipboard=unnamed.vimrc এ যুক্ত করার ঠিক পরে । source ~/.vimrcকমান্ড লাইনে রান করুন । .Bash_ প্রোফাইলে আমি যোগ করেছি alias vim="/usr/local/bin/vim"তারপর চালান source ~/.bash_profile। এখন vim- এ কেবল ব্যবহার করুন yএবং pঅনুলিপি করুন / আটকান
দিমিত্রি

59

সামিট আপ করুন এবং নববিদের পক্ষে এটি আরও সহজ করুন,

বর্তমান লাইনটি অনুলিপি করতে, কমান্ড মোডে টাইপ করুন:

"*yy

কমান্ড মোডে পুরো ফাইল / বাফারটি অনুলিপি করতে প্রথমে শুরুতে যান gg, তারপরে টাইপ করুন

"*yG

যেমন উল্লেখ করা হয়েছে, এর +clipboardবাইরে থাকা দরকার vim --version, যা ক্লিপবোর্ড সমর্থন উপলব্ধতার ইঙ্গিত দেয়, না -clipboardমানে no


1
"*5yy5 lines yankedক্লিপবোর্ডে কিছুই বলছে না? OS / এক্স।
জাভাদবা

2
হ্যাঁ আমি + ক্লিপবোর্ড যাচাই করেছিলাম
জাভাদবা

nnoremap <leader>c "* আপনি .vimrcআপনার ওএস ক্লিপবোর্ডে অনুলিপি করতে চান এমন টেক্সট অবজেক্টটি ধরার জন্য একটি গতি অনুসরণ করে ধরণের "কপি" হিসাবে কাজ করে।
সিপিকে

ধন্যবাদ, আপনি এটি ঠিক আমার প্রয়োজন মতো ব্যাখ্যা করেছেন explained
সাইমেন টিমারম্যানস

3
আমি ইনস্টল vim-gtkঘুরে -clipboardমধ্যে +clipboardচেয়ে "+yyকাজ করে যাচ্ছে।
Lai32290

30

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

ভিএম ইনস্টল করুন:

brew install vim

ভিআইএম এর গুই ভার্শন ইনস্টল করুন:

brew install macvim

কার্যকর হওয়ার জন্য টার্মিনালটি পুনরায় চালু করুন।


নিম্নলিখিত লাইনটি ~ / .vimrc এ যুক্ত করুন
set clipboard=unnamed

এখন আপনি লিমিটি ভিএম yy-তে অনুলিপি করে এটি সিস্টেম ব্যাপী পেস্ট করতে পারেন ।



আপডেট পদ্ধতি :

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

  1. সিস্টেম ক্লিপবোর্ডে ভিমের পাঠ্য [রেঞ্জ] অনুলিপি করুন। (ইঙ্গিত: প্রথমে ব্যাপ্তিটি নির্বাচন করতে vবা Vনির্বাচন করতে এবং তারপরে :প্রাক্তন কমান্ডটি সক্রিয় করতে কোলনটি টাইপ করুন ):
    :[line-range]yank +
    উদাহরণস্বরূপ
    :5,10y *(সিস্টেমের ক্লিপবোর্ডের *রেজিস্টারে 5-10-10 অনুলিপি / ইয়ঙ্ক করুন )

  2. সিস্টেম ক্লিপবোর্ড থেকে সামগ্রীটিকে একটি নতুন লাইনে ভিমে আটকে দিন:
    :put +

বিঃদ্রঃ:

  1. আপনি যদি একটি শব্দের সীমা নির্বাচন করেন তবে উপরেরটি কার্যকর হবে না। ক্লিপবোর্ডে এই ভিজ্যুয়াল ব্লকটি সংরক্ষণ করতে "* y বা " + y ব্যবহার করুন। তবে এটি টাইপ করা শক্ত, আমি এখনও বিকল্পগুলি নিয়ে ভাবছি।
  2. : সহায়তা "* বা : সহায়তা * + আরও তথ্যের জন্য
  3. brew info vimভিএম ইনস্টল করার জন্য অন্যান্য বিকল্প দেখতে সক্ষম হবে। ততক্ষণে এটির অন্য কোনও বিকল্প নেই।

--with-override-system-vimহওয়া উচিত--with-override-system-vi
মাফলো

ন্যূনতম সিস্টেমে প্রচুর Xorg স্টাফ ইনস্টল করা এড়াতে আমি এটি চেষ্টা করতে চাই তবে আমি কিছু অনুপস্থিত। আমি ভি মোডে নির্বাচন করে তারপরে ":" চাপানোর পরে "সম্পাদক কমান্ড নয় [রেঞ্জ] ইয়াঙ্ক +" পেয়েছি।
jeremyjjbrown

29

উবুন্টুর জন্য - জুলাই 2018

রেজিস্টার ব্যবহার করুন , "+ (সিস্টেম ক্লিপবোর্ডে অর্থাত অনুলিপি করতে + Y" পরিবর্তে Y )।

একইভাবে আপনি সিস্টেম ক্লিপবোর্ড থেকে পাঠ্য পেতে "+" থেকে পেস্ট করতে পারেন (অর্থাত্ পি + এর পরিবর্তে "+ পি )।

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

vim --version | grep .xterm_clipboard -o 

আর যদি এটা -xterm_clipboard (ক বিয়োগ উপসর্গ) তারপর আপনি কি করবেন সমর্থন আছে।

ক্লিপবোর্ড সমর্থন আছে এমন ভিআইএম এর কার্যকারী সংস্করণটি অদলবদলের জন্য কিছু নির্দেশাবলী এখানে দেওয়া হয়েছে।

  • do সুডো আপ্ট-গেট পুর্জ উইম
  • do sudo apt-get autoremove (সিস্টেম থেকে কোনও বহিরাগত ভিম নির্ভরতা প্যাকেজ অপসারণ)
  • do sudo apt-get vim-gnome ইনস্টল করুন

আবার পরীক্ষা করুন vim --version | grep .xterm_clipboard -oএবং আপনি নিশ্চিত করতে পারবেন যে ক্লিপবোর্ড এখন উপলব্ধ (যেমন। + Xterm_clipboard )

শুভকামনা।


3
আপনি আমার দিনটি তৈরি করেছেন, বা সম্ভবত আমার মাস। কয়েক বছর ধরে উবুন্টুতে ক্লিপবোর্ডলেস ভিমে মেহনতের পরে, এটি একটি আশ্চর্যজনক অনুভূতি। আরসেল্ডন, আপনাকে ধন্যবাদ !!
evanrmurphy

উপরের বর্ণিত বিষয়গুলি ছাড়াও, ইয়াঙ্কের কাজ করার জন্য set clipboard=unnamedplusআমাকে আমার .vimrcফাইলটি লিখতে হয়েছিল। আমি উবুন্টু 18.04 ব্যবহার করছি।
এলিজা

23

আমি আমার ক্লিপবোর্ডের সিস্টেমে অনুলিপি করতে পারিনি কারণ আমার ~ / .vimrc ফাইলটিতে এটি ছিল:

 if has('mouse')
   set mouse=a
 endif

তবে আপনি যদি এই লাইনটি পরবর্তী যুক্ত করে থাকেন তবে এটি আপনাকে আপনার ক্লিপবোর্ডে যা কিছু বেছে নিয়েছে তা কেবলমাত্র Ctrl+c পেতে দেয়।

vmap <C-c> "+y

মূল আলোচনা এবং আরও বিশদ: সেট মাউস = একটি সক্ষম দ্বারা ভিএম এর বাইরে পাঠ্য অনুলিপি করুন


3
আমি আমার .vimrc এ লাইনটি যুক্ত করিনি, তবে আপনার সরবরাহিত লিঙ্কটি খুব কার্যকর ছিল। ভিমে টেক্সট নির্বাচন করার সময় আপনি যদি শিফটটি ধরে রাখেন, আপনি ভিজ্যুয়াল মোডে প্রবেশ না করেই পাঠ্য অনুলিপি করতে সক্ষম হবেন। তাই ধন্যবাদ এবং +1।
স্টিফান ভ্যান ড্যান আকার

শিফট ট্রিকটি আমার যা প্রয়োজন। টার্মিনেটরের মতো সম্পাদকদের সাথেও কাজ করে যা প্রম্পটে থাকা অবস্থায় অনুলিপি করতে Ctrl + Shift + c ব্যবহার করে, যা আমি প্রথমে চেষ্টা করেছি। আমি ভিএম দিয়ে -xterm_clipboard ইনস্টল করেছি।
অ্যান্ডার্স এলমগ্রেন

18

আমার জন্য সমাধানটি ছিল অতিরিক্ত ভিআইএম ইনস্টল করা যা ক্লিপবোর্ড বিকল্পটি অন্তর্ভুক্ত করেছে: 

sudo apt-get install vim-gnome

3
এটি আমি উবুন্টু 16.04 এর জন্য করতে হয়েছিল। আমি অন্যান্য পরামর্শ সাফল্য ছাড়া চেষ্টা করেছিলাম। এটি ছিল সবচেয়ে সহজ এবং আমি "+ ওয়াই" দিয়ে যা প্রত্যাশা করেছিলেন তা করেছিলেন
স্টিভেন এ্যাকহফ

এটি কোনও ভিএমআরসি পরিবর্তন ছাড়াই কবজির মতো কাজ করে! এখনও উবুন্টু 16.04
নির্ধারিত

"+yপরামর্শ শুধুমাত্র সঙ্গে কাজ vim-gnome। লিনাক্স মিন্ট ব্যবহার 18.2।
সমুরসা

14

আপনি যদি জিভিএম ব্যবহার করছেন তবে আপনি এটিও করতে পারেন set guioptions+=a। এটি ভিজ্যুয়াল মোডে হাইলাইট করা পাঠ্যের ক্লিপবোর্ডে স্বয়ংক্রিয় অনুলিপিটি ট্রিগার করবে।
খসড়া: নোট করুন যে উন্নত ক্লিপবোর্ড পরিচালকদের (ইতিহাস সহ) এক্ষেত্রে আপনার সমস্ত নির্বাচনের ইতিহাস পাবেন ...


13

উত্তর এখানে আপনি খুঁজে পেতে পারেন আর্ক উইকি

লিনাক্সের জন্য: প্রথমে আপনাকে ইনস্টল করে আপনার ভিএম সংস্করণে ক্লিপবোর্ড সক্ষম করতে হবে gvim


এরপরে আপনাকে এই .vimrcফাইলটি আপনার ফাইলে রাখতে হবে।

set clipboard=unnamedplus


+1, অবাক হয়েছিল যে এই পদক্ষেপটি এখন প্রয়োজন। আমার পূর্ববর্তী সমস্ত আর্চ ইনস্টলেশনতে আমার এটি করা হয়নি।
কনস্টান্টিনোস

উবুন্টু 18.04 এর জন্যও কাজ করেছে এবং tmux এ চলছে। ধন্যবাদ!
জেমস ক্লিন

10

যদি আপনার ভিমটি +xterm_clipboardডিবিয়ানে ডিফল্টরূপে বিকল্প হিসাবে সংকলিত হয়ে যায় এবং আমার ধারণা উবুন্টু, আপনি ডেস্কটপ ক্লিপবোর্ড পরিচালনা করে এমন বহিরাগত প্রোগ্রামে নির্বাচন বা পুরো বাফারটি পাইপ করতে পারেন। জন্য xclip(যা আপনি পূর্বে ইনস্টল করতে হবে), কমান্ড হতে হবে:w !xclip -sel clip


1
এর জন্য ধন্যবাদ - এটি আমার জন্য উবুন্টুতে কাজ করে নি (তাই আপনার উবুন্টু অনুমানটি সঠিক কিনা তা নিশ্চিত করে) এবং আমি জানি না কেন know আমি -xterm_clipboardযখন দেখানো পতাকাগুলিতে এখন দেখতে পাচ্ছি vim --version
জামেস্ক

এটি আমাকে ক্লিপবোর্ড সমর্থনের একটি ভাল উত্স খুঁজে পেতে সহায়তা করেছে: vimcast.org/blog/2013/11/getting-vim-with-clipboard-support
jamesc

9

শুধুমাত্র উবুন্টু টার্মিনালের অধীনে ভিমে,

টার্মিনালে shift + drag mouseভিএম করে একটি পাঠ্য নির্বাচন করতে টিপুনctrl + shift + c

তারপরে ctrl + vঅন্য সম্পাদককে


3
এটি কেবলমাত্র ভিএম ভিজ্যুয়াল যা তা নির্বাচন করতে কাজ করে, আপনি যদি পুরো ফাইলটি নির্বাচন করতে চান তবে কী হবে?
গেরেপ

@ জিরেপ এই পদ্ধতিটি পুরো ফাইল নির্বাচনের জন্য কাজ করে না। শুধুমাত্র ভিআইএম টার্মিনালে এবং যেখানে টার্মিনাল স্ক্রিনে টেক্সট প্রদর্শিত হবে তা পাঠ্যের একটি বিভাগ নির্বাচন করা ভাল।
সুপওয়াত পুসাভান্নো

1
এটি কেবল পাঠ্য / কোডের পরিবর্তে লাইন নম্বর, বিভক্তির বাফার সীমানা এবং দৃশ্যমান সমস্ত কিছু অনুলিপি করে।
জেলফির কালটসটহল

9

যদি আপনার ক্লিপবোর্ডে টেক্সট অনুলিপি করার সহজ উপায় এক্সক্লিপ থাকে তবে নিম্নরূপ:

  1. ইয়াঙ্ক পাঠ্য আপনি অনুলিপি করতে চান। ( yভ্যানিলা ভিমে কমান্ড)
  2. টাইপ করুন :call system("xclip -selection clipboard", @")

:call system()একটি টার্মিনাল কমান্ড চালায়। এটি দুটি আর্গুমেন্ট গ্রহণ করে, প্রথম কমান্ড, দ্বিতীয়টি সেই আদেশে কী পাইপ দেয়। উদাহরণস্বরূপ :echom system("head -1", "Hello\nWorld")হ্যালো (কিছু প্যাডিং সহ) প্রদান করে। echom একটি কমান্ডের আউটপুট দেয়, কল দেয় না।

xclip -selection clipboard ডিফল্ট এক্স ক্লিপবোর্ডের বিপরীতে কেবলমাত্র সিস্টেম ক্লিপবোর্ডে পাঠ্য অনুলিপি করে (মাঝের মোউ বোতামটি অ্যাক্সেস করা)।

@"শেষ ইয়ঙ্কযুক্ত পাঠ্য দেয়। "ডিফল্ট রেজিস্টার, তবে আপনি যে কোনও নিবন্ধক ব্যবহার করতে পারেন all সমস্ত নিবন্ধের সামগ্রী দেখতে টাইপ করুন :registers


2
এটি আরও দৃ is়, এটি ভিএম ক্লিপবোর্ডের জন্য এবং কোনও ওএসে সমর্থন না মেনে চলার পরেও কাজ করে। উদাহরণস্বরূপ, ম্যাক রানে :call system("pbcopy",@")। এই কমান্ডটি একটি কী দিয়ে বাঁধতে পারে।
ilija139

এটি দুর্দান্ত কাজ করে তবে আমি এটি আমার ভিআরসিআরটিতে রাখতে পারি, এটি কি কাজ করবে? এটি আমার পক্ষে কাজ করছে না।
অতঃপর

4

কেউ এটি দরকারী খুঁজে পাবেন। আমি এক্স ক্লিপবোর্ড থেকে স্বতন্ত্র থাকতে চেয়েছিলাম এবং এখনও দুটি চলমান ভিমের মধ্যে কিছু পাঠ্য অনুলিপি করতে এবং আটকাতে সক্ষম হয়েছি। এই ছোট্ট কোডটি অনুলিপি করার জন্য টেমপ্লেট ফাইলটিতে নির্বাচিত পাঠ্যটি সংরক্ষণ করে। নীচে কোডটি আপনার .vimrc এ রাখুন। কাজটি করতে CTRL-c CTRL-v ব্যবহার করুন।

vnoremap: w! cp / dev / null ~ / temp.txt && cat> ~ / temp.txt

noremap: r! cat ~ / temp.txt


4
  1. আপনার set clipboard=unnamedমধ্যে রাখুন vimrc
  2. Visualমোডে আপনি কী অনুলিপি করতে চান তা নির্বাচন করুন (প্রবেশ করতে v চাপুন)।
  3. Normalমোডে ফিরে আসুন (এস্কেপ [এসিএস] টিপুন), অনুলিপি করতে y টিপুন।
  4. আপনি যদি ওএসের ক্লিপবোর্ড থেকে কিছু আটকানোতে চান তবে ভি / Normalমোডে পি / পি টিপুন ।

4

আমি একটি ভিম নিউই কিন্তু তবে সমস্ত পাঠ্যটি সিস্টেম ক্লিপবোর্ডে অনুলিপি করতে (যেমন আপনি যদি কোনও ওয়ার্ড প্রসেসর বা অন্য পাঠ্য সম্পাদক যেমন জিডিট, মাউসপ্যাড ইত্যাদিতে পেস্ট করতে চান তবে), সাধারণ মোডে:

ggVGy

বা আরও সহজভাবে:

:% Y

প্রস্তাবিত হিসাবে, আমি vim-gtk এবং ইনস্টল করা

ক্লিপবোর্ড সেট করুন = নামবিহীন lus

আমার .vimrc এ

এবং সবকিছু ঠিকঠাক কাজ করে

আপনি যদি কেবলমাত্র পাঠ্যের একটি অংশ অনুলিপি করতে চান তবে ভিজ্যুয়াল মোড (v) ব্যবহার করুন, আপনি যে পাঠ্যটি অনুলিপি করতে চান সেটি নির্বাচন করুন এবং y টিপুন ।

অবশেষে, আমি ক্লিপম্যান (আমার প্রিয়), ক্লিপিট, পার্সেলাইট বা অনুরূপ মত ক্লিপবোর্ডের প্রস্তাব দিই।

(আমি ডেবিয়ান স্ট্রেচ এক্সএফসিতে ভিএম ৮.০ ব্যবহার করছি)

আমার ইংরাজির জন্য আমাকে ক্ষমা করুন! :-)


4

এই উত্তরটি ম্যাক ব্যবহারকারীদের জন্য নির্দিষ্ট।

ম্যাকের সাথে উপলভ্য ডিফল্ট ভিআইএম ক্লিপবোর্ড বিকল্প সক্ষম করার সাথে আসে না। সিস্টেম ক্লিপবোর্ড অ্যাক্সেস করার জন্য আপনার সেই বিকল্পটি দরকার।

আপনার ভিমে সেই বিকল্পটি সক্ষম হয়েছে কিনা তা পরীক্ষা করতে নীচের কমান্ডটি ব্যবহার করুন

vim --version

ফলস্বরূপ, আপনার উচিত +clipboard। যদি এটি হয় -clipboardতবে আপনার ভিআইএমের কাছে সিস্টেম ক্লিপবোর্ড অ্যাক্সেস করার বিকল্প নেই।

আপনার প্রয়োজনীয় বিকল্পটি দিয়ে আপনার ভিআইএম তৈরি এবং ইনস্টল করা দরকার। কমান্ড অনুসরণ করা হয়।

# Create the directories you need
$ sudo mkdir -p /opt/local/bin
# Download, compile, and install the latest Vim
$ cd ~
$ git clone https://github.com/vim/vim.git
$ cd vim
$ ./configure --prefix=/opt/local
$ make
$ sudo make install
# Add the binary to your path, ahead of /usr/bin
$ echo 'PATH=/opt/local/bin:$PATH' >> ~/.bash_profile
# Reload bash_profile so the changes take effect in this window
$ source ~/.bash_profile"

উপরেরগুলি বিকল্পটি +clipboardসক্ষম করে সর্বশেষতম ভিআইএম ইনস্টল করবে ।

এখন আপনাকে সিস্টেম ক্লিপবোর্ড সেট করতে হবে। নিম্নলিখিত লাইন যুক্ত করুন~/.vimrc

set clipboard=unnamed

এখন আপনি সিস্টেম ক্লিপবোর্ডে পাঠ্যটিকে ইঙ্ক করতে পারেন। নীচে পদক্ষেপগুলি কীভাবে ইয়াঙ্ক করবেন তা ব্যাখ্যা করে।

  1. ভিএম কমান্ড মোডে press v, এটি আপনাকে ভিজুয়াল মোডে স্যুইচ করবে।
  2. আপনার অনুলিপি করতে প্রয়োজনীয় পাঠ্য বা লাইনগুলি নির্বাচন করতে কার্সারটিকে চারদিকে নিয়ে যান।
  3. Press yএটি ক্লিপবোর্ডে নির্বাচিত পাঠ্যটি অনুলিপি করবে।
  4. যে কোনও বাহ্যিক অ্যাপ্লিকেশন এবং CMD + vপেস্ট করতে যান ।

আমি ম্যাকবস মোজভে এবং ম্যাকবুক প্রো এর সাথে ম্যাকবুক প্রো ব্যবহার করি।


3

আমার সমস্যা ছিল কারণ আমার ভিম ক্লিপবোর্ড সমর্থন করছে না :

vim --version | grep clip
-clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      -mouseshape      +startuptime     -xterm_clipboard

আমি ভিম-জিনোম (যা ক্লিপবোর্ড সমর্থন করে) ইনস্টল করেছি এবং তারপরে আবার চেক করেছি:

vim --version | grep clipboard
+clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      +mouseshape      +startuptime     +xterm_clipboard

এখন আমি যথাক্রমে "+ y এবং" + পি ব্যবহার করে অনুলিপি করতে এবং পেষ্ট করতে সক্ষম।


3

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

আমি খুঁজে পেয়েছি যে আপনি যদি চেক না করেন:

দেখুন -> মাউস প্রতিবেদন করার অনুমতি দিন

টার্মিনাল মেনু থেকে, আপনি ক্লিপবোর্ড ব্যবহার করে অনুলিপি করতে সক্ষম হবেন

command + + c

আবার।


2

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

map <C-c> y:e ~/clipsongzboard<CR>P:w !pbcopy<CR><CR>:bdelete!<CR>

এটি কী করে সে সম্পর্কে বিশদটি পড়তে চাইলে আপনি আমার ব্লগে এটি পড়তে পারেন


1
ক্রেতা হুঁশিয়ার. ম্যাকের ক্ষেত্রে এটির অদ্ভুত প্রভাব রয়েছে।
আজাতর

নির্দেশ অনুসারে (লিনাক্স উবুন্টু ১ 16.০৪ তে, কোনও ক্লিপবোর্ড সমর্থন না করে) ক্লিপবোর্ডে এটি কোনও কিছু অনুলিপি করে বলে মনে হচ্ছে না, এবং যদি কোনও ভিএম সেশনে একাধিক ফাইল খোলা থাকে, তবে ট্যাবটি বন্ধ করে দেবে যেখানে পদক্ষেপ নেওয়া হয়েছে (ভিজ্যুয়াল নির্বাচন করুন এবং সিসি )।
ক্যালোসরাস

2

কিছু আন্তর্জাতিক কীবোর্ডের জন্য, আপনাকে একটি পেতে "+ টিপতে হতে পারে ।Space"

সুতরাং সেই ক্ষেত্রে আপনাকে "Space+yবা চাপতে হবে"Space*y


2

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


1

ওএসএক্সের জন্য, উপরে বর্ণিত 10342 উত্তরগুলির মতো, আপনাকে নিশ্চিত করতে হবে যে ভিআইএম ক্লিপবোর্ড বৈশিষ্ট্যটি সমর্থন করে, ওএসএক্সের সাথে প্রি-শিপড আসে যেটি ক্লিপবোর্ড সমর্থন করে না, এবং আপনি চালনা brew install vimকরলে এটি কার্যকর হবে।

ভিআই চালিয়ে যাওয়া আপনাকে এখনও প্রিশিপড ওএসএক্স সংস্করণ চালিত করে তুলবে, ব্রিউ থেকে আপনি ইনস্টল করেছেন এমনটি নয়।

এটি পেতে, আমি ওআরএক্স ডিফল্ট নয়, মেশিন সংস্করণে কেবল আমার ভিএম কমান্ডটি সরিয়ে রেখেছি:

alias vim="/usr/local/Cellar/vim/8.0.1100_1/bin/vim"

এবং এখন আমি সোনার


1

আমার সমাধানটি .vimrc এ নিম্নলিখিত লাইনটি চাপছিল:

map <C-y> :w !xclip -sel c <CR><CR>

স্ক্রিপ্টটি Ctrl + y ব্যবহার করে ক্লিপবোর্ডে নির্বাচিত লাইন (ট্রুপ ভিজ্যুয়াল মোড) বা ফাইল সামগ্রী (যদি কোনওটি নির্বাচিত না হয়) অনুলিপি করে। আমি মানজারো লিনাক্স ব্যবহার করছি যদি এটি গুরুত্বপূর্ণ হয়।


1

আমি ম্যাক ওক্সে (10.15.3) এবং ভিমে নতুন। আমি এটিকে হতাশাব্যঞ্জক বলে মনে করেছি এবং এখানে সমস্ত উত্তর খুব জটিল এবং / অথবা আমার অবস্থার সাথে প্রযোজ্য নয়। 2 টি উপায়ে এই কাজটি শেষ করেছি:

  1. কী ম্যাপিং যা পিবিসিপি ব্যবহার করে : ম্যাকের সাথে জাহাজের ভিএম এর পুরানো সংস্করণে কাজ করে।

    যোগ vmap '' :w !pbcopy<CR><CR>করার জন্য আপনার ~ / .vimrc
    এখন আপনি চাক্ষুষরূপে নির্বাচন করুন ও মারতে পারেন ''(দুই অ্যাপস্ট্রফিগুলি) ক্লিপবোর্ডে কপি করতে

  2. ভিএম এর নতুন সংস্করণ ইনস্টল করুন যাতে আমি অন্যান্য উত্তরে প্রস্তাবিত সমাধানটি অ্যাক্সেস করতে পারি:

    brew install vim
    alias vim=/usr/local/bin/vim(এটি আপনার ~ / .bashrc বা সমতুল্যতে যুক্ত করা উচিত)
    এখন আপনি দৃশ্যত নির্বাচন করতে পারেন এবং "+yyক্লিপবোর্ডে অনুলিপি করতে হিট করতে পারেন


খুব সুন্দর সমাধান!
এবিডি

0

selectingসাহায্যে mouseএবং right-click copyআমার ক্ষেত্রে কাজ করেন।

আমি চাইনি যে লাইনের নম্বরগুলি :set nonumberআগে অন্তর্ভুক্ত করা উচিত copying


আপনি কীভাবে এটি করতে পারেন নার্ডট্রি
জি-রুহ

ভিমের সাথে এর কোনও যোগসূত্র নেই এবং এটি এক্স (এক্স) ক্লিপবোর্ডে একমাত্র টার্মিনাল ভিত্তিক অনুলিপি।
কার্লো উড

আমি নিশ্চিত নই @ জি-রুহ
আকাশ

0

উপরের কিছুই আমার উইন্ডোজ ল্যাপটপে আমার জন্য কাজ করে নি।

Ctrl+ + Cজরিমানা অনুলিপি ছিল .. কিন্তু আমি প্রয়োজন Shift+ + Insertপেস্ট করুন!

(সর্বদা একটি ল্যাপটপ পাওয়ার জন্য একটি ভাল কারণ যেখানে Insertসেকেন্ডারি কী চাপ না দিয়ে সর্বদা অ্যাক্সেস করা যায়)


0

Shift+ Ctrl+ C আপনি যদি লিনাক্সের গ্রাফিকাল মোডে থাকেন তবে প্রথমে আপনাকে যা অনুলিপি করতে হবে তা নির্বাচন করতে হবে।

এখানে চিত্র বর্ণনা লিখুন

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