מצב Zsh Vim

Mzb Zsh Vim



ה מצב Zsh Vim אוֹ אנחנו אופנה ניתן להפעיל על ידי ביצוע bindkey -v פקודה או הצבתו ב- לצמק קוֹבֶץ. בעיקרו של דבר, פקודה זו מאפשרת כריכות מפתחות של עורך Vi(m) עבור Z-Shell. אז אתה יכול להשתמש במעבר מצב vim, ובפקודות תנועה ישירות בטרמינל מחוץ ל-Vim.

במדריך זה, אני אבדוק את מצב 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 הבסיסית.