টুইঙ্কিং zsh গিট স্বতঃপূরণ


10

আমি কেবল উবুন্টু হার্ডির উপর zsh 4.3.4 ব্যবহার করে বাশ থেকে স্যুইচ করেছি। আমি গিটের সাথে বিকাশ করছি এবং আমি নিজেকে ক্রমাগত ডিফল্ট গিট পরিপূর্ণতার সাথে লড়াই করতে দেখি: ফাইলের নাম সমাপ্তি আপনি কী যোগ করেছেন বা সরিয়েছেন তা সনাক্ত করে স্মার্ট হওয়ার চেষ্টা করে (গিট-এলএস-ফাইল ব্যবহার করে) তবে কখনও কখনও এটি জিনিস ভুল হয়ে যায় --- উদাহরণস্বরূপ, আপনি যদি একটি উপ ডিরেক্টরিতে থাকেন। এটি আমার কাস্টম গিট এলিয়াসগুলি সম্পর্কেও জানে না (উদাহরণস্বরূপ, কমিটের জন্য একটি নাম হিসাবে গিট সিআই)।

zsh সুপারউসারস, আমি কীভাবে এই পরিস্থিতির উন্নতি করব?

এখানে আমার কিছু চিন্তাভাবনা রয়েছে, যদিও আমি জেডএসে নতুন হিসাবে এটি প্রয়োগ করতে জানি না, তাই আপনি নিজের সহায়তা বা প্রস্তাব দিতে পারেন:

  • গিট ফাইলের নাম সম্পূর্ণ করতে অক্ষম করুন, কেবল শাখা / ট্যাগ / কমান্ড-নাম / কমান্ড-বিকল্প সমাপ্তি রেখে।
  • নিয়মিত zsh ফাইল নাম সমাপ্তির সাথে "স্মার্ট" ফাইল নাম সমাপ্তি প্রতিস্থাপন করুন।
  • একটি নতুন _git সমাপ্তি ফাইল পান, যদি এটি এই বাগগুলি সংশোধন করে এবং সিস্টেমটিকে ওভাররাইড করে।

ধন্যবাদ!



হ্যাঁ, আমি যতদূর বলতে পারি, এটি কেবল একটি গিট প্রম্পট যুক্ত করে এবং অন্তর্নিহিত পরিপূর্ণতাগুলিকে টুইট করে না।
এমিল সিট

কেউ কি কেবল আমাদের গিট কমান্ডের জন্য সমস্ত "স্মার্ট" সম্পূর্ণকরণ অক্ষম করবেন তা আমাদের বলতে পারেন? তারা অনেক বেশি IO করে। শেলটি তাত্ক্ষণিকভাবে প্রতিক্রিয়া জানাতে হবে। আমি কেবল গিট কমান্ডগুলির জন্য ভাল পুরানো সাধারণ ফাইল নাম সমাপ্তিতে ফিরে যেতে চাই। প্রতিবার আমি এটির জন্য একটি ওয়েব অনুসন্ধান করি আমি জেনেরিক zsh ম্যান পৃষ্ঠা সম্পর্কিত তথ্যের এক ধাঁধা পেয়ে যাই।
পিটার লিয়নস

2
উবুন্টু 10.04 এ যে শেলটি আইও করা বন্ধ করে দেয় এমন বিরক্তিকর গিটের সম্পূর্ণতা অক্ষম করতে চায় এমন যে কেউ এফওয়াইআই, আমি কেবল এটি করেছি: sudo mv /usr/share/zsh/functions/Completion/Unix/_git /usr/share/zsh/functions/Completion/Unix/OFF_git
পিটার লিয়ন্স

উত্তর:


5

Zsh এর সর্বশেষতম সংস্করণে আপগ্রেড করার চেষ্টা করুন। আমি সবেমাত্র 4.3.4 থেকে 4.3.10 এ আপগ্রেড করেছি এবং এটি অন্তত গিট এলিয়াসগুলি সম্পূর্ণ না করায় সমস্যাটি সমাধান করে।

আমার ইনস্টলেশন হ্যাক করার পরিবর্তে আমি এটি আমার স্থানীয়তে যুক্ত করেছি .zshrc:

customzsh=/usr/local/src/zsh-4.3.10/bin/zsh-4.3.10
if [ "$SHELL" != "$customzsh" ]; then
  export SHELL=$customzsh
  exec $customzsh
fi

5

বড় প্রকল্পগুলির জন্য, এমনকি নতুন গিট সমাপ্তির স্ক্রিপ্টগুলি খুব ধীর। এগুলি অক্ষম করতে এবং কেবল সাধারণ ফাইল সমাপ্তি ব্যবহার করতে, আপনার .zshrc এ নিম্নলিখিত কমান্ডটি রাখুন:

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