কোন ভিম কমান্ড (গুলি) শব্দ / উদ্ধৃত শব্দ ব্যবহার করতে পারে?


204

কিভাবে আমি করতে পারি দ্রুত ২ / উদ্ধতি শব্দ এবং পরিবর্তন উদ্ধৃত (থেকে যেমন 'করা ") তেজ আছে? আমি আশেপাশের.ভিম প্লাগইন সম্পর্কে জানি তবে আমি কেবল ভিম ব্যবহার করতে চাই।


একটি সমাধান আসলেই প্রসঙ্গে নির্ভর করে। আপনি কি এটি কেবল একটি লাইনে বা সম্পূর্ণ ফাইলে বা একক উদ্ধৃত স্ট্রিংয়ের জন্য করতে চান?
লুকাস ওমান

একটি লাইনে একক শব্দ বা সমস্ত শব্দের জন্য। উদাহরণস্বরূপ যখন আটকানো শব্দগুলিকে স্ট্রিং লেটরেলে রূপান্তর করা হয়।
ইউজিন ইয়ারমশ

উত্তর:


251

আশেপাশে.ভিম আপনার সহজ উত্তর হতে চলেছে। আপনি যদি সত্যই এটি ব্যবহারের বিরুদ্ধে স্থির হন তবে আপনি যা করতে পারেন তার কয়েকটি উদাহরণ এখানে are অগত্যা সর্বাধিক দক্ষ নয়, তবে সে কারণেই চারপাশে.ভিম লেখা হয়েছিল।

  • একক উদ্ধৃতি ব্যবহার করে একটি শব্দ উদ্ধৃত করুন
    ciw'Ctrl+r"'
    • ciw - কার্সার চালু থাকা শব্দটি মুছুন এবং সন্নিবেশ মোডে শেষ করুন।
    • ' - প্রথম উদ্ধৃতি যোগ করুন।
    • Ctrl+r"- "নিবন্ধের বিষয়বস্তু প্রবেশ করান , শেষ ইয়ঙ্ক / মুছুন aka
    • ' - সমাপ্ত উদ্ধৃতি যোগ করুন।

  • একক উদ্ধৃতিতে আবদ্ধ একটি শব্দ উদ্ধৃত করুন
    di'hPl2x
    • di' - একক উদ্ধৃতি দ্বারা আবদ্ধ শব্দটি মুছুন।
    • hP - কার্সারকে এক জায়গায় বামে স্থানান্তর করুন (শুরুর উদ্ধৃতিটির উপরে) এবং উদ্ধৃত পাঠ্যটি উদ্ধৃতিটির আগে রাখুন।
    • l - কার্সারটি এক জায়গায় ডানদিকে সরান (শুরুর উদ্ধৃতিটির শীর্ষে)।
    • 2x - দুটি উদ্ধৃতি মুছুন।

  • একক উদ্ধৃতিগুলিকে ডাবল কোটে পরিবর্তন করুন
    va':s/\%V'\%V/"/g
    • va' - উদ্ধৃত শব্দ এবং উদ্ধৃতিটি দৃশ্যত নির্বাচন করুন।
    • :s/ - একটি প্রতিস্থাপন শুরু করুন।
    • \%V'\%V - কেবলমাত্র নির্বাচিত অঞ্চলের মধ্যে থাকা একক উদ্ধৃতিগুলির সাথে মেলে।
    • /"/g - এগুলিকে ডাবল কোট দিয়ে প্রতিস্থাপন করুন।

1
এগুলি আমার পক্ষে ঠিক আছে। স্রেফ গুগল করেছিলাম যে সন্নিবেশ মোডে আটকানো Ctrl + op দিয়েও সম্ভব।
ইউজিন ইয়ারমশ

1
রেকর্ড মোড (কিউ) এর সাথে সংমিশ্রণে ব্যবহৃত, দ্রুত কাজের জন্য মনোযোগের মতো কাজ করে।
বিশপ

কেন ciwএবং শুধু না cw? আমি প্রথম বিভ্রান্তি খুঁজে পাই এবং দ্বিতীয়টি ভাল কাজ করে find
বড় ম্যাকলার্জহিউজ

17
আপনার কর্সার শব্দটিতে যেখানেই ciwথাকুক না কেন @ কোভেরাস কাজ করে। cwকেবলমাত্র যদি আপনার কার্সার শব্দের শুরুতে থাকে তবে কাজ করে। দেখুন :help iw
জামেসান

10
একটি দুর্দান্ত সামান্য কৌশল দেওয়ার জন্য শীর্ষের উত্তরটি হাইজ্যাক করা: যদি আপনার ডাবল-উদ্ধৃতিতে থাকা একক উদ্ধৃতিটি প্রতিস্থাপন করার জন্য বেশ কয়েকটি শব্দ থাকে তবে আপনি খেয়াল করতে পারেন @ জ্যামেসানের প্রথম সমাধানটি .কমান্ডটি দিয়ে কাজ করে না । এটি কাজ করতে, ব্যবহার করুন ciw' Ctrl+r Ctrl+p"। তারপরে .নিচের শব্দের জন্য আপনি যেমন চান তেমন আচরণ করবেন: নিবন্ধের বিষয়বস্তু মনে রাখার পরিবর্তে এটি মনে রাখবে যে আপনি এখনই রেজিস্টারে যা কিছু চান তা বোঝাতে (ধরণের ব্যাখ্যা করার জন্য কঠিন, তবে যদি আপনি উভয়ই চেষ্টা করেন তবে তা স্পষ্ট হয়ে উঠবে) :-))
অটরা

182

একক উদ্ধৃতি ব্যবহার করে একটি শব্দ উদ্ধৃত করুন

ciw'Ctrl+r"'

আমার পক্ষে এটি করা সহজ ছিল easier

ciw '' Esc P

8
দুর্ভাগ্যক্রমে, এটি অনুমতি দেয় বলে মনে হয় না। (পুনরাবৃত্তি)।
উইল মুর তৃতীয়

2
আমি এটি পছন্দ করি যেহেতু আমি এটি টার্মিনালগুলিতে / ভিএম মোডের সাথে রিপ্লেসে ব্যবহার করতে পারি কারণ Ctrl + r সাধারণত ইতিমধ্যে বিপরীত ইতিহাস অনুসন্ধানের জন্য ব্যবহৃত হয়।
ক্রোক

3
@ উইলমুর উপরেরটিকে ম্যাক্রো হিসাবে রেকর্ড করুন, তারপরে পুনরায় খেলুন।
ক্রিস্টোফার

30

এখানে কিছু ম্যাপিং রয়েছে যা সাহায্য করতে পারে:

:nnoremap <Leader>q" ciw""<Esc>P
:nnoremap <Leader>q' ciw''<Esc>P
:nnoremap <Leader>qd daW"=substitute(@@,"'\\\|\"","","g")<CR>P

আপনি mapleader পরিবর্তনশীল পরিবর্তিত হয়নি, তাহলে এর সাথে ম্যাপিং সক্রিয় \q" \q'বা \qd। তারা কার্সারের নীচে শব্দের চারপাশে ডাবল উদ্ধৃতি যুক্ত করে, কার্সারের নীচে শব্দের চারপাশে একক উদ্ধৃতি যুক্ত করে যথাক্রমে কার্সারের নীচে শব্দের চারপাশে যে কোনও উদ্ধৃতি মুছুন।


অসাধারণ ধারণা! বর্তমান অবস্থান থেকে লাইনের শেষে একক উদ্ধৃতি মন্তব্য সন্নিবেশ করানোর map <Leader>' gewi'<Esc>A'<Esc>জন্য আমি আমার .vimrcফাইলে যুক্ত হয়ে শেষ করেছি ; যা কিছু এমএসডিএস স্ক্রিপ্টগুলিকে ব্যাশে রূপান্তর করার সময় আমাকে সহায়তা করেছিল।
ILMostro_7

@ জিফ, এটি একক উদ্ধৃতিগুলির জন্য দুর্দান্ত কাজ করে। তবে ডাবল উক্তিগুলির জন্য এটি "" "" "` শব্দের
মুখোমুখি হয়

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

এটিকে সহজেই কোয়ালিটি সহ কোনও নির্বাচনকে ঘিরে ভিজ্যুয়াল মোডের জন্য সহজেই রূপান্তর করা যেতে পারে :vnoremap <leader>q c""<esc>P
ডোমিনিক

27

অন্যান্য কমান্ডের পাশাপাশি এটি সমস্ত শব্দ ডাবল উক্তিগুলিতে একটি লাইনে আবদ্ধ করবে (আপনার মন্তব্য অনুসারে)

:s/\(\S\+\)/"\1"/

অথবা আপনি যদি ব্যাকস্ল্যাশগুলির সংখ্যা হ্রাস করতে চান তবে আপনি \vপ্যাটার্নের শুরুতে একটি (খুব-যাদু) পরিবর্তন করতে পারেন

:s/\v(\S+)/"\1"/

আমার অনুলিপি করা :s/\v([a-Z]+)/"\1"/g
পাঠ্যেও

22

ম্যাক্রো উপায়!

  1. টিপুন qএবং qq রেজিস্ট্রারে রেকর্ডিংয়ের জন্য (আমরা "কোট" মনে রাখার জন্য শর্টকাট হিসাবে "q" ব্যবহার করি)।

  2. প্রেস shift+ + bবর্তমান শব্দ সামনে পদক্ষেপ কার্সার

  3. প্রেসের iধরণ '(একক উদ্ধৃতি)

  4. প্রেস escতারপর টিপুন eশব্দের অন্তে চলাচল

  5. প্রেস aতারপর টিপুন 'আবার কোট দিয়ে শব্দ ঘিরা।

  6. escস্বাভাবিক মোডে পেতে টিপুন ।

  7. অবশেষে qএটি qরেজিস্টার রেকর্ড করতে টিপুন ।

ব্যবহারবিধি

  1. একটি পছন্দসই শব্দে কার্সার সরান।
  2. @qউদ্ধৃতি সহ একটি শব্দ চারপাশে টিপুন ।
  3. @@আপনি যদি এটি অন্য একটি শব্দতে পুনরাবৃত্তি করতে চান তবে টিপুন ।

আপনি নিজের step 4পছন্দ মতো কোনও কিছুতে পরিবর্তন করতে পারেন line একটি লাইন, একটি শব্দ যতক্ষণ না কোনও অক্ষর ইত্যাদি পাওয়া যায় etc}

রেকর্ডকৃত ম্যাক্রো অবিচ্ছিন্ন করুন Make

  1. .vimrc খুলুন
  2. ফাইলের শেষে যান
  3. সন্নিবেশ মোডে পরিবর্তন করুন। এটি অবিরাম করতে এটি টাইপ করুন:
@ কিউ = ' ctrl+ r ctrl+ rকিউ' যাক
  1. সংরক্ষণ এবং ছেড়ে দিন

  2. আপনার ফাইলগুলি খুলুন, কিছু কথায় যান

  3. এখন চাপুন @q

আপনি যদি এটি সঠিকভাবে করেন তবে আপনার কথায় ম্যাজিক জিনিসগুলি উপস্থিত হওয়া উচিত।

আপনি পছন্দ করেছেন এমন অন্য ম্যাক্রোগুলির জন্য আপনি এই পদক্ষেপগুলি করতে পারেন।


3
আমি বলতে চাই এই সমাধানটি আমার পছন্দ হয়েছে। কোন চারপাশে। ম্যাক্রোগুলির প্রয়োজনীয় এবং সহজ প্রার্থনা এবং সৃষ্টি im আপনার যা যা প্রয়োজন, তার জন্য খুব সহজেই ব্যবহারযোগ্য (উদাহরণস্বরূপ আমার জন্য বর্তমান রেখাটি শেষের অবধি অবধি, উত্তরীয়ের জন্য উপযুক্ত)। ম্যাক্রো কর দেখানোর জন্য: "কিউপি। এটি সংরক্ষণ করতে .vimrc এ যান এবং করুন: @q = 'ম্যাক্রো বিষয়বস্তু' (কেবল সম্পূর্ণতার জন্য)
th3penguinWisperer

আমি এই অনেক পছন্দ। আপনি এই ম্যাক্রোগুলিও বাসাতে পারেন। সুতরাং আপনি রেজিস্টার জে রেকর্ড করতে পারে @q wএবং তারপরে আপনি পরবর্তী nশব্দগুলিকে সাথে ব্যবহার করে মুদ্রণ করতে পারেন n@j
লুকানো-ব্যবহারকারীর নাম

1
আমি ম্যাক্রোকে অবিরাম করার জন্য কয়েকটি পদক্ষেপ যুক্ত করেছি।
Brain90

1
পেডেন্টিক, তবে, শব্দ এবং ডাব্লুএইচআরড ভিমে আলাদা। শিফট + বি = বি, সুতরাং দ্বিতীয় পদক্ষেপটি আদর্শভাবে "... বর্তমানের WORD এর সামনের" তে পরিবর্তন করা উচিত। আপনি যদি শব্দের শুরুটি বোঝাতে চান তবে আপনার শিফটটি ব্যবহার করার দরকার নেই।
আম্বরীশ

যে পয়েন্ট জন্য ধন্যবাদ। আমি ওয়ার্ডটি মোকাবেলায় উদ্দেশ্য করে শিফট + বি ব্যবহার করি। ম্যাক্রোটি শব্দ বা WORD [0] এ চালানো উচিত। প্রকৃতপক্ষে 3 ধাপে শিফট + ই তে পরিবর্তন হওয়া উচিত। [0] stackoverflow.com/a/14390568/341959
Brain90

18

একক উদ্ধৃতিতে মোড়ানো (উদাহরণস্বরূপ) ciw'<C-r>"'<esc>কাজ করে, তবে পুনরাবৃত্তি কার্যকর হবে না। চেষ্টা করুন:

ciw'<C-r><C-o>"'<esc>

এটি "আক্ষরিক" ডিফল্ট রেজিস্ট্রারের বিষয়বস্তু রাখে। এখন আপনি .এটিকে উদ্ধৃতিতে গুটিয়ে রাখতে যে কোনও শব্দকে চাপতে পারেন । :h[elp] i_ctrl-rএখানে পাঠ্য অবজেক্ট সম্পর্কে আরও এবং আরও জানতে:h text-objects

সূত্র: http://vimcast.org/episodes/pasting-from-insert-mode/


2
দুর্দান্ত টিপ! যদি কেউ এর মধ্যে থেকে কোনও ম্যাপিং তৈরি করতে চান তবে সঠিক স্বরলিপিটি ciw'<C-R><C-O>"'<Esc>
17

<Cr> "হুবহু কী করে?
কোডক্র্যাক 14'15

@ কোডক্র্যাক এটি সিটিআরএল-আর। সিটিআরএল-আর কার্সারে নিবন্ধের সামগ্রী সন্নিবেশ করায় এবং সন্নিবেশ মোডে থাকে।
এরউইন রুইজাকার্স

আপনি উল্লিখিত হিসাবে এটি পুনরাবৃত্তিযোগ্য, তবে যখন কোনও ম্যাক্রোতে সংরক্ষণ করা হয় তখন ম্যাক্রোর সাথে পুনরাবৃত্তি করা .শেষ প্রকৃত কলটির সামগ্রীটি পুনরায় লিখবে ।
এসবিউ

7

ভিএসকোডভিমের ব্যবহারকারীদের জন্য আপনি এটি করতে পারেন

vwS"

  • আপনি "যা গুটিয়ে রাখতে চান তা দিয়ে প্রতিস্থাপন করতে পারেন।
  • আপনি wঅন্য যে কোনও নির্বাচন অপারেটরের সাথে প্রতিস্থাপন করতে পারেন

2
এটি ম্যাকভিআইএম-এ আমার পক্ষেও ভালভাবে কাজ করেছে তবে আমাকে ব্যবহার করতে হয়েছিল viwS'যা শব্দটি একক উদ্ধৃতিতে আবৃত করে । এখন পর্যন্ত সবচেয়ে সহজ।
ম্যাট গ্রানারি

আপনি কেবল শব্দের শুরুতে থাকলে এটি কাজ করে। আপনি যদি শব্দের মধ্যে যে কোনও জায়গা থেকে এটি করতে চান তবে আপনি এটি করতে পারেন:viwS"
জিওউইউজ

6

আমি এর জন্য কোনও বিল্টিন ভিম কমান্ড জানি না, তবে r"f'r"'আপনি' থেকে 'পরিবর্তিত হওয়া এবং r'f"r'"আপনি যদি প্রথমে দাঁড়িয়ে থাকেন" বা "থেকে" পরিবর্তিত হয় ব্যবহার করে। কমান্ডটি r'আপনার কার্সারের নীচে যে কোনও অক্ষরকে' এর সাথে প্রতিস্থাপন করে, এবং f"আপনাকে পরবর্তীের দিকে নিয়ে যায় "।


1
আমার কাছে সবচেয়ে স্বজ্ঞাত "ম্যানুয়াল" সমাধান। দ্বিতীয় প্রতিস্থাপন কমান্ড ( 'rএবং "r) এর পরিবর্তে , আপনি কেবল টাইপ করতে পারেন .এবং যদি আপনি আরও উদ্ধৃতি পরিবর্তন করতে চান ;এবং যথাক্রমে একই দিকে বা বিপরীত ,স্থানে শেষ f/F/t/Tঅনুসন্ধানটি পুনরাবৃত্তি করার সাথে সাথে আপনাকে পরবর্তী বা পূর্ববর্তী একটিতে নিয়ে যান ।
এন্ড্রে উভয়ই

5

উদ্ধৃতি যোগ করা হচ্ছে

আমি এই .vimrc:

vnoremap q <esc>:call QuickWrap("'")<cr>
vnoremap Q <esc>:call QuickWrap('"')<cr>

function! QuickWrap(wrapper)
  let l:w = a:wrapper
  let l:inside_or_around = (&selection == 'exclusive') ? ('i') : ('a')
  normal `>
  execute "normal " . inside_or_around . escape(w, '\')
  normal `<
  execute "normal i" . escape(w, '\')
  normal `<
endfunction

সুতরাং এখন, আমি দৃষ্টিকটুভাবে আমার যা চাই ( viwসিলেক্ট করে - সাধারণত শব্দটির অভ্যন্তরে শব্দটি নির্বাচন করি ) কোটায় নির্বাচন করি এবং Qডাবল উদ্ধৃতিতে টিপুন, বা qএকক উদ্ধৃতিতে টিপুন ।

উদ্ধৃতি মুছে ফেলা হচ্ছে

vnoremap s <esc>:call StripWrap()<cr>

function! StripWrap()
  normal `>x`<x
endfunction

আমি ভিএম-টেক্সটবজ-কোটস ব্যবহার করি যাতে ভিআইএম টেক্সট অবজেক্ট হিসাবে উদ্ধৃতি হিসাবে ব্যবহার করে। এই উপায়ে আমি কি করতে পারি vaq(চাক্ষুষরূপে নির্বাচন কোট প্রায় । এই খুঁজে বের করে নিকটতম কোট এবং চাক্ষুষরূপে তাদের নির্বাচন করে। (এই ঐচ্ছিক, আপনি শুধু ভালো কিছু করতে পারেন f"vww)। তারপর আমি চাপুন sকরার স্ট্রিপ নির্বাচন থেকে উদ্ধৃতি।

উদ্ধৃতি পরিবর্তন

চুমু খেতে হবে। আমি উদ্ধৃতিগুলি মুছে ফেলি তারপর উদ্ধৃতি যুক্ত করুন । 1. অপসারণ একক উদ্ধৃতি: উদাহরণস্বরূপ, ডবল কোট সঙ্গে একক উদ্ধৃতি প্রতিস্থাপন করতে, আমি ধাপগুলি অনুসরণ হবে vaqs, 2. নতুন কোট যোগ করুন: vwQ



4

আপনি যদি ভিআইএম প্লাগইন ব্যবহার করেন তবে https://github.com/tpope/vim-surround (বা ভিএসকোড ভিম প্লাগইন ব্যবহার করুন, যা ভিম-চারপাশে প্রাক ইনস্টলড সহ আসে), এটির দৃ conv় প্রত্যয়ী!

যোগ

ysiw' // surround in word `'`

ঝরা

ds' // drop surround `'`

পরিবর্তন

cs'" // change surround from `'` to `"`

এমনকি এটি এইচটিএমএল ট্যাগগুলির জন্যও কাজ করে!

cst<em> // change surround from current tag to `<em>`

আরও ভাল উদাহরণের জন্য গিথুব এ রিডমেটি দেখুন


2

এখানে কয়েকটি সাধারণ ম্যাপিং রয়েছে যা একটি শব্দ উদ্ধৃত করতে এবং উদ্ধৃত করতে ব্যবহৃত হতে পারে:

" 'quote' a word
nnoremap qw :silent! normal mpea'<Esc>bi'<Esc>`pl
" double "quote" a word
nnoremap qd :silent! normal mpea"<Esc>bi"<Esc>`pl
" remove quotes from a word
nnoremap wq :silent! normal mpeld bhd `ph<CR>

1
আপনার উত্তরটি বিস্তারিতভাবে জানাতে পারলে সবার জন্য দুর্দান্ত হবে: ম্যাপিংগুলি কীভাবে যুক্ত করা যায়, কীভাবে তাদের কল করা যায় ইত্যাদি ধন্যবাদ Thanks
কার্লস আলকোলেয়া

1
আমি বলব যে উদ্ধৃতি, ডাবল উক্তি এবং উদ্ধৃতি আপনার করা উচিতqw qd wq
নিলন

কোনও কারণে ডাবল উক্তিটি "শব্দ" "এর মতো শেষে অতিরিক্ত উদ্ধৃতি ফিরে আসে
জ্যানিসবারতিওন

@ শুইওয়্যাং সম্ভবত আপনি স্বয়ংচালিত বা কিছু অনুরূপ এক্সটেনশন ইনস্টল করেছেন? আমার জন্য সেই বাগটি সরিয়ে ফেলা হচ্ছে।
নেফিলিম

2

ভিএসকোডের জন্য ভিআইএম এটি দুর্দান্তভাবে করে। এটা এক ভিত্তি করে এর তেজ-পারিপার্শ্বিক আপনি vscode ব্যবহার করবেন না।

কিছু উদাহরণ:

"টেস্ট" দিয়ে কোর্সের ভিতরে কার্সার দিয়ে সিএস টাইপ করুন '' পরীক্ষা 'দিয়ে শেষ করতে

পরীক্ষার সমাপ্তির জন্য "টেস্ট" কোটারের ভিতরে কার্সার সহ ds টাইপ করুন

কোটারের ভিতরে কার্সার সহ "পরীক্ষা" লিখুন সিএস "টি এবং <123> পরীক্ষা শেষ করতে 123> লিখুন enter

ওয়ার্ড টেস্ট টাইপ ysaw এ কার্সার দিয়ে পরীক্ষা করুন (পরীক্ষা) দিয়ে শেষ হবে


1

আমি আমার .vimrc এ nnoremap ব্যবহার করছি

একটি শব্দ উদ্ধৃত করতে:

nnoremap sq :silent! normal mpea'<Esc>bi'<Esc>`pl

উদ্ধৃতি অপসারণ করতে (পাশাপাশি ডাবল উদ্ধৃতিতেও কাজ করে):

nnoremap qs :silent! normal mpeld bhd `ph<CR>

মনে রাখার নিয়ম: 'বর্গ' = একক উদ্ধৃতি।


0

এ কেমন?

 :%s/\'/"/g

2
এই কমান্ডটি পুরো ফাইলটিতে কাজ করে। আমার শুধু একক শব্দ বদলাতে হবে।
ইউজিন ইয়ারমশ

4
এটি ছাড়া %, এটি কেবলমাত্র বর্তমান লাইনে কাজ করবে যদি না আপনি পুরো ফাইলটি নির্বাচন করেন
এমিলি

0

আমি একটি স্ক্রিপ্ট লিখেছিলাম যা এটি করে:

function! WrapSelect (front)
    "puts characters around the selected text.
    let l:front = a:front
    if (a:front == '[')
        let l:back = ']'
    elseif (a:front == '(')
        let l:back = ')'
    elseif (a:front == '{')
        let l:back = '}'
    elseif (a:front == '<')
        let l:back = '>'
    elseif (a:front =~ " ")
        let l:split = split(a:front)
        let l:back = l:split[1]
        let l:front = l:split[0]
    else
        let l:back = a:front
    endif
    "execute: concat all these strings. '.' means "concat without spaces"
    "norm means "run in normal mode and also be able to use \<C-x> characters"
    "gv means "get the previous visual selection back up"
    "c means "cut visual selection and go to insert mode"
    "\<C-R> means "insert the contents of a register. in this case, the
    "default register"
    execute 'norm! gvc' . l:front. "\<C-R>\""  . l:back
endfunction
vnoremap <C-l> :<C-u>call WrapSelect(input('Wrapping? Give both (space separated) or just the first one: '))<cr>

ব্যবহার করতে, কিছু হাইলাইট করুন, নিয়ন্ত্রণ টিপুন এবং তারপরে একটি অক্ষর টাইপ করুন। ফাংশনটি যদি এটির একটি চরিত্র সম্পর্কে জানে তবে এটি সঠিক সমাপ্তি চরিত্রটি সরবরাহ করবে। যদি এটি না হয় তবে এটি উভয় পক্ষের sertোকাতে একই অক্ষর ব্যবহার করবে use

আশেপাশের.ভিম কেবল এটির চেয়ে বেশি কিছু করতে পারে তবে এটি আমার প্রয়োজনের জন্য যথেষ্ট ছিল।


-1

পাঠ্যের একটি নির্বাচিত ব্লকের চারপাশে একক উদ্ধৃতি যুক্ত করার জন্য ভিজ্যুয়াল মোড মানচিত্রের উদাহরণ:

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