উইন্ডোজ 7 এ ডট ইম্যাক্স .emacs ফাইলের জন্য আমি কীভাবে আলাদা অবস্থান সেট করব?


16

আমি একটি উইন্ডোজ 7 কম্পিউটার ব্যবহার করছি এবং প্রশাসকের অ্যাক্সেস নেই। অতএব আমি রুট ডিরেক্টরিতে কোনও ডট ইম্যাক্স ফাইল রাখতে পারি না। ডট ইম্যাক্স ফাইলের জন্য আমার জন্য আলাদা অবস্থান নির্দিষ্ট করার কোনও উপায় আছে কি?


আপনি যদি ইমাক্স ইনস্টলেশনটির নিজস্ব অবস্থানটি নিয়ন্ত্রণ করতে পারেন (উদাঃ, যেখানে চান সেখানে এটি স্থাপন করুন বা কমপক্ষে ইনস্টলেশনটিতে লেখার অ্যাক্সেস থাকতে পারে), তবে আপনি site-start.elনিজের বোঝার মতো কিছু ব্যবহার করে সম্পূর্ণ নিয়ন্ত্রণ নিতে পারেন init.elএবং আপনার আর প্রয়োজন নেই ক .emacs। এই উদাহরণস্বরূপ, আপনাকে হোম ডিরেক্টরিতে গলগল করার দরকার নেই (যদি না কম্পিউটারে অন্য কেউ স্টাফ রাখে যা আপনার কাজগুলিকে প্রভাবিত করবে)। অন্য কথায়, এটি ফাঁকা হতে পারে এবং আপনার এটি স্পর্শ করার দরকার নেই।
আইনজীবি

উত্তর:


4

ম্যানুয়ালটিতে নথিবদ্ধ হিসাবে ইমাক্সের ডিআইডি ফাইলগুলির সন্ধানের জন্য বেশ কয়েকটি জায়গা রয়েছে । আপনি যদি ইমাসকে কাস্টমাইজ করতে চান তবে আপনাকে অবশ্যই সেই ফাইলগুলির মধ্যে একটি দিয়ে শুরু করতে হবে।

একটি সাধারণ পদ্ধতির ফাইল ব্যবহার করা init.elআপনার user-emacs-directory, এর পরিবর্তে একটি থাকার .emacsআপনার home ডিরেক্টরিতে।

user-emacs-directoryডিফল্ট ~/.emacs.d, তাই এটি এখনও আপনার হোম এতে আপেক্ষিক, কিন্তু এই পদ্ধতির সুবিধা হল আপনি একই জায়গায় আপনার এ গিয়ে Emacs কনফিগারেশন এর সাথে সম্পর্কিত সবকিছু রাখা যেতে পারে। এই ডিরেক্টরিটি সংস্করণ নিয়ন্ত্রণের অধীনে, ব্যাক আপ করা, একাধিক মেশিনে ভাগ করা ইত্যাদি হতে পারে etc. ইত্যাদি mklinkফাইলগুলি অন্য কোনও স্থানে রাখতে আপনি একটি সিমিলিংক ( উইন্ডোজে) ব্যবহার করতে পারেন ।

উদাহরণস্বরূপ, গিথুবগুলিতে লোকেরা তাদের ইমাস কনফিগারেশন বজায় রাখতে দেখা বেশ সাধারণ। আপনি init.el ফাইল সহ এলিজপ প্রকল্পগুলির জন্য গিথুব অনুসন্ধান করে এর প্রচুর উদাহরণ খুঁজে পেতে পারেন ।


আমি এই সমাধানটি পছন্দ করি এবং এটি ব্যবহার করতে চাই তবে এটি কীভাবে আমার পরিবর্তন করতে হবে তা আমাকে জানায় নাuser-emacs-directory
স্টারটেক

আমার পরামর্শটি ছিল সত্যই, সিমলিঙ্কগুলি ব্যবহার করা। অন্যান্য উত্তরের হিসাবে দেখানো হয়েছে যেহেতু আপনাকে ইমাকস যখন আরম্ভের সময় পড়বে সেই মানক অবস্থানগুলির মধ্যে একটিতে কিছু রাখতে হবে, যদিও এটি সমস্ত কিছু আপনার কনফিগারেশন অন্য কোথাও থেকে লোড করে না।
গ্লুকাস

ম্যানুয়াল লিঙ্কটি নষ্ট হয়ে গেছে।
করভাস_192

17

আমি যে উইন্ডোজ ইনস্টল করছি যার উপরে আমি ইমাস ব্যবহার করি, আমার .emacsতালিকাভুক্ত অবস্থানে একটি ফাইলে নিম্নলিখিত কোড রয়েছে :

;; Place this file in C:\Users\Username\AppData\Roaming and point to the appropriate files
(setq user-init-file "C:/path/to/.emacs")
(setq user-emacs-directory "C:/path/to/.emacs.d/")
(setq default-directory "C:/whatever/you/want/to/start/in")
(setenv "HOME" "D:/my/home/directory")
(load user-init-file)

এইভাবে আমি আমার .emacsএবং .emacs.d/যেখানেই চাই সেখানে রাখতে পারি।


আপনাকে ধন্যবাদ, আমার ঠিক যা প্রয়োজন ছিল। আমি ডিফল্ট ডিরেক্টরি এবং সেন্টেনভ হোমটি ছেড়ে দিয়েছিলাম তবে অন্যথায় এটি আমার প্রয়োজন সেটেক!
গ্রান্ট বোম্যান

আমি রায়ের উত্তরটি চেষ্টা করেছিলাম। তবে, এখন আমি অ্যাপডাটা \ রোমিং ফোল্ডারটি ইম্যাকের মধ্যে এই ফাইলটি খুলতে পারছি না। দয়া করে আমাকে ক্ষমা করুন, কারণ আমি মন্তব্য যুক্ত করতে পারি নি, কারণ আমার কাছে এখনও 50 টি পয়েন্ট নেই।
শ্রীকুমার আর

@ শ্রীকুমারআর আপনার "উত্তর" পোস্ট করার পরিবর্তে এই প্রশ্নের সাথে যুক্ত হয়ে একটি নতুন প্রশ্ন জিজ্ঞাসা করা উচিত
অ্যান্ড্রু সোয়ান

@ শ্রীকুমারআর আপনার যদি নতুন প্রশ্ন থাকে তবে প্রশ্ন জিজ্ঞাসা বোতামটি ক্লিক করে এটি জিজ্ঞাসা করুন । যদি এই প্রসঙ্গে সরবরাহ করতে সহায়তা করে তবে এই প্রশ্নের একটি লিঙ্ক অন্তর্ভুক্ত করুন। - পর্যালোচনা থেকে
স্টিফান

5

আপনার .emacs ফাইলটি আপনার HOMEডিরেক্টরিতে চলে । থেকে এ গিয়ে Emacs ম্যানুয়াল:

হোমের উইন্ডোজ সমতুল্য ব্যবহারকারী-নির্দিষ্ট অ্যাপ্লিকেশন ডেটা ডিরেক্টরি। আসল অবস্থানটি উইন্ডোজ সংস্করণের উপর নির্ভর করে ...

আপনি আপনার সিস্টেমের যে কোনও ডিরেক্টরিতে নির্দেশ করতে পরিবেশের ভেরিয়েবল হোমকে স্পষ্টভাবে সেট করে আপনি এই ডিফল্ট মানটিকে হোমরাইড করতে পারেন। হোম কমান্ড শেল প্রম্পট থেকে বা 'আমার কম্পিউটার' এর 'সম্পত্তি' ডায়লগ থেকে সেট করা যেতে পারে। হোম রেজিস্ট্রিতেও সেট করা যেতে পারে, এমএস-উইন্ডোজ রেজিস্ট্রি দেখুন।


1
হ্যাঁ, আমি জানি কীভাবে হোম ডিরেক্টরিটি সেট করতে হয় তবে সংস্করণ নিয়ন্ত্রণের কারণে আমি আলাদা ডিরেক্টরি থেকে পড়ার জন্য ইম্যাক সেট করতে সক্ষম হতে চাই (যাতে আমার ইম্যাকের জন্য নির্দিষ্ট ডিরেক্টরি থাকতে পারে)
স্টারটেক

3
নোট করুন যে এই হ্যাকটি ইম্যাক্সকে হোম ডিরেক্টরি হিসাবে অন্য কিছু বিবেচনা করে।
ওয়াসমাস

@ ওসামাসা - আমি এটিকে "হ্যাক" বলব না। আমার ইমাস 25-এর বিল্ড-এ, আপনি যদি পরিবেশের পরিবর্তনশীল "HOME" সেট না করে থাকেন তবে এটি ইমাস ইনস্টল ডিরেক্টরিতে ডিফল্ট হয়, যা বেশ স্পষ্টতই ভুল। "হোম" ব্যবহারকারীকে তাদের হোম ডিরেক্টরি যা বিবেচনা করে সেট করা উচিত এবং পরিবেশের পরিবর্তনশীল সেট করা হ'ল এটি করার মানক উপায়। ইউনিক্স সিস্টেমে এটি সাধারণত লগইন প্রক্রিয়া চলাকালীন ব্যবহারকারীর জন্য করা হয়ে থাকে তবে উইন্ডোতে আপনাকে ম্যানুয়ালি এটি করতে হবে।
টেড

এর মূল বিষয়টি হ'ল আপনি নিজের HOMEডিরেক্টরিটিকে সাধারণত কীভাবে ভিন্ন কিছুতে বিবেচনা করবেন change আমি কেন এই পরিবর্তনটিকে হ্যাক বলি। এটির যথাযথ মান হিসাবে সেট করা অবশ্যই স্পষ্ট fine
wasamasa

2

তুমি বলো:

আমি জানি কীভাবে হোম ডিরেক্টরিটি সেট করতে হয় তবে সংস্করণ নিয়ন্ত্রণের কারণে আমি আলাদা ডিরেক্টরি থেকে পড়ার জন্য ইম্যাক্স সেট করতে সক্ষম হতে চাই (যাতে আমার ইম্যাক্সের জন্য নির্দিষ্ট ডিরেক্টরি থাকতে পারে)

আপনার init ফাইলটি আপনার হোম ডিরেক্টরিতে চলে যায়, যা আপনি যে কোনও জায়গায় রাখতে পারেন। স্পষ্টতই আপনি স্ট্যাকের জন্য আলাদা ডিরেক্টরি রাখতে চান যা ইমাস লোড হয়। এটা কোন সমস্যা না. আপনার init ডিরেক্টরিটি আপনার হোম ডিরেক্টরিতে রাখুন এবং সেই ফাইলটি ভেরিয়েবলের load-pathমানতে অন্য ডিরেক্টরি যুক্ত করুন এবং তারপরে আপনি যে কোনও Emacs লাইব্রেরি ব্যবহার করতে চান তা প্রয়োজন। সেই অন্যান্য লাইব্রেরিগুলিকে সেই অন্যান্য ডিরেক্টরিতে রাখুন।

IOW, আপনার init ফাইলটিতে আপনি যে ইমেक्स লাইব্রেরিগুলি লোড করতে চান সেগুলি সেটআপের বাইরে কিছু থাকতে হবে না।


1

কেবল সম্পূর্ণতার জন্য, আমি একটি লিঙ্ক সরবরাহ করি:

https://www.gnu.org/software/emacs/manual/html_node/efaq-w32/Location-of-init-file.html

যা বলে যে আপনি HOMEরেজিস্ট্রি পথে কোনও মান নির্ধারণ করতে পারেন :

HKCU\SOFTWARE\GNU\Emacs\HOME

কিন্তু এই মানটি পরিবেশ পরিবর্তনশীল দ্বারা ওভাররাইড করা হয় HOME


0

আপনি মনে করেন যে আপনি (setq user-init-file "C:/path/to/.emacs")এবং অন্যান্য লাইনগুলি সাইট-স্টার্ট.এলে @ আরিয়ান দ্বারা প্রস্তাবিত করতে পারেন

আপনার সাইটে একটি সাইট স্টার্টআপ ফাইলও থাকতে পারে; যদি এটি বিদ্যমান থাকে তবে এটির নাম দেওয়া হয়েছে সাইট-স্টার্ট.েল। ডিফল্ট.এল এর মতো ইমাকস এই ফাইলটি লিসপ লাইব্রেরির জন্য স্ট্যান্ডার্ড অনুসন্ধানের পথের সন্ধান করে। ইমাকস এই লাইব্রেরিটি আপনার init ফাইলটি লোড করার আগে লোড করে।

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