Vim או TextMate...

| |
אוי כמה שאני מזדהה עם יהודה כץ. הוא קולע למטרה לא רק עם תובנה איך לגשת לסביבה חדשה, אם אתה מגיע מסביבת GUI (כמו OS/X), גם למי מבין נותני העיצות להקשיב, וממי עדיף להתעלם.

אני חושד שרק בודדים (שנחנו בהמון סבלנות, או שאין להם לו"ז לא סלחני) מצליחים להפיק את המקסימום מ Vim/Emacs.

הבעיה שלי עם Vim (או emacs) לא הייתה אף פעם עקומת הלימוד (מתרגלים אחרי מספר ימים) אלא הפגיעה בפרודקטיביות, שכמעט אף פעם אין לה הצדקה. במקום להשתמש ב MacVim, שהתקנתי, העדפתי ללכת "נייטיב" ולנסות לעבוד מהמסוף. לא סוף העולם, אבל זה בהחלט לא תרם לתחושה שאני משפר את איכות החיים שלי.

אולי יותר אנשים ידבקו במטרה אם הם ימצאו את שביל זהב: לסבול את העיכובים והירידה הזמנית בתפוקה, אבל גם להתחיל לראות את היתרונות של הפיצ'רים המיוחדים לסביבות הללו כבר בהתחלה.

כץ מביא דוגמאות משכנעות ומספר טיפים למפתחים בסביבת OS/X שרוצים לנסות Vim ולא מצליחים להתמיד.

אפשרויות לתצוגת תגובות

בחרו באפשרות התצוגה הרצויה, ולחצו על "שמור הגדרות".

אני דווקא מאוד פרודקטיבי עם VIM

אני מוצא את עצמי הרבה פעמים עובד קשה יותר עם סביבות עבודה ועורכים אחרים.

נגיד ואני רוצה עכשיו לספק הערה בקובץ BASH ל20 שורות קוד. למעט Kate ו VIM אני לא מכיר דרך לעשות את ההערה הזו במכה אחת בלי ללכת שורה שורה.

יותר מזה, העבודה עם split זה דבר גאוני שאני עובד איתו המון והוא עוזר לי הרבה יותר מקפיצות או שכפול מסכים. הרבה עורכי טקסט שמספקים split עושים את זה בגישה שלדעתי לגמרי שגויה ביסוד שלה, בעוד שב vim זה מאוד אינטואיטיבי.

נגיד ואתה פותח tab ורק בו אתה רוצה לעשות vsplit בשביל לראות את ההבדלים בין קובץ אחד למשנהו בשורה מסויימת (לא diff אמתי, אלא לראות נגיד שיש את אותו הערך של משהו), ב vim זה פשוט. אני לא מכיר שום עורך טקסט או סביבה אחרת שמספקת לי דבר כזה, אלא אם אני מפעיל diff מלא, דבר שלא תמיד רצוי.

ואני יכול כמובן להמשיך בדברים האלו, אבל עצם זה שקל מאוד לתכנת את vim לצרכים שלך, גורם לך למצב בו הוא הרבה יותר פרודקטיבי ויעיל מאשר כל עורך אחר שאני מכיר.

העניין הוא שצריך לדעת לעבוד איתו, אחרת אתה לא יכול לנצל אותו ואז אתה סתם עובד קשה וחבל.

IK

אני מאמין לך. אב...

אני מאמין לך. אבל כמה זמן לקח לך להגיע למצב כזה? האם מתי שהתחלת ללמוד VIM היית מעורב בפרוייקט בעבודה (והשתמשת ב Vim בסביבה זו), או סתם למדת להנהתך? מה שהכי מדבר אלי בפוסט שלו זה שלא כמו ב-TextMate, שם פשוט מתחילים להשתמש בתוכנה במקום "ללמוד" אותה לעומק כבר בהתחלה, ב Vim אתה לא פרודוקטיבי עד שלמדת מספיק כדי להגיע לרמה בסיסית אפילו. זה המקום שבו אני נשבר בכל פעם שאני חוזר ל-vim. התרגלתי למודים, אני אפילו יודע המון קיצורים טריויאלים ואחרים, ולא צריך את העכבר, אבל זה פשוט הרבה יותר מדי מאמץ בהתחלה - ללא הצדקה אם אתה חייב לגמור פרוייקט ואין לך זמן מיותר. זה מסתבר עוד יותר שרוצים להוסיף פלאגין שעושים דברים נוספים. כמעט צריך ללמוד הכל מחדש לפעמים. לנווט עם NERDTree לדעתי זה לא בדיוק טריויאלי, אפילו אם זה יותר טוב מכלום או netrw.

התחלתי ללמוד אותו תוך כדי עבודה

היה לי שרת שהיה צריך להגדיר לו רשת, והייתי חייב להשתמש בvim כי הוא היה הדבר היחיד שמותקן על המחשב.
בקשר ללימוד vim, אני כל הזמן לומד עוד דברים ומשפר את הדרכי עבודה שלי. אחת הסיבות שכתבתי את המדריך עבור vim ב2002, היה בגלל שרציתי ללמוד אותו טוב יותר, אז עשיתי חקירה בנושא.

העניין הוא שכל אחד לומד אחרת דברים חדשים. אם אתה תלך בשיטה שלי שהיא לא מתאימה לך, יקח לך יותר זמן להשיג אותו הדבר.

אני למשל לא מסתדר עם עורכי טקסט "רגילים". לא כי אני לא מסוגל לעבוד איתם, אלא כי אני משקיע לדעתי יותר מידי אנרגיה במה שאני עושה.

למעשה למעט לזרוס, שבו אחרי שאני למדתי (ועדיין לומד) את כל היכולות שלו, אני מוצא את עצמי עובד פחות קשה מנגיד gedit או kate בעריכת טקסט (אני מתעלם כרגע מהיכולות מעבר בעורך טקסט), עדיין חסרים לי הרבה דברים שאני כן משתמש בהם עם vim.

IK