কমান্ড লাইন থেকে বিদ্যমান ইমাস প্রসেসে একটি ফাইল কীভাবে খুলবেন?


14

আমার বেশ কয়েকটি স্ক্রিপ্ট রয়েছে যা একটি নির্দিষ্ট প্রকল্পের সাথে সম্পর্কিত সমস্ত অ্যাপ্লিকেশন এবং ফাইলগুলি চালু করবে। তবে, এটি কেবলমাত্র বর্তমান ইমাসকে অনুরোধ করা ফাইলগুলি খোলার কারণ না করে একাধিক ইম্যাক ইনস্ট্যান্স চালু করবে। আমি বরং বর্তমান ইমাসকে প্রজেক্টের পাঠ্য ফাইলগুলি একটি নতুন বাফারে খালি খুলতে চাই।

কোন ধারণা আমি কীভাবে এটি করতে পারি?


আমার উত্তর কটাক্ষপাত stackoverflow.com/a/38655619/2450748 যদিও 5 বছর পরে :)
nexayq

উত্তর:


21

M-x server-startইমাসস সেশনের অভ্যন্তরে, তারপরে emacsclient -n file1 file2 ...বিদ্যমান ইম্যাকগুলিতে ফাইল যুক্ত করতে ব্যবহার করুন। আপনি ব্যবহার করতে পারেন এমন অতিরিক্ত বিকল্প রয়েছে যেমন, -cএকটি নতুন উইন্ডোতে (ফ্রেম) ফাইলগুলি খুলতে।


ধন্যবাদ ডুড এটাই আমার জানা দরকার। আমি এখনও 'সঠিক উত্তর' যাচাই করছি না, কারণ আমি শুনেছি যে অন্যকে অবদান রাখার সুযোগ দেওয়ার জন্য আপনার সর্বদা এটি কিছুটা খোলা রাখা উচিত। তবে ইতিমধ্যে আমি আপনার উত্তরটি কিছু স্ক্রিপ্টে রেখেছি।
bev

সাধারণত, আপনি (server-start)নিজে। সার্ভার ম্যানুয়ালি শুরু করার পরিবর্তে আপনার .emacs ফাইলটিতে রাখতে চান । আমি (and window-system (server-start))যদি টার্মিনালে ইম্যাক চালাচ্ছি তবে সার্ভারটি শুরু করা এড়াতে ব্যবহার করি।
সিজেএম

আধুনিক ইম্যাকসে এটি টার্মিনালে ঠিক ততটাই কার্যকর; দেখতে -tবিকল্প।
গীকোসৌর

@ সিজেএম - আসলে আমি আমার .emacs ফাইলটিতে সার্ভারটি শুরু করি। আমি কেবল এটি ব্যবহার করি নি :-)
bev

5

(server-start)আপনার .emacsফাইল রাখুন ।

এটিতে যুক্ত করুন ~/.bashrc

alias myedit='emacsclient --alternate-editor="" --no-wait $*' #quotes intentionaly left blank

তারপরে myeditআপনার সম্পাদক হিসাবে ব্যবহার করুন। -cউইন্ডোটি আনতে আপনাকে বিকল্পটি ব্যবহার করতে হবে ।

সুতরাং আপনি এটি করতে পারেন:

myedit -c a-file
run-script #that uses myedit

অথবা

run-script #that uses myedit
myedit -c

রিচার্ড, ইনপুট জন্য ধন্যবাদ। আমি এখনও আপনার স্ক্রিপ্টের সাথে কয়েকটি জিনিস বিস্মিত করছি। প্রথমত, যেহেতু ইমালস্ক্লিয়েন্টের একটি -c বিকল্প নেই, তাই আমি ধরে নিচ্ছি যে এটি কোনও বাশ জিনিস, তবে জানেন না। দ্বিতীয়ত, বিকল্প সম্পাদক হিসাবে ইম্যাকস রাখেন না কেন? ধন্যবাদ
bev

# $ emacsclient --help .... নিম্নলিখিত বিকল্পগুলি গ্রহণ করা হয়েছে: ... -c, --create-ফ্রেম বর্তমান Emacs ফ্রেম ব্যবহার করার চেষ্টা করার পরিবর্তে একটি নতুন ফ্রেম তৈরি করুন ... -এডিটর, - বিকল্প -এডিটর = এডিটোর সম্পাদক যদি সার্ভারটি চালু না থাকে তবে ফ্যালব্যাকের জন্য যদি EDITOR খালি স্ট্রিং থাকে তবে ডেমন মোডে
ইমাস

আপনার কোনও প্রয়োজন নেই এবং (সম্ভবত, সম্ভবত আপনি চান না) কোনও উপাধির সংজ্ঞাতে অবস্থানগত পরামিতি ব্যবহার করার প্রয়োজন। কীভাবে alias foo='echo bar $*'প্রসারিত হয় তা বিবেচনা করুন set quux; foo baz। আপনি যদি পজিশনাল প্যারামিটারগুলি ব্যবহার করতে চান তবে এটি শেল ফাংশন হিসাবে চেষ্টা করুন:myedit() { emacsclient … "$@"; }
ক্রিস জনসেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.