במדריך זה, אני אבדוק את מצב Zsh vim, כיצד להגדיר אותו ב-Zsh ו-Oh My Zsh, ואדון באפשרויות אחרות לשיפור מצב vim ב-Zsh.
הערה: בדרך כלל, אנחנו אופנה נעשה שימוש במונח; במדריך זה אשתמש גם במצב vi וגם במצב vim לסירוגין.
מצב Zsh Vim
עליך להכיר את הפונקציונליות האופיינית של Vim אם אתה משתמש בה לעריכה, פיתוח או ניהול מסמכים. ל-Vim יש מצבי עריכה שונים כגון מצב רגיל, הוספה או שורת פקודה. ל-Vim יש גם כריכות מקשי ניווט קבצים משלה. אם אתה רוצה להשתמש באותה חוויה בתוך Z-Shell, אז זה יכול להיעשות באמצעות מצב vi. ניתן להגדיר כריכות מפתח אלו עבור Z-Shell, Oh My Zsh ו-Bash גם כן.
הערה: כדי לבצע את ההוראות הניתנות במדריך זה, אני משתמש בלינוקס (Ubuntu 22.04) בה מותקן ה-Zsh העדכני ביותר. תוספים המותקנים במדריך זה הם ספציפיים ללינוקס, כך שהפקודות הללו לא יעבדו ב-macOS.
הפעל את מצב Zsh Vim
כדי להפעיל את מצב vim באופן זמני ב-Zsh ב-Linux, או ב-macOS, הפעל את bindkey -v פקודה.
bindkey - ב
כדי להגדיר את מצב vim הקבוע ב-Zsh, ראשית, פתח את לצמק קוֹבֶץ.
יש שני לצמק קבצים במערכות דמויות יוניקס, אחד הוא כלל מערכת ב- /וכו הספרייה והשנייה מוגדרת על ידי המשתמש ב- בית מַדרִיך. אני ממליץ להשתמש בספציפי למשתמש לצמק קובץ, אם אינך יכול למצוא אותו ב- בית ספריה, אתה יכול ליצור אותה באמצעות גע ב-~/.zshrc פקודה.
לגעת ~/. לצמקעכשיו, פתח את לצמק קובץ בכל עורך טקסט; אני פותח את זה בעורך Vim.
sudo vim ~/. לצמקשים את bindkey -v בתוך ה לצמק קוֹבֶץ.
bindkey - בכאשר אתה עובר ממצב הוספה למצב רגיל, עשוי להיות עיכוב קטן. כדי לתקן את זה, הגדר את פסק הזמן של המפתח ל-1 ב- לצמק קוֹבֶץ.
KEYTIMEOUT= 1
כעת, שמור וצא מהקובץ באמצעות ה- :wq פקודה או לחיצה על shift+zz מפתחות.
כעת, החל את השינויים על ידי המקור של לצמק קובץ באמצעות הפקודה הבאה.
מָקוֹר ~/. לצמקהפעל מחדש את ה-Zsh, ו-Zsh vim-mode מופעל כעת.
הערה: ה לצמק הקובץ מוסתר, כדי להציג את הקבצים המוסתרים בספריית הבית השתמש ב- ls -a פקודה. כל שמות הקבצים שמתחילים בנקודה הם קבצים מוסתרים.
שימוש במצב Zsh Vim
אין אינדיקציה מיוחדת לגבי הפעלת מצב vim ב-Zsh; אתה חייב לחוות את זה. ה אני ניתן להשתמש במפתח כדי להפעיל את לְהַכנִיס מצב, ואת יציאה ניתן להשתמש במפתח כדי לחזור לברירת המחדל או נוֹרמָלִי מצב.
מצב Zsh vim חשוב, במיוחד בשינוי הפקודות הארוכות. למשל, אם שכחת להוסיף את הסודו בתחילת השורה. פשוט, לחץ יציאה להיכנס ל נוֹרמָלִי מצב ולאחר מכן את 0 פקודת תנועה כדי לקבל את תחילת השורה. כעת, אתה יכול להקליד את סודו שוב על ידי כניסה ל לְהַכנִיס מצב.
יתר על כן, לבחירת הטקסט, לחץ על ב להיכנס ל חָזוּתִי מצב. למחיקת המילה לחץ אמר , כדי למשוך את המילה הקש כן זה כן . בסך הכל, אתה יכול להשתמש בכל פקודות Vim בצורה די נוחה.
dd | כדי למחוק את הפקודה |
yy | כדי למשוך את הפקודה |
vv | כדי לפתוח את הפקודה בעורך Vim לעריכה |
/ או ? | כדי לחפש את הפקודות בהיסטוריה |
[ספירה] x | כדי למחוק את התווים |
cc | מחק את הפקודה והפעל את מצב ההוספה |
: | כדי לבצע את הפקודות vi-mode |
הערה: אם אתה משתמש במצב vim, ניתן לרשום למעלה מ-400 פקודות vim-mode ב-Zsh על ידי לחיצה על נקודתיים : ולאחר מכן את לַחֲזוֹר מפתחות.
שפר את מצב Zsh Vim באמצעות תוסף Zsh-Vi-Mode
מצב vim המוגדר כברירת מחדל ב-Zsh הוא טוב אך חסר תכונות חשובות רבות. לדוגמה, אין אינדיקציה למעבר מצב, מה שיכול להיות מתסכל. כדי לתקן את זה במהירות, הייתי ממליץ להתקין את Zsh-Vi-Mode חיבור.
כדי לקבל תוסף זה, עליך להתקין מנהל פלאגין של Zsh. ישנם מנהלי פלאגין Zsh רבים כמו Antigen, ZPlug, Zgen, Zinit ו-Zap. עבור הדרכה זו, אתקין את מנהל הפלאגין של Antigen עבור Zsh.
ישנן שיטות שונות להתקנת מנהל הפלאגין של אנטיגן. לאובונטו יש מנהל חבילות ברירת מחדל בשם APT שבו אני יכול להשתמש כדי להתקין אותו.
sudo apt התקן את zsh - אַנְטִיגֵןכדי להתקין אותו ב-macOS השתמש:
להתקין אנטיגן לחלוטכדי ללמוד שיטות התקנה אחרות, בקר כאן .
לאחר ההתקנה של מנהל התוספים, אני אתקין את Zsh We Fashion חיבור. פתח את ה לצמק קובץ והנח בו את השורות הבאות.
מָקוֹר $ בית / אַנְטִיגֵן . זשצרור אנטיגן jefreytse / זש - אָנוּ - מצב
להחיל אנטיגן
כדי להשלים את תהליך ההתקנה של התוסף, מָקוֹר ה לצמק קוֹבֶץ.
מָקוֹר ~/. לצמקכעת, התוסף מותקן; אז, כשאתה ב- נוֹרמָלִי במצב שבו הסמן יהיה סגנון בלוק (▊) תוך כדי לְהַכנִיס במצב שבו הסמן יהיה סגנון קרן (▏) . יתרה מכך, בחירת הטקסט תהיה באדום. עם זאת, כל ההגדרות הללו ניתנות להתאמה אישית הודות לתוסף.
למידע נוסף על הפונקציונליות, התכונות ואפשרויות ההתאמה האישית, קרא כאן .
אפשר מצב Vim ב-Oh My Zsh
Zsh פופולרי בגלל יכולת ההתאמה האישית והתכונות המתקדמות שלו. אם אתה משתמש Zsh, אז בטח עברת במהירות ל-Oh My Zsh; פרויקט קוד פתוח לשיפור הפונקציונליות של Zsh וניל.
אפשרויות ההתאמה האישית ב הו זש שלי הם אינסופיים, מה שהופך אותו לבחירה מיידית עבור משתמשי Zsh. אתה יכול גם להפעיל את מצב vim ב-Oh My Zsh באמצעות אנחנו מצב חיבור. ל-Oh My Zsh יש א אנחנו אופנה תוסף, שנותן תכונות נוספות מלבד אפשרויות ברירת המחדל של מצב vi, כגון מחוון מצב Vim, סגנונות סמן שונים ואפשרויות התאמה אישית אחרות.
פתח את ה לצמק קובץ בעורך Vim.
sudo vim ~/. לצמקמניחים את אנחנו מצב באפשרות התוספים.
תוספים= ( אָנוּ - מצב )
כעת, שמור וצא מהקובץ באמצעות :wq פקודה ו מָקוֹר זה.
מָקוֹר ~/. לצמקכעת, תקבלו אינדיקציות שונות למצבים ולבחירה. ניתן גם לשנות את חיווי הסמן עבור מצבים שונים.
הנורמלי מסומן על ידי <<< בצד ימין של חלון המסוף, בעוד שחיווי מצב ההוספה מושבת כברירת מחדל, אך ניתן להפעיל אותו על ידי ציון זה ב- לצמק קוֹבֶץ.
INSERT_MODE_INDICATOR= '%F{white}+%f'עכשיו ה + סימן יופיע בתור חיווי מצב הוספה. ניתן לשנות את הצבע ואת סימן החיווי.
קרא עוד על אפשרויות ההתאמה האישית של תוסף זה מ כאן .
השבת את מצב Vim ב-Zsh
במצבים מסוימים, מצב vim יכול להוות מכשול. למרבה המזל, ניתן להשבית אותו באמצעות bindkey -e פקודה בז'ש.
bindkey - זהפקודה זו מאפשרת את ברירת המחדל של קשירת מפתחות Emacs, אך זמנית עבור ההפעלה הנוכחית. כדי להפוך אותו לצמיתות, הסר את bindkey -v פקודה והחליפו אותו ב bindkey -e בתוך ה לצמק קוֹבֶץ.
סיכום
מצב vim ב-Zsh מאפשר את כריכת המקשים דמוית Vim ב-Z-shell. זה מאפשר לנו לערוך ולנווט את הפקודות באמצעות כריכת מקשי Vim. זה יכול להיות מועיל במיוחד עבור משתמש Vim רגיל. יתר על כן, ניתן להפעיל אותו בקלות על ידי מיקום bindkey -v פקודה ב לצמק קוֹבֶץ. מצב vanilla vim חסר פונקציות רבות, אך ניתן למלא את הפער הזה בעזרת תוספים. מצב vim זמין גם עבור Oh My Zsh; שוב, תוספים של Oh My Zsh משפרים את חווית מצב vim הבסיסית.