ইমাসে আন্ডারস্কোর ব্যবহারের জন্য কী উট-কেসড নাম রূপান্তর করার কোনও উপায় আছে?


8

উদাহরণস্বরূপ, আমি "ক্যামেলকেসডনেম" কে "উট_ক্ষেত্র_নাম" রূপান্তর করতে চাই। ইমাসে এটি করার কোনও উপায় আছে কি?


4
ফর্মটির যে কোনও প্রশ্নের সংক্ষিপ্ত উত্তর "ইমাসে _____ এর কোনও উপায় আছে কি?" সর্বদা "হ্যাঁ"
ব্রায়ান পোস্টো

উত্তর:


4

এই পৃষ্ঠা থেকে এই ছোট্ট কোডটি , একটি মোড়ক ফাংশন এবং একটি আন্ডারস্কোর দ্বারা একটি হাইফেনকে একটি আন্ডারস্কোর দ্বারা প্রতিস্থাপিত করে, সহজেই এটি করার জন্য একটি আদেশে রূপান্তরিত হতে পারে। (পরীক্ষা করুন এটি আপনার উপযুক্ত অনুসারে নেতৃস্থানীয় ক্যাপগুলি ব্যবহার করে):

একটি স্ট্রিং আন-ক্যামেলকেসে নমুনা ইম্যাক্সলিস্প কোড ( http://www.friendsnippets.com/snippet/101/ থেকে ):

(defun un-camelcase-string (s &optional sep start)
  "Convert CamelCase string S to lower case with word separator SEP.
Default for SEP is a hyphen \"-\".

If third argument START is non-nil, convert words after that
index in STRING."
  (let ((case-fold-search nil))
    (while (string-match "[A-Z]" s (or start 1))
      (setq s (replace-match (concat (or sep "-") 
                                             (downcase (match-string 0 s))) 
                                     t nil s)))
    (downcase s)))

4

এ গিয়ে Emacs হয়েছে চশমা-মোড যা প্রদর্শন ক্যামেলকেস মধ্যে আন্ডারস্কোর সঙ্গে নাম থাকবে না। ( Http://www.emacswiki.org/emacs/ চশমা মডেলটিও দেখুন )।

আপনি যদি আসলে ফাইলটির পাঠ্য পরিবর্তন করতে চান M-x query-replace-regexpতবে সম্ভবত এটি উপযুক্ত।


3

মরিৎজ বুনকাস ক্যামেলকেস এবং সি_স্টাইলের মধ্যে টগল করার জন্য একটি এলিজপ ফাংশন লিখেছিলেন


প্যাকেজ string-inflectionএখন আরো সম্পূর্ণ হল: github.com/akicho8/string-inflection (এছাড়াও আছে দয়া করে মনে রাখবেন string-inflection-camelize-lowerপরিবর্তনের hello_worldজন্য helloWorld)।
এহভিন্স

2

শুধুমাত্র প্রদর্শনের উদ্দেশ্যে, আপনি এটি ব্যবহার করতে পারেন:

M-x glasses-mode

আপনি যদি এমন কোনও স্ক্রিপ্ট চান যা প্রকৃতপক্ষে পাঠ্যকে রূপান্তরিত করে, আমি ধারণা করি আপনাকে কিছু এলিজপ লিখতে হবে। স্ট্যাক ওভারফ্লোতে এই প্রশ্নটি আরও ভালভাবে জিজ্ঞাসা করা হয়েছে।


2

আমি কেবল একটি কোয়েরি রিজেক্সেপ রিপ্লেজ করে খুব দ্রুত একটি পুরো ফাইল জুড়ে এটি করতে সক্ষম হয়েছি ।

অনুসন্ধানের প্যাটার্নটি হ'ল \([a-z]+\)\([A-Z]\)\([a-z]+\)এবং প্রতিস্থাপনটি \1_\,(downcase \2)\3

প্রতিস্থাপন প্যাটার্নটি ঠিক প্যাটার্নে এলিজপ ব্যবহার করে। এর জন্য 22 বা তার পরে ইমাস প্রয়োজন।

ইমাস ডকুমেন্টেশন স্টাইলে:

M-C-% \([a-z]+\)\([A-Z]\)\([a-z]+\) RET \1_\,(downcase \2)\3
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.