ইমাসগুলিতে, আমি কীভাবে প্রারম্ভিক লাইনের শুরুতে বন্ধনী বন্ধনী সারিবদ্ধ করব?


11

বহু ইমাস মোডে মাল্টি-লাইন ফাংশন কলগুলির জন্য ডিফল্ট ইনডেন্টেশন শৈলীটি হ'ল বন্ধ আবর্তন বন্ধনীটিকে অন্য আর্গুমেন্টের সাথে ফাংশনে প্রান্তিককরণ করা হয়:

function_one(
    arg1,
    arg2
    );

আমি এটি পছন্দ করবো যদি ক্লোজিং বন্ধনীটি প্রারম্ভিক বন্ধনী ধারণ করে এমন লাইনের শুরুর সাথে সারিবদ্ধ থাকে। উদাহরণ স্বরূপ:

function_one(
    function_two(
        f2_arg1,
        f2_arg2
    ),
    f1_arg2,
    f1_arg3
);

আমি এটা কিভাবে করবো?


1
আমি বছরের পর বছর ধরে একই আবেদনকে উপেক্ষা করছি ! আজ এটি ঠিক করার দিন।
অধ্যাপক ফ্যালকেন চুক্তি

উত্তর:


12
  • সিসি মোড থেকে প্রাপ্ত অনেকগুলি মোডের জন্য (উদাহরণস্বরূপ, সি-মোড, জাভা-মোড, পিএইচপি-মোড) কাস্টমাইজ করুন c-offsets-alistযাতে arglist-closeসেট করা আছে c-lineup-close-paren
  • সিপারেল-মোডের জন্য, সত্যায়িত করুন cperl-indent-parens-as-blocktrue
  • সিপারেল-মোডের জন্য, জিএনইউ ইম্যাক্স 24.3+ cperl-close-paren-offsetএর নেতিবাচক সেট করুনcperl-indent-level
  • জিএনইউ ইমেলস 24.3 এবং এর চেয়ে বেশি পার্ল-মোডের জন্য, সত্যায়িত করুন perl-indent-parens-as-blocktrue
  • পাইথন-মোডের জন্য, এই আচরণটি GNU ইম্যাক্স 24.3 এবং আরও বেশি পাওয়া যায়।

আপনি টাইপ করে একটি পরিবর্তনশীল কাস্টমাইজ করতে পারেন M-x customize-variable। বিকল্পভাবে, আপনার নিচের লাইনগুলি যুক্ত করুন ~/.emacs:

(add-to-list 'c-offsets-alist '(arglist-close . c-lineup-close-paren))
(setq cperl-indent-parens-as-block t)
(setq perl-indent-parens-as-block t)

ইমাক্স 23.1.1 এর সাথে পাইথন-মোডে কাজ করার কোনও উপায় আছে কি?
ইসমাইল

Emacs 23.1.1 এর সমাধানটি এখানে সর্বশেষতম পাইথন-মোড.এলকে পাওয়া সহজ । এটি আপনার ~ / .emacs.d ডিরেক্টরিতে আনটার করুন, তারপরে আপনার .emacs ফাইলে এটি যুক্ত করুন:(add-to-list 'load-path (expand-file-name "~/.emacs.d/python-mode.el-6.1.3")) (require 'python-mode)
ishmael

এবং আমি কীভাবে সি বা সি ++ এ এই কাজটি করব ?
অধ্যাপক ফ্যালকেন চুক্তি

Emacs> = 24.3 এ অন্য স্টাইলটি পাওয়ার কী কোনও উপায় আছে python-mode?
mgalgs
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.