התקנת טרמינל של Windows: סקירת יכולות מעשית

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

במדריך האולטימטיבי הזה, תלמד על אחד הקונסולות הטובים ביותר עבור מפתחים; טרמינל Windows. תקבל סקירה מלאה של כמעט כל התכונות של טרמינל Windows. תלמד כיצד זה יכול לעזור לך לבצע דברים ב- Windows בשורת הפקודה.

טרמינל Windows משפר את חוויית הקונסולה עם תכונות טרמינל מודרניות כמו כרטיסיות, חלונות צמודים, ואפילו תמונות רקע. אפשר גם להריץ מפרש Linux מלא בצד יחד עם PowerShell של Windows או cmd.exe ללא צורך להחליף בין הפקודות.

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

דרישות קדם

הדרישות להתקנה ושימוש בטרמינל Windows עצמו הן די בסיסיות. כל מה שאתה צריך הוא מכונת Windows 10 עם בנייה 1903 (מאי 2019) או מאוחר יותר. אם ברצונך להמשיך עם כל הדמויות במאמר זה, תצטרך גם להתקין כמה כלים נוספים:

  • תכונת תת מערכת ההפעלה Windows ל-Linux (WSL) מאופשרת עם התקנת הפצת Linux (כל הדמויות המוצגות משתמשות באובונטו 20.04)
  • Visual Studio Code (VS Code)
  • Python עם ספריית הטקסט העשירה מותקנת
  • Visual Studio 2019 או מאוחר יותר עם:
  • ה-SDK של Windows 10 1903 מותקן
  • הרכיב לפיתוח של שולחן העבודה עם C++ מותקן
  • הרכיב לפיתוח של Universal Windows Platform מותקן
  • רכיבי כלי Universal Windows Platform של C++ (v142) מותקנים

טרמינל נגד קונסולה נגד מסדרת פקודות

מכיוון שנכסה הרבה מונחים במאמר זה, חשוב להבין תחילה את ההבדלים במונחים כדי שלא תתבלבלו.

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

  • טרמינל: יישום טרמינל של Windows.
  • קונסולה: כל יישום מארח לקונסולה שאינו הטרמינל של Windows.
  • מסדרת פקודות: התוכנה בין הטרמינל למערכת ההפעלה. (pwsh, cmd, zsh, וכו')

התקנת טרמינל של Windows

ישנן מספר דרכים שונות להתקין את Windows Terminal, אך הדרך הקלה ביותר (והמומלצת על ידי Microsoft) היא להתקין אותו מחנות ה-Microsoft Store. ישנן שתי גרסאות שונות שניתן להוריד; גרסה רגילה של Windows Terminal ו-תצוגה מקדימה של Windows Terminal.

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

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

Default Windows terminal

שים לב שיש ל-Windows Terminal ארבעה רכיבים עיקריים:

  1. חלון הטרמינל – כאן תבצע את רוב העבודה שלך וכאן תוכל להתאים אישית ביותר.
  2. שם הכרטיסייה – Windows Terminal תומך בכרטיסיות, שפירושם כי ניתן לפתוח כרטיסיות שונות
  3. כרטיסייה חדשה – הלחצן הזה יפתח כרטיסייה חדשה של הפרופיל המוגדר כברירת מחדל
  4. רשימת פרופילים – זה יציג את הפרופילים שזמינים לפתיחה.

ל-Windows Terminal יש פריסה מינימליסטית, אך יש הרבה פונקציונליות מוסתרת מאחוריה.

בניית הטרמינל מהמקור

בעוד זה תְּרִיאֵי Windows הוא, והוא בא ממיקרוסופט, זה גם קוד פתוח לחלוטין, שפשוט אומר שאם תרצה, תוכל לתרום לו. זה תוכנה ב- C++ עם קהילה פעילה מאוד.

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

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

  1. הפעל את הפקודה של git: git submodule update --init --recursive כדי לעדכן את כל הפרוייקטים המשניים של git
  2. הריץ את הפקודות של PowerShell הבאות:
Import-Module .\tools\OpenConsole.psm1
Set-MsBuildDevEnvironment
Invoke-OpenConsoleBuild

קובץ settings.json: להתאמה אישית של כל הדברים

לבסוף, כנראה שתרצה להפוך את הטרמינל לשלך ולהתאים אותו. אחת הדרכים הטובות ביותר להתאים את תרמינל Windows היא על ידי עריכת קובץ ה- settings.json הממוקם בתיקיית %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\.

ניתן גם לגשת לקובץ ה- settings.json על ידי לחיצה על רשימת הפרופילים ובחירה ב- הגדרות.

קובץ ה- settings.json הוא המקום שבו תבצע את רוב ההתאמות עבור תרמינל Windows עד שאפשרות גרפית תהיה זמינה.

צוות עבור חלונות הטרמינל הבטיח בהוצאה קרובה לצאת שinterlace> שיחצורה לניהול הגדרות בקרוב!

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

אתה יכול אפילו לשתף את ההגדרות עם אחרים. אם תרצה להציץ בדוגמה של כיצד מראה קובץ settings.json, תוכל לבדוק אחת כאן.

סכמת הגדרות.json

אם אתה משתמש ב-Visual Studio Code, הטרמינל כולל סכמת JSON שתעזור לוודא כל התאמה אישית שתעשה בתוך settings.json, כולל מילוי אוטומטי לכל מותאמות חדשות.

ברגע שהשינויים שלך נשמרים (כל עוד settings.json תקף עדיין), השינויים החדשים יתבטאו מיד בטרמינל או שיתקבל שגיאה בלי צורך לרענן את הטרמינל.

בעוד ש-Visual Studio Code אינו נדרש לעריכת JSON, מומלץ בהחלט כאשר מדובר בהתאמה אישית של חלונות הטרמינל.

יש כרגע ארבעה קטעים שונים ב־settings.json המשליטים כיצד ייראה ויהיה לתחושה של חלון ה-Windows Terminal: גלובלים, פרופילים, סכמות וקישוריות מקשים. בואו נצפה בכל קטע.

גלובלים

ה־קטע הגלובלי אחראי לקביעת התנהגותו של Windows Terminal. תמיד בראש הקובץ, הקטע הגלובלי שולט בדברים כמו אישור בסגירה, ערכת עיצוב והפרופיל ברירת המחדל. ניתן לראות דוגמה במקטע הקוד הבא.

// settings.json

{
    "$schema": "<https://aka.ms/terminal-profiles-schema>",

    "defaultProfile": "{d21f5dd0-bdc3-4cf7-9e3c-5d5d721074c9}",

    // ניתן להוסיף עוד הגדרות יישום גלובליות כאן.
    // למידע נוסף על הגדרות גלובליות, בקרו ב־<https://aka.ms/terminal-global-settings>

    // אם מאופשר, בחירות מועתקות אוטומטית ללוח הלוחית שלך.
    "copyOnSelect": false,

    // אם מאופשר, נתונים מעוצבים גם מועתקים ללוח הלוחית שלך
    "copyFormatting": false,

		...
		...
}

פרופילים

A profile is a configuration of the Windows Terminal that has its own shell, theme, and settings. When you open up a Windows Terminal profile, it will open a session with the assigned shell, environment, or WSL distribution. This means you can have different shells open at the same time, or different sessions of the same shell, which can be useful when testing code cross-platform or need to run a background process.

ה-Windows Terminal מגיע עם שלושה פרופילים כברירת מחדל: Windows PowerShell, cmd.exe ו-Azure Cloud Shell. אם יש לך WSL מותקן, ייווצר גם פרופיל עבור כל פצצורת WSL שיש לך מותקנת. הוא כולל גם קטע ברירת המחדל שיחול על כל פרופיל ב־settings.json. זהו מקום טוב לשים פונטים שמתאימים ל־Unicode, כמו שיתואר מאוחר יותר במאמר זה.

אתה יכול לראות דוגמה לכיצד פרופיל נראה בקטע הקוד הבא.

// settings.json

"profiles":
    {
        "defaults": {},
        "list":
        [
            {
                "guid": "{d2df7eb9-1d7e-4a05-91a6-04ac0ee99970}",
                "name": "Windows PowerShell",
                "commandline": "powershell.exe",
                "hidden": false
            }
				]
		}

יצירת פרופיל חדש

הגדרת פרופילים יכולה להיות שימושית אם ברצונך להוסיף שינויים על אותו shell או להוסיף פרופילים מותאמים אישית לטרמינל.

כדי ליצור פרופיל חדש של Windows Terminal ב-settings.json, הנה השלבים שתצטרך לבצע:

ודא שאתה מוסיף פסיק אחרי כל פרופיל חוץ מהאחרון כדי להפוך את ה-JSON לתקף.

  1. העתק פרופיל כלשהו מהקטע שלך של פרופילים. אלו מתחילים ב-[ ומסתיימים ב-] מתחת לצומת list בקובץ ה-JSON. אלו הם שורות שבין שבע לארבעה עשר למעלה.
  2. צור GUID חדש באמצעות הרצת [guid]::NewGuid() מכל סשן PowerShell. החלף את הערך הנוכחי של guid בפרופיל החדש שלך עם ה-GUID שיצרת. GUIDs נוצרים באופן אקראי כאשר הטרמינל הוגדר עם הפרופילים ברירת המחדל.
  3. הוסף או שנה פרמטרים נוספים כדי להתאים אישית את הפרופיל.
  4. העתק את תוכן של settings.json ווודא שהוא תקף על ידי הרצתו דרך JSON Lint או לינטר JSON אחר. תקן כל בעיה.
  5. שמור את השינויים שלך.

ישנן אפשרויות רבות זמינות להגדרה בפרופיל. שימו לב אם יש לכם הגדרה בקטע המחסנית בקובץ settings.json, ויש לכם אותה הגדרה זו בפרופיל החדש שלכם, תמיד תמחקו את ההגדרה ברירת המחדל. לפירוט מלא, ראו את תיעוד ההגדרות של Windows Terminal.

תכניות

הקטע הזה מתייחס לתכניות צבעים עבור הפרופילים שלך ב- Windows Terminal. תכנית צבעים מגידה לטרמינל איזה ערך hex להשתמש בו עבור כל צבע שמופיע בטרמינל. מאחר שהטרמינל יכול להציג צבעים ב-24 ביט, אפשר להיות מאוד יצירתיים עם הצבעים האלה. לכל תכנית יש שם ורשימת צבעים שממפה לערך hex שניתן לשנות בקלות כפי שמוצג למטה.

// settings.json

"schemes": [
        {
            "name" : "Ubuntu",
            "background" : "#2C001E",
            "black" : "#4E9A06",
            "blue" : "#3465A4",
            "brightBlack" : "#b3b3b3",
            "brightBlue" : "#729FCF",
            "brightCyan" : "#34E2E2",
            "brightGreen" : "#8AE234",
            "brightPurple" : "#AD7FA8",
            "brightRed" : "#EF2929",
            "brightWhite" : "#EEEEEE",
            "brightYellow" : "#FCE94F",
            "cyan" : "#06989A",
            "foreground" : "#EEEEEE",
            "green" : "#300A24",
            "purple" : "#75507B",
            "red" : "#CC0000",
            "white" : "#D3D7CF",
            "yellow" : "#C4A000"
        }
    ]

הצבעים האלה יתאימו לרקע ולצבעי הטקסט בעת שימושכם בתכנית הזו ב- Windows Terminal. אם יש לכם את settings.json פתוח ב- Visual Studio Code, תוכלו ללחוץ על ערכי ה- hex שיש להם מחוון גרפי שמציג את הצבעים האמיתיים כפי שמוצג למטה.

VS Code color options

ערכות התצוגה בטרמינל (נקראות גם סכימים ב-Windows Terminal) אינן נדירות בעולם התוכניות לטרמינל. בעוד שאין דרך יחידה ליצירת ערכת נושא (סכימים) הפועלת בכל יישום טרמינל שונה, תוכל למצוא המון כלים ליצירתם ללא קשר לאפליקציה שבה אתה משתמש. תוכל למצוא סכימים מוכנים בקלות, או ליצור בעצמך!

קישורי מקשים

קישורי המקשים הם אופן בו ה-Windows Terminal מקצה מקשי חמים לפעולות כמו חלוניות חדשות, כרטיסיות או אפילו פעולות בסיסיות כמו העתקה והדבקה. קיימות המון פעולות שניתן להקצות מקשי חמים מותאמים אישית, מה שהופך את ההתאמה של הטרמינל לנוחה באופן כלשהו עבורך.

תוכל לראות בקטע הקוד הבא כמה מהקישורים המוגדרים כברירת מחדל.

// settings.json

"keybindings":
    [
        { "command": {"action": "copy", "singleLine": false }, "keys": "ctrl+c" },
        { "command": "paste", "keys": "ctrl+v" },
        { "command": "find", "keys": "ctrl+f" },
        { "command": { "action": "splitPane", "split": "auto", "splitMode": "duplicate" }, "keys": "alt+d" },
        { "command": { "action": "closePane" }, "keys": "ctrl+w" },
        { "command": { "action": "newTab" }, "keys": "ctrl+t" }
    ]

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

הגדרות ויזואליות

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

שדרוגי טקסט

אחת מהתכונות שפורסמה הכי הרבה היא תמיכה בצבע 24-bit והצגת טקסט ממושר. זה עשוי לא להישמע מרשים בפני עצמו עד שתשווה את זה לאיך ש-powershell.exe או cmd.exe מציגים טקסט וצבע. באמצעות ספריית ה-Rich של Python, זה די ברור כמה גדולות ההבדלים ביכולות ההצגה בין הקונסולות הישנות ל-Terminal של Windows.

Text enhancements in Windows Terminal

פתיחת הספריה ה-Rich מ-Python ב-Terminal של Windows וב-powershell.exe

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

Cascadia font

כתיבה בקאנג'י בעזרת ה-Terminal של Windows ו-powershell.exe

יש לכך יתרונות בינלאומיים ניכרים, אך התמיכה ביוניקוד ו-UTF-8 גם אומרת שה-Terminal של Windows יכול לתמוך גם ב…

אמוג'י ?

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

למטה ניתן לראות דוגמה להצגת אמוג'ים במסוף powershell.exe ואותה דבר בטרמינל של Windows באמצעות ספריית rich של פייתון. שימו לב לשורה The Terminal is pretty וראו את ההבדל.

Emojis in Windows Terminal

הצגת אמוג'ים עם ספריית הטקסט העשיר של פייתון

גופני Cascadia

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

למידע נוסף: הצוות אותו עיצב את טרמינל הווינדוס ייצר את גופן Cascadia Code במיוחד לשימוש בטרמינל הווינדוס.

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

Ligatures in Windows Terminal

A printout of all the ligatures supported by Cascadia Code. Code here.

אם תעדיף שלא להשתמש בליגטורות, אך עדיין תרצה ליהנות מיתר היתרונות של Cascadia Code, תוכל גם להשתמש בגרסתו Cascadia Mono שנשלחת יחד עם Windows Terminal ואין לה ליגטורות. כל אחד מהם כולל גם גרסה עבור Powerline, (Cascadia Code PL ו- Cascadia Mono PL) שנדון בהמשך.

Powerline

Powerline הוא במקור תוסף ל-Vim שהוסיף מידע לקונסולה, וקיים בעולם ה-Linux כבר זמן רב. הרעיון היה לספק יותר מידע במהירות בפרומט, ולהפוך את יותר מידע לזמין לך ידיים בזמן שאתה עובד בקונסולה.

Powerline הועבר, הוכפל ושוכפל בכל קונסולה מודרנית, כולל PowerShell, אך בגלל ההגבלות של הקונסולות הקודמות, הוא חסר משהו. הטרמינל פותר את הבעיה הזו על ידי כלול סמלים מסוימים נקראים גליפים. הגליפים משמשים ב-Powerline לספק לפרומט עוד מידע בקריאה.

Powerline ב-PowerShell

עבור PowerShell, ניתן להגדיר פרומט בסגנון של Powerline על ידי התקנת oh-my-posh באמצעות קוד הדוגמה הבא.

# פוורשל

Install-Module posh-git -Scope CurrentUser
Install-Module oh-my-posh -Scope CurrentUser
Set-Prompt

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

Powerline support

זהו ערכת הנושא Paradox מתוך oh-my-posh עם קצת התאמה אישית כדי להציג את מערכת ההפעלה הנוכחית ואת גרסת PowerShell.

Powerline ב־Bash

עבור Bash, יהיה עליך להתקין מעטפת כמו zsh או fishshell. אלו מוסיפים כמה תכונות והדגשה אישית לטרמינל, אך יכולים להיות מעט קשים לשימוש לבדם. מומלץ גם להתקין מסגרת עבור zsh כמו ohmyzsh, שתפקידה לשפר באופן משמעותי את השימוש בה. ohmyzsh מגיעה עם ערכות נושאים והתאמה אישית לפרומפט של bash בדיוק כמו ש־oh-my-posh עושה עבור הפרומפט של PowerShell.

לאחר התקנה זו, תוכל לשנות את ערכת הנושא על ידי שינוי המאפיין ZSH_THEME בקובץ ~/.zshrc. שנה את זה באמצעות עורך כמו vim או nano ושמור את הקובץ. לאחר מכן, הפעל את source ~/.zshrc והשינויים שלך ייחולו.

Powerline in Bash

שינוי מערכת הנושא מ־agnoster למערכת הנושא robbyrussell ב־zsh.

תמונות רקע

אחת מהתכונות הדוברות ביותר של טרמינל Windows בשחרורו הייתה היכולת להשתמש בתמונות בכל פרופיל. עד כה, כנראה ששמת לב שהרקעים היו כולם בצבע אחד שהוגדר בקובץ settings.json עם התגית background.

מישהו אנשים מוצאים תמונות מסחררות כשהם תוכנת קוד, אז אם אתה אחד מאלה, הנה דוגמה לשימוש ברקע בצבע אחד ב- settings.json.

// settings.json

"profiles":
    {
        "defaults": {},
        "list":
        [
            {
                "guid": "{d2df7eb9-1d7e-4a05-91a6-04ac0ee99970}",
                "name": "Windows PowerShell",
                "commandline": "powershell.exe",
								"background": "#006e1c",
                "hidden": false
            }
				]
		}

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

Plain color background

הפרופיל הדוגמא שנזכיר כאן יציג את הצבע הזה כרקע.

כדי להשתמש בתמונת רקע, יהיה עליך להיות ברשותך את התמונה במערכת הקבצים המקומית שלך. בעת הכתיבה, הטרמינל אינו תומך בתמונות רקע מכתובת URL. ב- settings.json, נווט אל הפרופיל שברצונך להקצות את תמונת הרקע לו. מכאן, הוסף את התגית backgroundImage ותן לו את הערך של הנתיב לתמונה. למטה דוגמה שמגדירה את רקע הפרופיל לתמונה של חתול.

// settings.json

"profiles":
    {
        "defaults": {},
        "list":
        [
            {
                "guid": "{d2df7eb9-1d7e-4a05-91a6-04ac0ee99970}",
                "name": "Windows PowerShell",
                "commandline": "powershell.exe",
								"backgroundImage": "%USERPROFILE%\Pictures\terminal_cat.jpg",
                "hidden": false
            }
				]
		}
Images in Windows terminal background

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

החתול של הטרמינל נמצא בטרמינל שלך, תופס את הרקע שלך.

כל עוד settings.json עדיין קובץ JSON תקף ועדיין מתאים לסכמה של הטרמינל, תראה את העדכון של הרקע מיד עם שום צורך לרענן ידנית או לסגור ולפתוח מחדש את הטרמינל. תוכל לראות דוגמה נהדרת לעדכון זה בזמן אמת למטה.

Real-time setting updates

הטרמינל של Windows יתעדכן ברגע שתבצע שינויים ב-settings.json ותשמור.

מיקום תמונות

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

// settings.json

"profiles":
    {
        "defaults": {},
        "list":
        [
            {
                "guid": "{d8a5efb7-25a0-4d75-8c6c-1f2603188971}",
                "name": "PowerShell 7",
                "source": "Windows.Terminal.PowershellCore",
								"backgroundImage": "%USERPROFILE%\Pictures\icons\pwsh.png",
								"backgroundImageStretchMode": "none",
                "backgroundImageAlignment": "bottomRight",
								"backgroundImageOpacity": 0.75,
                "hidden": false
            }
				]
		}

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

A PowerShell 7 profile with the PowerShell logo as a background image

גם סביבת ה־Windows Terminal תומכת ב־GIFים מונפשים, כך שאם אינך מוצא את זה מפריע, תוכל גם להנות מקצת הכיף עם הפרופילים שלך.

Animated GIFS in Windows Terminal

פקודות מתקדמות של Windows Terminal

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

חלוקת חלוניות עם קרנלים שונים

ה־Windows Terminal תומך במספר חלוניות. זה אומר שתוכל להפעיל ישיבות מקביליות באותו חלון טרמינל. ההתנהגות הזו אינה חדשה. אפליקציות קונסול האחרות כבר תומכות בחלוניות מזמן. הטרמינל של Windows הוא שונה מאחר שהוא תומך בפרופילים (ב־settings.json), וניתן לפתוח כל ישיבה בחלון נפרד של עצמה. אפילו אם כל ישיבה היא מערכת הפעלה שונה לחלוטין כמו בשימוש ב־WSL או פרופיל רחוק (יותר על פרופילים רחוקים בקצה הבא), ניתן להציג חלון עבור כל מערכת ההפעלה.

כדי ליצור חלוקת חלוני פרופילים שונים, ב־settings.json על כל פרופיל חייב להיות את הערך המפתח שלו ב־splitPane. על ידי ציון הפרמטר profile עם השם או ה-GUID של הפרופיל של Windows Terminal, אתה יכול לפתוח כל אחד מהם לצד שני.

המאפיין split יכול להיות מוגדר כ־horizontal, vertical או auto שיבחר את האוריינטציה שמספקת את רוב המרחב על פי החלון שנבחר כרגע. בהמשך ניתן לראות דוגמה להגדרת מקשי קישור לארבעה חלונות.


// settings.json

"keybindings":
    [
        { "command": { "action": "splitPane", "split": "auto", "splitMode": "duplicate" }, "keys": "alt+d" },
        { "command": { "action": "splitPane", "split": "auto", "profile": "Windows PowerShell" }, "keys": "ctrl+alt+1" },
        { "command": { "action": "splitPane", "split": "auto", "profile": "Command Prompt" }, "keys": "ctrl+alt+2" },
				{ "command": { "action": "splitPane", "split": "auto", "profile": "a4b7092a-6825-422c-bdb8-89b9251f4d7d" }, "keys": "ctrl+alt+4" }
    ]
The Windows Terminal with 4 different profiles open in different panes. (PowerShell 7, Ubuntu 20.04, PowerShell 5.1 and Azure Cloud Shell)

התאמה אישית של אופן פתיחת Windows Terminal

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

להלן דוגמה לשליחת פרמטרים שונים בעת פתיחת הטרמינל שמשנה את התנהגותו.

Behavior changes in New Window Terminal

פרופילים מרוחקים

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

אם תסתכל בתוך פרופילים דוגמתיים נוספים עבור חלון ה-Terminal של Windows, תוכל לשים לב שישנם כמה מהם שאינם משתמשים ביישומים בפורמט .exe כלל. חלון ה-Terminal של Windows גמיש מספיק כך שאפשר אפילו להשתמש בפקודת ssh או בפקודת Enter-PsSession של PowerShell כדי ליצור פרופילים שממפה לשרתים רחוקים או למסננים אחרים. אפשר אף להשתמש ב-terraform console כדי להעלות סשן של Terraform! ניתן לראות דוגמה לכך בפרופיל למטה.

על ידי שימוש בפרמטר של commandline בקטע הפרופיל של settings.json, תוכל לפתוח כמעט כל דבר כפרופיל ייחודי של חלון ה-Terminal של Windows שאינו דורש התחברות אינטראקטיבית.

// settings.json

"profiles":
    {
        "defaults": {},
        "list":
        [
            {
                "guid": "{f74c374e-d9ce-4f53-b3f1-072e020f08a5}",
                "name": "Python REPL",
                "backgroundImage": "%USERPROFILE%\Pictures\icons\python.png",
                "commandline": "python",
                "hidden": false                
            },
            {
                "guid": "{98a15d46-813c-4d1e-badd-5a22798e73c1}",
                "name": "Test EC2 Instance",
                "backgroundImage": "%USERPROFILE%\Pictures\icons\vm.jpg",
                "commandline": "ssh -i %USERPROFILE%\demos.pem [email protected]",
                "hidden": false                
            }
        ]
    }
Renaming profiles

פתיחת REPL של Python וחיבור SSH למכונה וירטואלית של AWS באמצעות פרופילים של חלון ה-Terminal של Windows

סיכום

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

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

Source:
https://adamtheautomator.com/install-windows-terminal/