Autojump: الإكمال التلقائي في zsh (مع oh-my-zsh) لا يعمل

تم إنشاؤها على ١٨ فبراير ٢٠١٥  ·  20تعليقات  ·  مصدر: wting/autojump

عذرًا ، إذا فقدت شيئًا واضحًا ، ولكن آمل أن تتمكن من إخباري ما هذا.

لقد قمت بتثبيت autojump مع brew في إعداد zsh (الإصدار 5.0.7) و oh-my-zsh ولكن يبدو أنه لا يمكنني استخدام علامة التبويب الإكمال التلقائي ، بدلاً من ذلك أنا فقط أحصل على الملفات والمجلدات الخاصة بالدير الحالي.

لقد أضفت السطر [[ -s $(brew --prefix)/etc/profile.d/autojump.sh ]] && . $(brew --prefix)/etc/profile.d/autojump.sh إلى .zshrc الخاص بي وحاولت أيضًا تمكين المكون الإضافي autojump الذي يأتي مع oh-my-zsh (هل يجب علي ذلك؟). على أي حال ، لم أتمكن من تشغيل علامة التبويب. كل شيء آخر يعمل بشكل جيد.

ماذا ينقصني؟ شكرا!

ال 20 كومينتر

بالنسبة لي كذلك. TABbing في autojump لا يفعل شيئًا ...

Tabbing في autojump لا يزال لا يفعل أي شيء.

+ 1 ، أنا فقط أحصل على الملفات والمجلدات الخاصة بالدير الحالي أيضًا. لماذا ؟؟؟ لقد قمت بتثبيت autojump مع الشراب ، لكنه لا يعمل

في mac ، إنه لا يعمل ؛ لكن في أوبونتو لا بأس

إصلاحي لهذه المشكلة هو -
1) قم بتنفيذ zshrc في bash أولاً ، ثم قم بتغيير SHELL ، قل -
$ ~ / .zshrc
دولار ZSH

شريطة أن تكون قد اتبعت خطوات التثبيت الواردة هنا - https://github.com/robbyrussell/oh-my-zsh/blob/master/README.markdown

ملاحظة: لقد نجحت في نظام mac بالنسبة لي

FWIW ، أنا على Mac أيضًا (مع zsh). واجهت هذه المشكلة منذ فترة ، ولكن تم حلها لفترة من الوقت بالنسبة لي.

عندي نفس المشكلة:

image

نفس الشيء هنا. أي تحديثات؟

مع oh-my-zsh ، يعمل إكمال القفزة التلقائية.
بدون oh-my-zsh ، لا يعمل الإكمال.

لقد قمت بتثبيت autojump من خلال homebrew. إنني على يقين من
[ -f /usr/local/etc/profile.d/autojump.sh ] && . /usr/local/etc/profile.d/autojump.sh
هو في بلدي ~ / .zshrc

القفز التلقائي v22.5.3
zsh 5.7.1 (x86_64-apple-darwin19.0)

أعتقد أنني وجدت الحل أثناء قراءة الانتقال إلى zsh
بدون on-my-zsh ، أحتاج إلى الركض
autoload -Uz compinit && compinit
لقد وجدت أيضًا أمرًا مشابهًا في ~ / .oh-my-zsh / oh-my-zsh.sh
autoload -U compaudit compinit
أعتقد أن الشيء الرئيسي هو compinit .

(إذا كان الحل الخاص بي يناسبك أيضًا ، فيرجى إعطائي إبهامًا. 😃)

boyoungzheng نجح الحل بالنسبة لي ، إلا أنه يضيف شرطة سفلية مزدوجة مزعجة ("__") بعد النص المكتوب:

وبالتالي:
$ j tmp<tab><tab>

تحول الى:

$ j tmp__

tmp__1__/bla/tmp-something
tmp__2__/bla/another-tmp
...

هناك أيضًا بعض الاقتراحات المتطابقة ، والتي تبدو وكأنها خطأ.
لكنها جيدة بما يكفي بالنسبة لي :)

boyoungzheng نجح الحل بالنسبة لي ، إلا أنه يضيف شرطة سفلية مزدوجة مزعجة ("__") بعد النص المكتوب:

وبالتالي:
$ j tmp<tab><tab>

تحول الى:

$ j tmp__

tmp__1__/bla/tmp-something
tmp__2__/bla/another-tmp
...

هناك أيضًا بعض الاقتراحات المتطابقة ، والتي تبدو وكأنها خطأ.
لكنها جيدة بما يكفي بالنسبة لي :)

هل تمكنت من إصلاح هذا؟ انا لدى نفس المشكله. يعمل الإكمال التلقائي ولكنه يظهر شرطان سفليتان فقط.

MauritsDescamps لا ، لم أتمكن من حلها.

أي شخص يجد حلا لهذا حتى الآن؟ أنا عالق في مشكلة موريس أيضًا.

حسنًا ، من الواضح أنها ميزة :

تم إصلاح علامة التبويب ZSH.

يتطابق سلوك ZSH الآن مع سلوك Bash. ومع ذلك ، فإنه يتطلب تحميل وحدة compinit. أضف السطر التالي إلى ~ / .zshrc:

تحميل تلقائي -U مركب ؛ كومبينيت

لاستخدام النوع:

ي

سيتم عرض قائمة توضح أهم إدخالات قاعدة البيانات. اكتب أي رقم متبوعًا بإكمال الإدخال.

تضمين التغريدة حسنًا ، لقد قمت بتشغيل ذلك وتلقيت بعض التحذيرات الأولية حول الدلائل غير الآمنة. كان من السهل حل ذلك عن طريق تشغيل compaudit وإصلاح الأذونات لتلك الأدلة المدرجة.

الترميز في هذا الملف ليس صحيحًا ، لذا اضطررت إلى قراءة نموذج RAW من README لمعرفة ما كان يقوله. يُقال أن اكتب j متبوعًا بـ space متبوعًا بـ 2 tab s وأدخل الرقم الذي تريد الانتقال إليه ولكن هذا فقط ينبثق شرطان سفليان بالنسبة لي. ومع ذلك ، يمكنني تنفيذ j xTABTAB للتوسيع إلى x__1_foo x__2_bar وإدخال 2 للانتقال إلى bar .

إذا كان هذا هو الأفضل ، فلا بأس بذلك ، ولكن لا يزال هناك شيء غريب بالنسبة لي. شكرا.

مرحبًا ، أقوم بإضافة de plugin autojump إلى ملف zshrc ، ويعمل.
MacOS Catalina V10.15.7
القفز التلقائي v22.5.3

plugins=(git autojump)

مرحبًا ، أقوم بإضافة de plugin autojump إلى ملف zshrc ، ويعمل.
MacOS Catalina V10.15.7
القفز التلقائي v22.5.3

plugins=(git autojump)

وانقل السطر source $ZSH/oh-my-zsh.sh من .zshrc في نهاية الملف نفسه.

أعتقد حقًا أن shaungrady قد حل هذه المشكلة بقول إضافة autoload -U compinit; compinit للانتهاء من العمل. ( man zshcontrib ). لا يعد الشيء plugins=(autojump) ضروريًا إلا إذا كنت تستخدم oh-my-zsh ، لكن هذا المكون الإضافي هو مجرد نص برمجي (autojump.plugin.zsh) مصدر البرنامج النصي للملف الشخصي للقفز التلقائي.

إذا كنت لا تستخدم oh-my-zsh ، مثلما لم أفعل ، فلا يزال يتعين عليك الحصول على مصدر البرنامج النصي (والذي سيكون في موقع مختلف اعتمادًا على نظام التشغيل و / أو كيفية تثبيته ، على سبيل المثال ، بالنسبة لي على يقوم MacOS بتثبيت autojump مع Homebrew ، فهو موجود في /usr/local/etc/profile.d/autojump.sh).

باختصار ، الخطوات سواء كنت تستخدم oh-my-zsh أو zsh العادي هي:
1) في .zshrc ، مصدر البرنامج النصي للملف الشخصي للقفز التلقائي (أو إذا كنت تستخدم oh-my-zsh ، فقم فقط بتزويد الإضافات = (autojump) المصدر نيابة عنك.
2) في .zshrc ، قم بإنجاز العمل بإضافة autoload -U compinit; compinit -y
3) ابدأ في إكمال الأشياء عن طريق كتابة j foo[tab][tab] وعندما تنبثق القائمة ، أدخل رقم الدليل وأدخل.

rkulla لقد واجهت نفس المشكلة على Ubuntu 18.04 ، oh-my-zsh.

لقد أضفت autoload -U compinit; compinit -y في zshrc الخاص بي كما هو مقترح وحصلت على علامة التبويب تعمل الآن! شكرا لك !

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات