ইমাসস: 4 স্পেস দ্বারা পাইথন কোডের ইন্ডেন্ট / আনইন্ডেন্ট অঞ্চল কীভাবে?


60

আমার কাছে ইম্যাক্সে পাইথন কোডের অঞ্চল নির্বাচন করা আছে। 4 স্পেস দ্বারা প্রতিটি লাইনে ইন্ডেন্ট এবং আনইন্ডেন্ট করার সর্বাধিক দক্ষ উপায়গুলি কী কী?

আদর্শভাবে আমি এমন কিছু চাই যা প্রসঙ্গে সংবেদনশীল নয় (যেমন, এটি আমাকে ডকাস্ট্রিংগুলিতে ইন্ডেন্টেশন পাইথন সিনট্যাক্সের সাথে সম্পর্কিত না করে যেখানে অন্তর্ভুক্ত করতে সক্ষম করবে)।

আমার মোড লাইন শো (Python)। ওয়েবে অনুসন্ধান করে আমি এর python-modeপরিবর্তে ব্যবহার করার বিষয়ে প্রচুর আলোচনা পেয়েছি python, তবে আমি কিছুদিন আগে কেবল ইম্যাকগুলি ব্যবহার শুরু করেছি যাতে আমি বুঝতে ও তার সুযোগ পাওয়ার আগেই আমি খেলাপিগুলি পরিবর্তন করা সম্পর্কে সতর্ক থাকি। যদি python-modeসেরা বিকল্প হয় তবে আমি এটি উত্তর হিসাবে গ্রহণ করে খুশি।

আমি যা চেষ্টা করেছি (ম্যানুয়াল থেকে):

  • <TAB> কোন প্রভাব নেই
  • C-M-\ কোন প্রভাব নেই
  • C-x <TAB> (ইনডেন্ট-কড়াভাবে) প্রতিটি লাইনকে একটি কলাম দ্বারা ইনডেন্ট করুন (এবং অঞ্চলটি অনির্বাচিত)
  • M-i কোনও ট্যাব দ্বারা একটি প্রথম লাইন প্রবেশ করে (8 স্পেসের দৈর্ঘ্য)
  • C-M-q - "সিএমকিউ অপরিশোধিত"

আমি যে একমাত্র উপায় খুঁজে পেয়েছি তা হ'ল রিজেক্স-রিপ্লেস ব্যবহার করা, তবে এটি এত সাধারণ কাজের জন্য কী-স্ট্রোকের একটি ভয়ঙ্কর সংখ্যক।

উত্তর:


69

ভেরিয়েবল python-indent4:

M-x python-shift-right (C-c >)
M-x python-shift-left  (C-c <)

5
আমাকে করতে হয়েছিল python-indent-shift-left
nnyby

17

indent-rigidlyএকটি প্রিফিক্স আর্গুমেন্ট গ্রহণ করে যা কতটা ইনডেন্ট করতে হবে তা নির্দেশ করে, সুতরাং C-u 42 C-x TAB42 টি কলাম দ্বারা সূচকগুলি , এবং যেহেতু ডিফল্ট উপসর্গ আর্গুমেন্ট 4 হয়, C-u C-x TAB4 টি কলাম দ্বারা ইনডেন্ট থাকে।

আপনি যদি অঞ্চলটি আবার নির্বাচন করতে চান তবে C-x C-xপরে করুন।


8

সংখ্যার উপসর্গ সহ অন্বেষণ-অনমনীয় কমান্ডটি ব্যবহার করুন।

C-u 4 M-x indent-rigidlyঅঞ্চলটি চারটি স্পেসে প্রবেশ করতে, C-u -4 M-x indent-rigidlyচারটি স্থান সরিয়ে নিতে।


4

Cx Cx কোডটি চিহ্নিত করুন এবং তারপরে ট্যাব-মোডের জন্য Mx ইনডেন্ট

আপনি যদি প্রতিটি লাইনের জন্য ট্যাব টিপেন তবে এটি সেভ।


3

আপনি কলাম মোডও ব্যবহার করতে পারেন।

কলাম মোডে লাইনগুলি নির্বাচন করুন, তারপরে একবারে তাদের চারটিতে চারটি স্পেস যুক্ত করুন:

  1. আপনি যে প্রথম লাইনে ইন্ডেন্ট করতে চান তার প্রথম কলামে যান।
  2. C-<space> চিহ্ন সেট করতে
  3. শেষ পংক্তিতে বিন্দুটি সরান (এক কলামে থাকুন)
  4. C-x r tকলাম মোডে প্রবেশ করতে (বা C-<RET>যদি আপনি সিইউএ মোড পেয়ে থাকেন)
  5. <space><space><space><space><RET>

আপনি চারটি স্পেস মুছতে অনুরূপ কসরত করতে পারেন - আপনার চিহ্নিত অঞ্চলে 4 টি কলাম অন্তর্ভুক্ত করুন (2-3 ধাপ) এবং আঘাত করুন <DEL>


3

উপরে চেনের সমাধান আপডেট করা, বর্তমানে (ইমাস 24.4.1 তে পরীক্ষা করা হয়েছে) কমান্ডগুলির নাম পরিবর্তন করা হয়েছে। সুতরাং, ধরে নিই যে আপনি পরিবর্তনশীল পাইথন-ইনডেন্ট অনুসারে ইনডেন্ট করতে চান, কমান্ডগুলি পাইথন-ইনডেন্ট-শিফট-বাম এবং পাইথন-ইনডেন্ট-শিফট-ডান। আপনি পারেন:

  1. টাইপ করে তাদের ইস্যু M-x python-indent-shift-rightবাM-x python-indent-shift-left

  2. ডিফল্ট পাইথন-মোড শর্ট কাটস C-c >এবং ব্যবহার করুনC-c <

  3. এগুলি পুনরায় ফিরিয়ে দিন। উদাহরণস্বরূপ, উইন্ডোজ বোতাম সহ একটি কীবোর্ডে আমি ব্যবহার করি:

    (global-set-key (kbd "s-s") 'python-indent-shift-left) 
    (global-set-key (kbd "s-d") 'python-indent-shift-right)
    

0

কমপোসিবিলিটি ইম্যাক্স সহ কিং, কেবল https://github.com/magnars/m Multiple-cursors.el এর সাথে একত্রিত M-iহন এবং আপনার আপনার ইনডেন্ট ব্লক কমান্ড রয়েছে। আপনি কি করছেন:

  1. M-> এন বার (যেখানে এন ব্লকের লাইনের সংখ্যা)
  2. M-i

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