ভিম - কমেন্টের চরিত্রের সাথে মন্তব্য লাইনকে ঘিরে


27

আজ আমি বুঝতে পেরেছি যে আমি প্রায়শই আমার কোডে বিভাগগুলি এর মতো সংজ্ঞায়িত করতে পছন্দ করি:

####################
# Helper Functions #
####################

তবে এটি করা ক্লান্তিকর। ধরে নিচ্ছি আমার কাছে এর মতো একটি লাইন রয়েছে:

# Helper Functions #

vimএটিকে মোড়ানোর জন্য কীস্ট্রোকের সংক্ষিপ্ততম সেটটি কী #? শিফট এই চ্যালেঞ্জের কী-স্ট্রোক হিসাবে গণনা করে না

পরীক্ষার কেস:

Input: "#test test test#"
Output:
################
#test test test#
################

Input: "#this is a nice block comment#"
Output:
##############################
#this is a nice block comment#
##############################

Input: "# s p a c e s must be supported a l s o#"
Output:
########################################
# s p a c e s must be supported a l s o#
########################################

3
আমি এই প্রশ্নটিকে অফ-টপিক হিসাবে বন্ধ করার পক্ষে ভোট দিচ্ছি কারণ "ভিআইএম কীস্ট্রোক" মূলত একটি আইডিইর কমান্ড চলমান, যেমন সিটিটিএল - সি, বা এসটি 2-তে সিটিআরএল - আর। এটি কোনও আকারে কোডিং নয়।
অপ্টিমাইজার

3
@ অপ্টিমাইজার ভিম একটি টিউরিং সম্পূর্ণ ভাষা (যেমন ম্যাক্রো ব্যবহার করে) বিভিন্ন আলাদা কনস্ট্রাক্টস কোডিং সহ এবং সম্পাদনার প্রাথমিক পদ্ধতি ক্রিয়া (ক্রিয়া) কোনও অবজেক্ট (গতিবিধি) এর উপর ভিত্তি করে। ভিম গল্ফিংয়ের জন্য ইতিমধ্যে একটি জনপ্রিয় ওয়েব পৃষ্ঠা রয়েছে: www.vimgolf.com। (তবে আমি সম্মত হই যে এই বিশেষ প্রশ্নটি বেশ বিরক্তিকর)
হিজুল

1
@ অপ্টিমাইজার: প্রশ্নটি স্থানান্তরিত হতে পারে এমন আরও কোনও উপযুক্ত এসই সাইট রয়েছে? ভিমের বিস্তৃত স্ক্রিপ্টিং / ম্যাক্রো ভাষা দেওয়া, কিছু লোক এটি নিজের মধ্যে একটি ভাষা হিসাবে বিবেচনা করতে পারে।
shearn89

1
@ shearn89 বৈরী? আপনি কি বিষয়ে কথা হয় ? পিপিসিজি এই সাইটটি।
অপ্টিমাইজার

2
আপনি যদি তাদের ম্যাক্রো সিস্টেমে প্রোগ্রাম লিখতে পারেন তবে কেন অন্য আইডিইর অনুমতি দেওয়া হবে না? এটি কি "প্রোগ্রামিং নয়" করে তোলে?
Hjulle

উত্তর:


40

11 8 7 কীস্ট্রোক kes

YpVkr#p

Yp - duplicate current line, leaving the cursor at the lower of the two
V - enter visual line mode
k - go up and select both lines
r# - replace every selected character with #. Leaves visual mode and leaves cursor at the upper line.
p - put the yanked line (the original) on the next line.

(Y = yy মনে করিয়ে দেওয়ার জন্য ডোরকনবকে ধন্যবাদ)


3
একটি অক্ষর সংরক্ষণ করতে এর yyসাথে প্রতিস্থাপন করুন Y
ডুরকনব

2
বাহ, সেই rআদেশটি শক্তিশালী
জাস্টহাল্ফ

10

16 15 14 কীস্ট্রোক

Yp
:s/./#/g
<cr>
YkP

সোজা-সামনের পদ্ধতির: লাইনটি সদৃশ করুন, এর সাথে সমস্ত অক্ষর প্রতিস্থাপন #করুন, ফলাফলটি অনুলিপি করুন এবং এটি উপরে আটকান।

আমি গণনা করছি Pএবং :প্রতিটি হিসাবে একটি (কী Shift+ pবা Shift+ এর পরিবর্তে দুটি ;) এর কীস্ট্রোক key বলা হচ্ছে, প্রশ্নটি "কমান্ডগুলি" গণনা করার জন্য নির্দিষ্ট করে, যেখানে আমি কীভাবে প্রতিস্থাপন গণনা করব তা নিশ্চিত নই।


প্রতিস্থাপন করুন: @ rcrmn এর উত্তরে হিসাবে একই মন্তব্য yyসঙ্গে Yএকটি অক্ষর সংরক্ষণ করুন।
ডুরকনব

আমি বিশ্বাস করি এটি আসলে 14 টি কীস্ট্রোক, কারণ প্রতিস্থাপন কমান্ডটি কার্যকর করতে আপনাকে
ইন্ট্রোতে

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