এই পোস্টটি সাথিয়ামূর্তি লিখেছেন৷
এই নিবন্ধটি চলমান Vi / Vim টিপস এবং ট্রিক্স সিরিজের অংশ। লিনাক্স সিসাডমিন বা প্রোগ্রামার হিসাবে, ব্যাশ শেল স্ক্রিপ্ট কোড করার সময় আপনি নিম্নলিখিত পুনরাবৃত্তিমূলক কাজগুলি করতে পারেন:
- ফাইল হেডার যোগ করা হচ্ছে
- ফাংশন/ফ্রেম মন্তব্য যোগ করা হচ্ছে
- ডিফল্ট কোড স্নিপেট সহ
- সিনট্যাক্স পরীক্ষা করা হচ্ছে
- একটি ফাংশন সম্পর্কে ডকুমেন্টেশন পড়া
- একটি কোড ব্লককে মন্তব্যে রূপান্তর করা, এবং এর বিপরীতে
ব্যাশ-সাপোর্ট ভিম প্লাগইন উপরের সবগুলি করার সবচেয়ে সহজ উপায় অফার করে, প্রচুর সময় এবং কীস্ট্রোক সাশ্রয় করে৷
প্লাগইনটি লিখেছেন ফ্রিটজ মেহনার, যিনি প্লাগইনের উদ্দেশ্য ব্যাখ্যা করেছেন যেমন:"মেনু এবং হটকি ব্যবহার করে BASH-স্ক্রিপ্ট লিখুন এবং চালান।"
এই নিবন্ধটি ব্যাখ্যা করে কিভাবে প্লাগইনটি ৩টি সহজ ধাপে ইনস্টল করতে হয় এবং প্লাগইনটির ৮টি শক্তিশালী বৈশিষ্ট্য।
ব্যাশ-সমর্থন প্লাগইন ইনস্টল করার 3 ধাপ
ধাপ 1:ব্যাশ-সমর্থন প্লাগইন ডাউনলোড করুন
vim.org ওয়েবসাইট থেকে প্লাগইন ডাউনলোড করুন।
$ cd /usr/src $ wget -O bash-support.zip https://www.vim.org/scripts/download_script.php?src_id=9890
ধাপ 2:ব্যাশ-সমর্থন Vim প্লাগইন ইনস্টল করুন
$ mkdir ~/.vim # if the directory does not exist already $ cd ~/.vim $ unzip /usr/src/bash-support.zip
ধাপ 3:~/.vimrc
-এ প্লাগইন সক্রিয় করুনVim সম্পাদকের জন্য প্লাগইন সক্রিয় করতে ~/.vimrc-এ নিম্নলিখিত লাইন যোগ করুন।
$ vim ~/.vimrc filetype plugin on
ব্যাশ ভিম প্লাগইনের 8 শক্তিশালী বৈশিষ্ট্যগুলি
ফিচার 1:*.sh ফাইলে স্বয়ংক্রিয় শিরোনাম যোগ করুন
আপনি যখন এক্সটেনশন .sh দিয়ে একটি ফাইল খুলবেন তখন নিচের মত হেডার সহ ফাইলটি খোলে। এটি ইনসার্ট মোডে বর্ণনা ক্ষেত্রে কার্সারকেও রাখবে।
#!/bin/bash #============================================================ # # FILE: myscript.sh # # USAGE: ./myscript.sh # # DESCRIPTION: # # OPTIONS: --- # REQUIREMENTS: --- # BUGS: --- # NOTES: --- # AUTHOR: (), # COMPANY: # VERSION: 1.0 # CREATED: 02/14/09 15:42:08 IST # REVISION: --- #============================================================
লেখক এবং কোম্পানির ডিফল্ট মান পরিবর্তন করতে, ~/.vimrc এ নিম্নলিখিত লাইনগুলি যোগ করুন
let g:BASH_AuthorName = 'SathiyaMoorthy' let g:BASH_Email = '[email protected]' let g:BASH_Company = 'Open Source Corporation'
এখন, যখন আপনি একটি নতুন ব্যাশ স্ক্রিপ্ট ফাইল তৈরি করবেন, এটি নীচে দেখানো হিসাবে AUTHOR এবং কোম্পানির জন্য পরিবর্তিত মানগুলি দেখাবে৷
#!/bin/bash #============================================================ # # FILE: myscript.sh # # USAGE: ./myscript.sh # # DESCRIPTION: # # OPTIONS: --- # REQUIREMENTS: --- # BUGS: --- # NOTES: --- # AUTHOR: SathiyaMoorthy (), [email protected] # COMPANY: Open Source Corporation # VERSION: 1.0 # CREATED: 02/14/09 15:39:58 IST # REVISION: --- #============================================================
দ্রষ্টব্য: হেডারে কাস্টম ক্ষেত্র যোগ করতে, ~/.vim/perl-support/templates/bash-file-header ফাইলটি পরিবর্তন করুন এবং আপনার নিজস্ব কাস্টম ক্ষেত্র যোগ করুন।
বৈশিষ্ট্য 2:\sfu
ব্যবহার করে ব্যাশ ফাংশন যোগ করা
একটি সাবরুটিন লেখার জন্য, সাধারণ মোডে \sfu টাইপ করুন, যা ফাংশনের নামের জন্য প্রম্পট করবে (নিচে চিত্র 1 এ দেখানো হয়েছে) এবং ডিফল্ট ফাংশন সামগ্রী সহ সাবরুটিন সন্নিবেশ করাবে (নিচে চিত্র 2 এ দেখানো হয়েছে)।
৷
চিত্র 1: শেল স্ক্রিপ্টের ভিতরে একটি ব্যাশ ফাংশন যোগ করতে \sfu টাইপ করুন
৷
চিত্র 2: ব্যাশ ফাংশন শেল স্ক্রিপ্টের ভিতরে স্বয়ংক্রিয়ভাবে যোগ করা হয়েছে
বৈশিষ্ট্য 3:\cfu
ব্যবহার করে একটি ফাংশন হেডার সন্নিবেশ করানএকটি ফাংশন শিরোনাম সন্নিবেশ করার জন্য, সাধারণ মোডে \cfu টাইপ করুন, যা চিত্র 3-এ দেখানো মন্তব্যগুলি দেখায়৷
৷
চিত্র 3: একটি শেল স্ক্রিপ্টের ভিতরে একটি ফাংশন হেডার সন্নিবেশ করতে \cfu টাইপ করুন
বৈশিষ্ট্য 4:\cfr
ব্যবহার করে একটি ফ্রেম মন্তব্য যোগ করুনএকটি ফ্রেম মন্তব্য যোগ করতে, সাধারণ মোডে \cfr টাইপ করুন, যা চিত্র 4-এ দেখানো নিম্নলিখিত বিন্যাসিত মন্তব্য দেবে।
৷
চিত্র 4: একটি শেল স্ক্রিপ্টের ভিতরে একটি ফ্রেম মন্তব্য সন্নিবেশ করতে \cfr টাইপ করুন
ফিচার 5:শেল স্ক্রিপ্টের ভিতরে ব্যাশ স্টেটমেন্ট সন্নিবেশ করান
বিবৃতি সন্নিবেশ করার জন্য শর্ট কাট কীগুলি হল:
- \sc ক্ষেত্রে … esac
- \sl elif তারপর
- \sf কাজ করার জন্য
- \sfo (...)) করার জন্য
- \si যদি তারপর fi
- \sie তাহলে অন্যথায়
- \ss সম্পন্ন করা নির্বাচন করুন
- \st না করা পর্যন্ত
- \sw যখন করা হয়
- \sfu ফাংশন
- \se echo e “\n”
- \sp printf “\n”
উদাহরণ:একটি শেল স্ক্রিপ্টের মধ্যে স্বয়ংক্রিয়ভাবে কেস স্টেটমেন্ট প্রবেশ করান
\sc কেস স্টেটমেন্ট ঢোকাবে এবং INSERT মোডে কেস স্টেটমেন্টের পাশে কার্সার রাখবে যেমন চিত্র 5 এ দেখানো হয়েছে। এভাবে আপনি টেবিল 1 এ উপযুক্ত বিবৃতি পেতে উল্লিখিত সমস্ত শর্ট কাট কীস্ট্রোক ব্যবহার করতে পারেন।
৷
চিত্র 5: ব্যাশ শেল স্ক্রিপ্টের মধ্যে কেস স্টেটমেন্ট সন্নিবেশ করতে \sc টাইপ করুন
বৈশিষ্ট্য 6:ব্যাশ স্ক্রিপ্টে পূর্বনির্ধারিত কোড-স্নিপেট ঢোকান \nr ব্যবহার করে
কোড স্নিপেটগুলি যথাক্রমে \nr এবং \nw ব্যবহার করে পড়া/লেখা যায়। প্লাগইনটি কয়েকটি পূর্ব-সংজ্ঞায়িত কোড স্নিপেট সহ আসে যা আপনি আপনার কোডে সন্নিবেশ করতে পারেন। প্লাগইনের সাথে আসা ডিফল্ট কোড স্নিপেটগুলি নীচে দেওয়া হল৷
৷$ ls -1 ~/.vim/bash-support/codesnippets/ assert basename+pathname basename-function check-number-of-command-line-arguments create-tempfile create-tempfile-with-trap free-software-comment read-and-split-into-array timestamp usage-and-command-line-arguments.noindent use-file-descriptor-read use-file-descriptor-write well-behaved-script
চেক-নম্বর-অফ-কমান্ড-লাইন-আর্গুমেন্ট কোড স্নিপেট অন্তর্ভুক্ত করতে, \nr টিপুন এবং আপনাকে একটি ফাইলের নামের জন্য অনুরোধ করা হবে। ফাইলের নামটি চেক-নম্বর-অফ-কমান্ড-লাইন-আর্গুমেন্ট হিসাবে দিন এবং নিম্নলিখিত কোডটি স্বয়ংক্রিয়ভাবে শেল-স্ক্রিপ্টে ঢোকানো হবে।
#----------------------------------------------------------------------- # Check number of command line arguments #----------------------------------------------------------------------- if [ $# -lt 1 ] then echo -e "\n\tUsage: ${0##/*/} File\n" exit 1 fi
দ্রষ্টব্য: আপনি আপনার নিজের কোড স্নিপেটগুলি সংজ্ঞায়িত করতে পারেন এবং এটিকে ~/.vim/bash-support/codesnippets/ এর অধীনে রাখতে পারেন। আপনি বিদ্যমান কোড থেকে আপনার নিজের কোড স্নিপেটগুলিও তৈরি করতে পারেন - কোডের যে অংশটি কোড স্নিপেট হিসাবে তৈরি করতে হবে তা নির্বাচন করুন, \nw টিপুন এবং এটিতে একটি ফাইল-নাম দিন। পরের বার থেকে, আপনার কাস্টম কোড স্নিপেট পেতে \nr এবং ফাইল-নাম টাইপ করুন।
বৈশিষ্ট্য 7:ব্যাশ বিল্টিন কমান্ডগুলিতে দ্রুত সহায়তা পান
যখন আপনাকে ব্যাশ বিল্টইনগুলির জন্য সহায়তা পৃষ্ঠা পড়তে হবে তখন কার্সার শব্দে থাকলে \hh ব্যবহার করে।
নিম্নলিখিত উদাহরণে (চিত্র 6), read bash বিল্টইন কমান্ডটি নির্বাচন করা হয়েছে এবং \hh টাইপ করা হয়েছে, যা read কমান্ডে দ্রুত-সহায়তা প্রদর্শন করে। সমস্ত ব্যাশ বিল্টইন কমান্ডে দ্রুত সাহায্য পেতে একই পদ্ধতি ব্যবহার করুন।
৷
চিত্র 6: নির্বাচিত ব্যাশ বিল্টইন কমান্ড সম্পর্কে সহায়তা পেতে \hh টাইপ করুন
বৈশিষ্ট্য 8:বৈশিষ্ট্যযুক্ত মন্তব্য
নিম্নলিখিত কমান্ডগুলি সংশ্লিষ্ট কীওয়ার্ড মন্তব্য যোগ করবে। উদাহরণস্বরূপ, শেল-স্ক্রিপ্টের ভিতরে BUG মন্তব্য লাইন যোগ করতে \ckb টাইপ করুন।
- \ckb কীওয়ার্ড BUG
- \ckt কীওয়ার্ড TODO
- \ckr কীওয়ার্ড ট্রিকি
- \ckw কীওয়ার্ড সতর্কতা
"# :TODO:mm/dd/yy::" কীওয়ার্ডের সাথে একটি মন্তব্য লাইন যোগ করতে \ckt টাইপ করুন। এটি মূলত একটি মন্তব্য লাইন যা একটি TODO হিসাবে কাজ করে, যেখানে আপনি যে আইটেমগুলি পরে করতে চান তা টাইপ করতে পারেন৷
৷
চিত্র 7: ব্যাশ শেল স্ক্রিপ্টের ভিতরে TODO যোগ করতে \ckt টাইপ করুন
ব্যাশ-সমর্থন প্লাগইনে অনেক শক্তিশালী বৈশিষ্ট্য রয়েছে। আরও তথ্যের জন্য ডকুমেন্টেশন পড়ুন. ডকুমেন্টেশনটি আপনার সিস্টেমে নিম্নলিখিত অবস্থানে অবস্থিত৷
- README :~/.vim/README.bashsupport
- PDF :~/.vim/bash-support/doc/bash-hot-keys.pdf
- অনলাইন ব্যাশ-সাপোর্ট ভিএম প্লাগইন ডকুমেন্টেশন
- এই প্লাগইনটি একটি হেল্প ফাইলের (bashsupport.txt) সাথে আসে যা :h bashsupport দ্বারা দেখা যায়
- [ :helptags ~/.vim/doc দ্বারা সহায়তা ট্যাগ তৈরি করুন এবং তারপরে :h bashsupport ইস্যু করুন ]
- এই প্লাগ-ইনটির অতিরিক্ত স্ক্রিনশট।
প্রস্তাবিত পড়া
ভিম 101 হ্যাকস, রমেশ নটরাজন দ্বারা . আমি একজন কমান্ড-লাইন জাঙ্কি। সুতরাং, স্বাভাবিকভাবেই আমি ভি এবং ভিম সম্পাদকদের বিশাল ভক্ত। বেশ কয়েক বছর আগে, যখন আমি লিনাক্সে প্রচুর সি কোড লিখেছিলাম, তখন আমি সমস্ত উপলব্ধ ভিম সম্পাদক টিপস এবং কৌশলগুলি পড়তাম। আমার ভিম সম্পাদকের অভিজ্ঞতার উপর ভিত্তি করে, আমি ভিম 101 হ্যাকস ইবুক লিখেছি যাতে বিভিন্ন উন্নত ভিম বৈশিষ্ট্যের 101টি ব্যবহারিক উদাহরণ রয়েছে যা আপনাকে ভিম সম্পাদকে দ্রুত এবং উত্পাদনশীল করে তুলবে। এমনকি আপনি যদি বেশ কয়েক বছর ধরে Vi এবং Vim সম্পাদক ব্যবহার করে থাকেন এবং এই বইটি না পড়ে থাকেন, অনুগ্রহ করে নিজের একটি উপকার করুন এবং এই বইটি পড়ুন। আপনি Vim সম্পাদকের ক্ষমতা দেখে বিস্মিত হবেন।