אנגליתצרפתיתספרדי

סמל OnWorks

viposix - מקוון בענן

הפעל viposix בספק אירוח בחינם של OnWorks על אובונטו מקוון, פדורה מקוון, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

זוהי הפקודה viposix שניתן להפעיל בספק האירוח החינמי של OnWorks באמצעות אחת מתחנות העבודה המקוונות המרובות שלנו, כגון Ubuntu Online, Fedora Online, אמולטור מקוון של Windows או אמולטור מקוון של MAC OS

תָכְנִית:

שֵׁם


vi — עורך תצוגה מונחה מסך (חזותי).

תַקצִיר


vi [−rR] [הפקודה] [−ת מחרוזת תיוג] [−w גודל] [פילה...]

תיאור


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

השמיים vi כלי השירות (חזותי) הוא עורך טקסט מונחה מסך. רק המצבים הפתוחים והחזותיים
של העורך מתוארים ב-POSIX.1-2008; ראה את עורך השורות ex לעריכה נוספת
היכולות המשמשות ב vi. המשתמש יכול לעבור בין הלוך ושוב vi ו ex ולהוציא לפועל
ex פקודות מבפנים vi.

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

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

מסופים מסוימים אינם כוללים את כל היכולות הדרושות כדי לתמוך במלואו vi
הַגדָרָה. כאשר לא ניתן לתמוך בפקודות אלו במסופים כאלה, מצב זה
לא יפיק הודעת שגיאה כגון ``לא פקודת עורך'' או ידווח על תחביר
שְׁגִיאָה. היישום עשוי לקבל את הפקודות ולהניב תוצאות על המסך
שהם תוצאה של ניסיון לא מוצלח לעמוד בדרישות של כרך זה של
POSIX.1-2008 או דווח על שגיאה המתארת ​​את הליקוי הקשור למסוף.

אפשרויות


השמיים vi כלי השירות יתאים לנפח הגדרות הבסיס של POSIX.1-2008, סעיף 12.2,
שירות תחביר הנחיותחוץ מזה '+' עשוי להיות מוכר כמפריד אופציות כמו
וכן '-'.

האפשרויות הבאות יתמכו:

הפקודה
ראה ex תיאור הפקודה של אוֹפְּצִיָה.

−ר ראה ex תיאור הפקודה של −ר אוֹפְּצִיָה.

ראה ex תיאור הפקודה של אוֹפְּצִיָה.

−ת מחרוזת תיוג
ראה ex תיאור הפקודה של −ת אוֹפְּצִיָה.

−w גודל ראה ex תיאור הפקודה של −w אוֹפְּצִיָה.

אופרנדים


עיין בסעיף OPERANDS של ex פקודה לתיאור של האופרנדים הנתמכים על ידי
מה היא vi פקודה.

STDIN


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

אם קריאה מהקלט הסטנדרטי מחזירה שגיאה, או אם העורך מזהה סוף-
מצב הקובץ מהקלט הסטנדרטי, הוא יהיה שווה ערך ל-SIGHUP אסינכרוני
מִקרֶה.

קלט קבצים


עיין בסעיף קבצי קלט של ex פקודה לתיאור של קבצי הקלט
נתמך על ידי vi פקודה.

הסביבה וריאציות


עיין בסעיף משתני סביבה של ex פקודה עבור משתני הסביבה כי
להשפיע על ביצוע ה vi פקודה.

אסינכרוני אירועים


עיין בסעיף אירועים אסינכרוניים של ex עבור אירועים אסינכרוניים המשפיעים על
ביצוע של vi פקודה.

STDOUT


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

ניתן להשתמש בפלט סטנדרטי לכתיבת הנחיות למשתמש, להודעות מידע,
ולכתיבת שורות מהקובץ.

STDERR


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

השגיאה הסטנדרטית תשמש רק עבור הודעות אבחון.

תפוקה קבצים


עיין בסעיף קבצי פלט של ex פקודה לתיאור של קבצי הפלט
נתמך על ידי vi פקודה.

מורחבים תיאור


אם למסוף אין את היכולות הדרושות כדי לתמוך בחלק לא מוגדר
של vi הגדרה, יישומים יתחילו בתחילה ב ex מצב או מצב פתוח.
אחרת, לאחר אתחול, vi יהיה במצב פקודה; מצב קלט טקסט יכול להיות
הוזן על ידי אחת מכמה פקודות המשמשות להוספה או שינוי של טקסט. במצב קלט טקסט,
ניתן להשתמש כדי לחזור למצב פקודה; שימושים אחרים של מתוארים בהמשך
חלק זה; לִרְאוֹת לבטל, לסיים פיקוד or קֶלֶט מצב.

אתחול in ex ו vi
לִרְאוֹת אתחול in ex ו vi לתיאור של ex ו vi אתחול עבור ה vi
תוֹעֶלֶת.

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

חיץ ראה את התיאור של חיץ בקטע תיאור מורחב של ex
תוֹעֶלֶת; לִרְאוֹת פיקוד תיאורים in ex.

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

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

שורות התקציר עבור vi פקודות ג'י, -ל, -ר,
-], %, &, ^, D, m, M, Q, u, U, ו ZZ אין לספור כאופציונלי
טַעֲנָה. ללא קשר, לא תהיה זו טעות לציין א לספור לאלה
פקודות וכל שצוין לספור יתעלמו.

תנועה ארגומנט עוקב אופציונלי המשמש את !, <, >, c, d, ו y פקודות, כלומר
משמש לציון אזור הטקסט שיושפע מהפקודה. ה
תנועה יכולה להיות אחד מתווי הפקודה שחוזרים על עצמם או אחד מכמה
אַחֵר vi פקודות (מופיעות בטבלה הבאה). כל אחת מהפקודות הרלוונטיות
מציין את אזור הטקסט המותאם על ידי חזרה על הפקודה; כל פקודה כי
יכול לשמש כפקודת תנועה המציינת את אזור הטקסט שהוא משפיע.

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

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

הפקודות הבאות יהיו פקודות תנועת סמן חוקיות:

( - j H
) $ k L
[[ % l M
]] _ n N
{ ; t T
} ? w W
^ b B
+ e E
| f F
/ h G

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

הסמלים הבאים משמשים בסעיף זה כדי לציין מיקומים במאגר העריכה:

נוֹכְחִי אופי
התו שמסומן כעת על ידי הסמן.

סוף of a קו
הנקודה הממוקמת בין האחרון הלא- (אם יש) והסיום
של קו. עבור שורה ריקה, מיקום זה עולה בקנה אחד עם ההתחלה
של הקו.

סוף of מה היא עריכה חיץ
המיקום המתאים לסוף השורה האחרונה במאגר העריכה.

הסמלים הבאים משמשים בסעיף זה כדי לציין פעולות פקודה:

מילה גדולה במקום POSIX, vi יכיר ארבעה סוגים של מילים גדולות:

1. רצף מקסימלי של אי- תווים לפנים ואחריהם
תווים או התחלה או סוף של שורה או מאגר העריכה

2. שורה ריקה אחת או יותר ברצף

3. התו הראשון במאגר העריכה

4. הלא- במאגר העריכה

מילה במקום POSIX, vi יזהה חמישה סוגי מילים:

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

-- תווים מלבד אותיות, ספרות או קווים תחתונים

-- ההתחלה או הסוף של שורה

-- ההתחלה או הסוף של מאגר העריכה

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

-- אות, ספרה, קו תחתון

-- דמויות

-- ההתחלה או הסוף של שורה

-- ההתחלה או הסוף של מאגר העריכה

3. שורה ריקה אחת או יותר ברצף

4. התו הראשון במאגר העריכה

5. הלא- במאגר העריכה

סעיף גבול
A סעיף גבול הוא אחד מהבאים:

1. שורה שהדמות הראשונה שלה היא א

2. שורה שהדמות הראשונה שלה היא סד פתוח מתולתל ('{')

3. שורה שהדמות הראשונה שלה היא א ואשר השני והשלישי שלו
דמויות תואמות לזוג של שני תווים ב- סעיפים אפשרות עריכה (ראה ed)

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

5. השורה הראשונה של מאגר העריכה

6. השורה האחרונה של מאגר העריכה אם השורה האחרונה של מאגר העריכה ריקה
או אם זה א ]] or } פקודה; אחרת, הלא האחרון של האחרון
שורה של מאגר העריכה

בפסקה גבול
A בפסקה גבול הוא אחד מהבאים:

1. גבול מקטע

2. שורה שהדמות הראשונה שלה היא א ואשר השני והשלישי שלו
דמויות תואמות לזוג של שני תווים ב- סעיפים אפשרות עריכה (ראה ed)

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

4. שורה ריקה אחת או יותר ברצף

זכור search כיוון
ראה את התיאור של זכור search כיוון in ed.

משפט גבול
A משפט גבול הוא אחד מהבאים:

1. גבול פסקה

2. הראשון שאינו שמתרחש לאחר גבול פסקה

3. הראשון שאינו שמתרחש לאחר א ('.'),
('!'), או ('?'), ואחריו שניים תווים או סוף
של קו; כל מספר של סוגריים סוגרים (')'), סוגריים סוגרים (']'),
ציטוט כפול ('"'), או ציטוט בודד ( ) יכולות להופיע תווים
בין סימן הפיסוק לשניים תווים או סוף שורה

בהמשך התיאור של ה vi כלי השירות, המונח ``קו חיץ'' מתייחס אליו
שורה במאגר העריכה והמונח ``שורת תצוגה'' מתייחס לשורה או לשורות ב-
מסך תצוגה המשמש להצגת קו חיץ אחד. המונח ``קו נוכחי'' מתייחס לא
'קו מאגר'' ספציפי.

אם יש קווי תצוגה על המסך שאין להם קווי חיץ תואמים
מכיוון שהם תואמים לשורות שיהיו לאחר סוף הקובץ, הם יהיו
מוצג כסינגל ('~') תו, בתוספת התווית המסתיימת .

השורה האחרונה של המסך תשמש לדיווח על שגיאות או להצגת מידע
הודעות. זה ישמש גם להצגת הקלט עבור ``פקודות מכוונות קו'' (/, ?,
:, ו !). כאשר מבוצעת פקודה מכוונת קו, העורך יזין קלט טקסט
במצב בשורה האחרונה על המסך, תוך שימוש בתווי הפקודה המתאימים כהנחיה
דמויות. (במקרה של ! הפקודה, התנועה הקשורה תיכנס על ידי
משתמש לפני שהעורך נכנס למצב קלט טקסט.) השורה שהזין המשתמש תהיה
הסתיים על ידי א , לא- -V-נמלט , או שלא נמלט
. זה לא מצוין אם יותר תווים מאשר דורשים רוחב תצוגה מינוס עמודה אחת
ניתן להזין מספר עמודות מסך.

אם מבוצעת פקודה כלשהי שמחליפה חלק מהמסך שאינו האחרון
קו המסך (לדוגמה, ה ex לְהַשְׁעוֹת or ! פקודות), מלבד ה ex פָּגָז
הפקודה, המשתמש יתבקש להזין תו לפני רענון המסך
הפעלת העריכה נמשכה.

התווים יתפסו את מספר העמודות על המסך שנקבע על ידי tabstop עריכה
אפשרות (ראה ed), אלא אם יש פחות ממספר העמודות הזה לפני התצוגה
שוליים שיגרמו לקיפול הקו המוצג; במקרה זה, הם ייקחו רק
להגדיל את מספר העמודות עד לגבול זה.

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

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

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

במצב חזותי, אם שורה ממאגר העריכה (חוץ מהשורה הנוכחית) לא עושה זאת
מתאים לחלוטין לקווים בתחתית התצוגה הזמינים עבורו
מצגת, העורך רשאי לבחור שלא להציג אף חלק מהשורה. השורות של
התצוגה שאינה מכילה טקסט ממאגר העריכה מסיבה זו תהיה כל אחת
מורכב מסינגל '@' אופי.

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

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

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

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

2. אם התו שחלק ממנו מוצג בעמודת שורת התצוגה
שצוין בעמודת סמן התצוגה דורש יותר משורת תצוגה אחת
טור:

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

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

העמודה הנוכחית לא תשתנה על ידי התאמות אלו בעמודת סמן התצוגה.

אם מתרחשת שגיאה במהלך הניתוח או הביצוע של א vi פקודה:

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

* אלא אם צוין אחרת בקטעי הפקודה הבאים, זה לא מצוין
האם תוצג הודעת מידע.

* כל הוכנס חלקית vi הפקודה תימחק.

* אם ה vi פקודה נבעה מא מַפָּה הרחבה, כל הדמויות מזה מַפָּה
הרחבה תימחק, אלא אם צוין אחרת על ידי מַפָּה פקודה (ראה
ed).

* אם ה vi הפקודה נבעה מביצוע של מאגר, לא נגרמו פקודות נוספות
על ידי ביצוע החיץ יבוצע.

דף אחורה
תַקצִיר:
[לספור]

אם במצב פתוח, ה פקודת ‐B תתנהג באופן זהה ל- z פקודה.
אחרת, אם השורה הנוכחית היא השורה הראשונה של מאגר העריכה, זו תהיה שגיאה.

אם חלון אפשרות העריכה היא פחות מ-3, הצג מסך שבו השורה האחרונה של
התצוגה תהיה חלק מ:

(נוֹכְחִי ראשון קו) -1

אחרת, הצג מסך שבו השורה הראשונה של התצוגה תהיה חלק מה:

(נוֹכְחִי ראשון קו) - לספור x ((אפשרות עריכת חלון) -2)

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

נוֹכְחִי קו: אם לא נשארו קווים מהתצוגה הקודמת על המסך, הגדר את האחרון
קו התצוגה; אחרת, הגדר ל(קו − מספר השורות החדשות המוצגות על זה
מָסָך).

נוֹכְחִי סקירה: מוגדר לא- .

גְלִילָה קדימה
תַקצִיר:
[לספור]

אם השורה הנוכחית היא השורה האחרונה של מאגר העריכה, זו תהיה שגיאה.

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

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

נוֹכְחִי קו: אם השורה הנוכחית + לספור עבר את השורה האחרונה של מאגר העריכה, מוגדר ל
השורה האחרונה של מאגר העריכה; אחרת, הגדר לשורה הנוכחית + לספור.

נוֹכְחִי סקירה: מוגדר לא- .

גְלִילָה קדימה by קו
תַקצִיר:
[לספור]

הצג את שורות ספירת השורות לאחר השורה האחרונה המוצגת כעת.

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

נוֹכְחִי קו: ללא שינוי אם התו הנוכחי הקודם מוצג; אחרת, הגדר ל
השורה הראשונה מוצגת.

נוֹכְחִי סקירה: ללא שינוי.

דף קדימה
תַקצִיר:
[לספור]

אם במצב פתוח, ה פקודת ‐F תתנהג באופן זהה ל- z פקודה.
אחרת, אם השורה הנוכחית היא השורה האחרונה של מאגר העריכה, זו תהיה שגיאה.

אם חלון אפשרות העריכה היא פחות מ-3, הצג מסך שבו השורה הראשונה של
התצוגה תהיה חלק מ:

(נוֹכְחִי אחרון קו) +1

אחרת, הצג מסך שבו השורה הראשונה של התצוגה תהיה חלק מה:

(נוֹכְחִי ראשון קו) + לספור x ((אפשרות עריכת חלון) -2)

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

נוֹכְחִי קו: אם לא נשארו קווים מהתצוגה הקודמת על המסך, הגדר לראשון
קו התצוגה; אחרת, הגדר ל(קו + מספר השורות החדשות המוצגות על זה
מָסָך).

נוֹכְחִי סקירה: מוגדר לא- .

לְהַצִיג מֵידָע
תַקצִיר:
-G

פקודה זו תהיה שווה ערך ל- ex פילה פקודה.

להזיז סמן אחורה
תַקצִיר:
[לספור]
[לספור] h
הנוכחי למחוק דמות (ראה stty)

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

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יהיה מהתו שלפני סמן ההתחלה ועד ו
כולל לספורהתו לפני סמן ההתחלה.

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: מכוון ל (סקירה − מספר העמודות שתפוסות על ידי לספור תווים מסתיימים
עם העמודה הנוכחית הקודמת).

להזיז למטה
תַקצִיר:
[לספור]
[לספור] -J
[לספור] -M
[לספור]
[לספור] j
[לספור]
[לספור] +

אם יש פחות מ לספור שורות אחרי השורה הנוכחית במאגר העריכה, זה יהיה
שגיאה.

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יכלול את קו הזינוק ואת קו ההתחלה לספור - 1 שורות.

2. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: מכוון ל נוֹכְחִי קו+ לספור.

נוֹכְחִי סקירה: מוגדר לא- בשביל ה , -M, ו + פקודות;
אחרת, ללא שינוי.

נקה ו הצגה מחדש
תַקצִיר:


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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: ללא שינוי.

להזיז Up
תַקצִיר:
[לספור]
[לספור] k
[לספור] -

אם יש פחות מ לספור שורות לפני השורה הנוכחית במאגר העריכה, זה יהיה
שגיאה.

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יכלול את קו ההתחלה והקודם לספור קווים.

2. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: מכוון ל נוֹכְחִי קו - לספור.

נוֹכְחִי סקירה: מוגדר לא- בשביל ה - פקודה; אחרת, ללא שינוי.

צייר מחדש מסך
תַקצִיר:


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

לא מצוין אם שורות מסומנות עם @ כי הם לא מתאימים למסוף
התצוגה תהיה מושפעת.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: ללא שינוי.

גְלִילָה לְאָחוֹר
תַקצִיר:
[לספור] -U

אם השורה הנוכחית היא השורה הראשונה של מאגר העריכה, זו תהיה שגיאה.

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

נוֹכְחִי קו: אם לספור גדול מהקו הנוכחי, מוגדר ל-1; אחרת, הגדר ל-
קו נוכחי - לספור.

נוֹכְחִי סקירה: מוגדר לא- .

גְלִילָה לְאָחוֹר by קו
תַקצִיר:
[לספור]

הצג את הקו לספור שורות לפני השורה הראשונה המוצגת כעת.

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

נוֹכְחִי קו: ללא שינוי אם התו הנוכחי הקודם מוצג; אחרת, הגדר ל
השורה הראשונה מוצגת.

נוֹכְחִי סקירה: ללא שינוי.

ערוך מה היא מתחלף שלח
תַקצִיר:
-^

פקודה זו תהיה שווה ערך ל- ex עריכה פקודה, עם שם הנתיב החלופי כ
הטיעון שלה.

לבטל, לסיים פיקוד or קֶלֶט מצב
תַקצִיר:


אם חלקית vi פקודה (כפי שהוגדרה על ידי לפחות אחד, לא-לספור דמות) היה
נכנס, בטל את לספור ואת תו/ות הפקודה.

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

אחרת, זו תהיה טעות.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: ללא שינוי.

חיפוש ל מחרוזת תיוג
תַקצִיר:
-]

אם התו הנוכחי אינו מילה או , זו תהיה שגיאה.

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

אם התו הנוכחי הוא א :

1. דלג על הכל תווים אחרי הסמן עד סוף השורה.

2. אם מגיעים לסוף הקו, תהיה זו טעות.

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

להזיז סמן קדימה
תַקצִיר:
[לספור]
[לספור] אני (אל)

אם יש פחות מ לספור לֹא תווים אחרי הסמן על הנוכחי
קַו, לספור יותאם למספר הלא- תווים אחרי הסמן
על הקו.

אם משתמשים בו בתור פקודת תנועה:

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

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

אם אין לא- תווים אחרי התו הנוכחי בשורה הנוכחית,
זו תהיה טעות.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שמציגה חלק כלשהו של לספורהדמות
אחרי הדמות הנוכחית.

חלף טקסט עם תוצאות החל מ- פָּגָז פיקוד
תַקצִיר:
[לספור] ! תנועה פקודות מעטפת

אם פקודת התנועה היא ! פקודה חוזרת על עצמה:

1. אם מאגר העריכה ריק ולא לספור סופק, הפקודה תהיה
מקבילה של ex :לקרוא ! פקודה, עם קלט הטקסט, ולא יהיה טקסט
מועתק לכל מאגר.

2. אחרת:

א. אם יש פחות מ לספור -1 שורות אחרי השורה הנוכחית במאגר העריכה,
זו תהיה טעות.

ב. אזור הטקסט יהיה מהשורה הנוכחית ועד וכולל השורה הבאה לספור
−1 שורות.

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

כל טקסט שיועתק למאגר יהיה במצב קו.

פקודה זו תהיה שווה ערך ל- ex ! פקודה עבור השורות שצוינו.

להזיז סמן ל סוף השורה
תַקצִיר:
[לספור] $

זו תהיה שגיאה אם ​​יש פחות מ-לספור −1) קווים אחרי הקו הנוכחי ב-
ערוך מאגר.

אם משתמשים בו בתור פקודת תנועה:

1. אם לספור הוא 1:

א. זו תהיה שגיאה אם ​​השורה ריקה.

ב. אחרת, אזור הטקסט יהיה מורכב מכל התווים מההתחלה
סמן לאי האחרון האחרון בשורה, כולל, וכל טקסט שהועתק ל-a
מאגר יהיה במצב תווים.

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

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

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר ל- נוֹכְחִי קו + לספור-1.

נוֹכְחִי סקירה: העמודה הנוכחית מוגדרת לעמודת שורת התצוגה האחרונה של העמודה האחרונה
לֹא בשורה, או במיקום עמודה 1 אם השורה ריקה.

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

להזיז ל תואם אופי
תַקצִיר:
%

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

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

ההתאמה תיקבע באופן הבא, עבור סוגריים פתוחים:

1. הגדר מונה ל-1.

2. חפש קדימה עד שנמצא סוגריים או הגעה לסוף מאגר העריכה.

3. אם מגיעים לסוף מאגר העריכה, זו תהיה שגיאה.

4. אם נמצא סוגריים פתוחים, הגדל את המונה ב-1.

5. אם נמצא סוגריים קרובים, הקטינו את המונה ב-1.

6. אם המונה הוא אפס, התו הנוכחי הוא התו התואם.

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

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

אם משתמשים בו בתור פקודת תנועה:

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

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

3. אחרת, אזור הטקסט יהיה מורכב מהתו ההתחלתי להתאמה
תו, כולל, וכל טקסט שיועתק למאגר יהיו במצב תו.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לקו שבו נמצא התו התואם.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה נמצא כל חלק מהתו התואם
מוצג.

לחזור על החלפה
תַקצִיר:
&

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

לחזור ל הקודם הקשר at ההתחלה of קו
תַקצִיר:
' אופי

זו תהיה שגיאה אם ​​אין שורה במאגר העריכה המסומן על ידי אופי.

אם משתמשים בו בתור פקודת תנועה:

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

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

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לקו שאליו הסימן מתייחס.

נוֹכְחִי סקירה: מוגדר לא- .

לחזור ל הקודם הקשר
תַקצִיר:
` אופי

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

אם משתמשים בו בתור פקודת תנועה:

1. זו תהיה שגיאה אם ​​הסמן המסומן מפנה לאותו תו בעריכה
מאגר כסמן ההתחלה.

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

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

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

5. אחרת, אזור הטקסט יהיה מסמן ההתחלה (כולל), ל-
סמן מסומן (בלעדי), וכל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לקו שאליו הסימן מתייחס.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו שמפנה אליו
הסימן מוצג.

לחזור ל הקודם סעיף
תַקצִיר:
[לספור] [[

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

אם משתמשים בו בתור פקודת תנועה:

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

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

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

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לקו שבו ה- לספורהגבול הבא במאגר העריכה מתחיל.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו הראשון של ה-
לספורהגבול הבא מוצג, או מיקום עמודה 1 אם הקו ריק.

להזיז ל הַבָּא סעיף
תַקצִיר:
[לספור] ]]

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

אם משתמשים בו בתור פקודת תנועה:

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

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

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

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לקו שבו ה- לספורהגבול הקודם במאגר העריכה
מתחיל.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו הראשון של ה-
לספורהגבול הקודם מוצג, או מיקום עמודה 1 אם הקו ריק.

להזיז ל ראשון לֹא- עמדה on נוֹכְחִי קו
תַקצִיר:
^

אם משתמשים בו בתור פקודת תנועה:

1. אם לקו אין אי- לֹא תווים, או אם הסמן נמצא ב-
ראשון לא- לֹא של הקו, זו תהיה שגיאה.

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

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

4. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: מוגדר לא- .

נוֹכְחִי ו קו מעל
תַקצִיר:
[לספור] _

אם יש פחות מ לספור −1 שורות אחרי השורה הנוכחית במאגר העריכה, זה יהיה
להיות שגיאה.

אם משתמשים בו בתור פקודת תנועה:

1. אם לספור הוא פחות מ-2, אזור הטקסט יהיה השורה הנוכחית.

2. אחרת, אזור הטקסט יכלול את קו הזינוק ואת קו ההתחלה לספור -1
קווים.

3. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לקו הנוכחי + לספור -1.

נוֹכְחִי סקירה: מוגדר לא- .

להזיז חזור ל ההתחלה of משפט
תַקצִיר:
[לספור] (

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

להזיז קדימה ל ההתחלה of משפט
תַקצִיר:
[לספור] )

עברו קדימה לתחילת משפט. פקודה זו תהיה שווה ערך ל- ]]
פקודה, למעט גבולות המשפט במקום סעיף
גבולות.

להזיז חזור ל קוֹדֵם סעיף
תַקצִיר:
[לספור] {

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

להזיז קדימה ל הַבָּא סעיף
תַקצִיר:
[לספור] }

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

להזיז ל ספציפי טור עמדה
תַקצִיר:
[לספור] |

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

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

אם משתמשים בו בתור פקודת תנועה:

1. אם השורה ריקה, או תו הסמן זהה לתו על
לספורהעמודה של השורה, זו תהיה שגיאה.

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

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

4. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו שנמצא
מוצג ב- לספור עמודה של השורה מוצגת.

להפוך אופי
תַקצִיר:
[לספור] ,

אם האחרון F, f, T, או t הפקודה הייתה F, f, T, או t, פקודה זו תהיה שווה ערך ל
an f, F, t, או T פקודה, בהתאמה, עם המצוין לספור ואותו חיפוש
אופי.

אם לא היה קודם F, f, T, או t פקודה, זו תהיה שגיאה.

לחזור על
תַקצִיר:
[לספור] .

חזור על האחרון !, <, >, A, C, D, I, J, O, P, R, S, X, Y, a, c, d, i, o, p, r, s, x, y, או
~ פקודה. זו תהיה שגיאה אם ​​אף אחת מהפקודות הללו לא בוצעה. פקודות
(מלבד פקודות שנכנסות למצב קלט טקסט) המבוצעות כתוצאה מהרחבות מפה,
לא ישנה את הערך של הפקודה האחרונה שניתן לחזור עליה.

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

אם רכיב התנועה של הפקודה החוזרת הוא f, F, t, או T, הפקודה החוזרת
לא יקבע את תו החיפוש הזכור עבור ; ו , פקודות.

אם הפקודה החוזרת היא p or P, והמאגר הקשור לפקודה זו היה a
מאגר מספרי בשם עם מספר קטן מ-9, המאגר המשויך למאגר החוזר
הפקודה תוגדר כמאגר הנקרא בשם המאגר הקודם באופן לוגי
גדל על ידי 1.

אם התו החוזר הוא פקודת קלט טקסט, טקסט הקלט המשויך לזה
הפקודה חוזרת באופן מילולי:

* תווי קלט אינם מורחבים מאקרו או קיצור.

* תווי קלט אינם מתפרשים בשום דרך מיוחדת למעט זה
, , ו ‐T תתנהג כמתואר ב קֶלֶט מצב
פקודות in vi.

נוֹכְחִי קו: הגדר כמתואר עבור הפקודה החוזרת.

נוֹכְחִי סקירה: הגדר כמתואר עבור הפקודה החוזרת.

רגיל ביטוי
תַקצִיר:
/

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

אחרת, השורה תתפרש כביטוי רגולרי אחד או יותר, באופן אופציונלי
ואחריו קיזוז כתובת או א vi z פקודה.

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

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

קיזוז כתובת אופציונלית (ראה פְּנִיָה in ex) ניתן לציין אחרי הרגיל האחרון
ביטוי על ידי הכללת נגרר '/' תו לאחר הביטוי הרגולרי ו
ציון היסט הכתובת. קיזוז זה יהיה מהשורה המכילה את ההתאמה עבור
הביטוי הרגולרי האחרון שצוין. זו תהיה שגיאה אם ​​היסט הקו
ציין כתובת שורה קטנה מ-1 או יותר מהשורה האחרונה במאגר העריכה. א
הסטת כתובת של אפס תתמוך. זו תהיה שגיאה לעקוב אחר הכתובת
קיזוז עם כל תווים אחרים מאשר דמויות.

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

כיוון החיפוש הזכור יוגדר קדימה.

אם משתמשים בו בתור פקודת תנועה:

1. זו תהיה שגיאה אם ​​ההתאמה האחרונה מפנה לאותו תו בעריכה
מאגר כסמן ההתחלה.

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

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

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

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

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

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

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: אם נמצאה התאמה, הגדר לשורה התואמת האחרונה בתוספת היסט הכתובת,
אם בכלל; אחרת, ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו הראשון ב-
המחרוזת התואמת האחרונה מוצגת, אם נמצאה התאמה; אחרת, ללא שינוי.

להזיז ל ראשון אופי in קו
תַקצִיר:
0 (אֶפֶס)

עבור אל התו הראשון בשורה הנוכחית. הדמות '0' לא יהיה
מתפרשת כפקודה אם קודמת לה מיד ספרה.

אם משתמשים בו בתור פקודת תנועה:

1. אם תו הסמן הוא התו הראשון בשורה, זו תהיה שגיאה.

2. אזור הטקסט יהיה מהתו שלפני תו הסמן ועד ו
כולל הדמות הראשונה בשורה.

3. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: העמודה האחרונה שבה נמצא כל חלק מהתו הראשון בשורה
מוצג, או אם השורה ריקה, ללא שינוי.

לבצע an ex פיקוד
תַקצִיר:
:

בצע אחד או יותר ex פקודות.

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

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

נוֹכְחִי קו: כפי שצוין עבור ex פקודה.

נוֹכְחִי סקירה: כפי שצוין עבור ex פקודה.

לחזור על
תַקצִיר:
[לספור] ;

פקודה זו תהיה שווה לקודמתה F, f, T, או t פקודה, עם המצוין
לספור, ועם אותו תו חיפוש המשמש עבור האחרון F, f, T, או t פקודה. אם
לא היה קודם F, f, T, או t פקודה, זו תהיה שגיאה.

משמרת שמאל
תַקצִיר:
[לספור] < תנועה

אם פקודת התנועה היא < פקודה חוזרת על עצמה:

1. אם יש פחות מ לספור −1 שורות אחרי השורה הנוכחית במאגר העריכה, זה
תהיה טעות.

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

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

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

נוֹכְחִי סקירה: מוגדר לא- .

משמרת ימין
תַקצִיר:
[לספור] > תנועה

אם פקודת התנועה היא > פקודה חוזרת על עצמה:

1. אם יש פחות מ לספור −1 שורות אחרי השורה הנוכחית במאגר העריכה, זה
תהיה טעות.

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

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

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

נוֹכְחִי סקירה: מוגדר לא- .

לסרוק אחורה ל רגיל ביטוי
תַקצִיר:
?

סרוק לאחור; ה ? הפקודה תהיה שווה ל- / פקודה (ראה רגיל
ביטוי) עם החריגים הבאים:

1. הוראת הקלט תהיה א '?'.

2. כל חיפוש יתחיל מהתו שלפני התו הראשון של האחרון
התאמה (או, אם זה החיפוש הראשון, התו לפני תו הסמן).

3. כיוון החיפוש יהיה מהסמן לכיוון תחילת מאגר העריכה,
ו לעטוף אפשרות העריכה תשפיע על האם החיפוש יעבור לסוף
ערוך מאגר וממשיך.

4. כיוון החיפוש הזכור יוגדר לאחור.

לבצע
תַקצִיר:
@חיץ

אם חיץ מוגדר כ- @, ישמש המאגר האחרון שבוצע. אם אין קודם
מאגר בוצע, זו תהיה שגיאה.

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

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

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

נוֹכְחִי קו: כפי שצוין עבור הפקודות הבודדות.

נוֹכְחִי סקירה: כפי שצוין עבור הפקודות הבודדות.

להפוך מקרה
תַקצִיר:
[לספור] ~

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

אם יש פחות מ לספור -1 תווים אחרי הסמן במאגר העריכה, לספור
יותאם למספר התווים אחרי הסמן במאגר העריכה מינוס 1.

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

נוֹכְחִי קו: הגדר לקו הכולל את (לספור−1) התו אחרי הסמן.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק של (לספור−1) הדמות
לאחר הצגת הסמן.

צרף
תַקצִיר:
[לספור] a

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

נוֹכְחִי שורה/עמודה: כפי שצוין עבור פקודות קלט הטקסט (ראה קֶלֶט מצב פקודות in
vi).

צרף at סוף השורה
תַקצִיר:
[לספור] A

פקודה זו תהיה שווה ערך ל- vi פקודה:

$ [ לספור ] a

(ראה צרף).

להזיז לְאָחוֹר ל קוֹדֵם Word
תַקצִיר:
[לספור] b

פרט לכך שמילים משמשות כמפריד במקום מילים גדולות, פקודה זו
יהיה שווה ערך ל B פקודה.

להזיז לְאָחוֹר ל קוֹדֵם Bigword
תַקצִיר:
[לספור] B

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

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יהיה מהתו הראשון של לספורהמילה הגדולה הקודמת
מתחיל עד אך לא כולל תו הסמן.

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לשורה המכילה את נוֹכְחִי סקירה.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שעליה כל חלק מהתו הראשון של ה-
לספורהמילה הגדולה הקודמת מוצגת.

שינוי
תַקצִיר:
[חיץ][לספור] c תנועה

אם פקודת התנועה היא c פקודה חוזרת על עצמה:

1. טקסט המאגר יהיה במצב קו.

2. אם יש פחות מ לספור −1 שורות אחרי השורה הנוכחית במאגר העריכה, זה
תהיה טעות.

3. אזור הטקסט יהיה מהשורה הנוכחית ועד וכולל השורה הבאה לספור -1
קווים.

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

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

אם טקסט המאגר נמצא במצב שורה:

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

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

אחרת, אם תווים מיותר משורה אחת נמצאים באזור הטקסט:

1. הטקסט יימחק.

2. כל טקסט שנותר בשורה האחרונה באזור הטקסט יצורף לראשונה
שורה באזור, והשורה האחרונה באזור תימחק.

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

אחרת:

1. אם הגליף עבור '$' קטן מהאזור, יסומן סוף האזור
עם '$'.

2. העורך יכנס למצב הזנת טקסט, ויחליף את אזור הטקסט.

נוֹכְחִי שורה/עמודה: כפי שצוין עבור פקודות קלט הטקסט (ראה קֶלֶט מצב פקודות in
vi).

שינוי ל סוף השורה
תַקצִיר:
[חיץ][לספור] C

פקודה זו תהיה שווה ערך ל- vi פקודה:

[חיץ][לספור] c$

ראה c פקודה.

מחק
תַקצִיר:
[חיץ][לספור] d תנועה

אם פקודת התנועה היא d פקודה חוזרת על עצמה:

1. טקסט המאגר יהיה במצב קו.

2. אם יש פחות מ לספור −1 שורות אחרי השורה הנוכחית במאגר העריכה, זה
תהיה טעות.

3. אזור הטקסט יהיה מהשורה הנוכחית ועד וכולל השורה הבאה לספור -1
קווים.

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

אם במצב פתוח, והשורה הנוכחית נמחקת, והשורה נשארת בתצוגה, א
'@' התו יוצג כגליף הראשון של אותה שורה.

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

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

נוֹכְחִי סקירה:

1. אם השורה ריקה, הגדר למצב עמודה 1.

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

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

ב. אחרת, הגדר לעמודה האחרונה שבה כל חלק מכל תו ב-
קו מוצג.

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

4. אחרת, הגדר לעמודה האחרונה שבה נמצא כל חלק מכל תו בשורה
מוצג.

מחק ל סוף השורה
תַקצִיר:
[חיץ] D

מחק את הטקסט מהמיקום הנוכחי עד סוף השורה הנוכחית; שווה ערך ל
מה היא vi פקודה:

[חיץ] d$

להזיז ל סוף מילה
תַקצִיר:
[לספור] e

פרט לכך שמילים משמשות במקום מילים גדולות כמפריד, פקודה זו
יהיה שווה ערך ל E פקודה.

להזיז ל End of Bigword
תַקצִיר:
[לספור] E

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

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יהיה מהתו האחרון של ה- לספורהמילה הגדולה הבאה עד ו
כולל תו הסמן.

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: הגדר לשורה המכילה את העמודה הנוכחית.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שעליה כל חלק מהתו האחרון של ה-
לספורהמילה הגדולה הבאה מוצגת.

אופי in נוֹכְחִי קו (קָדִימָה)
תַקצִיר:
[לספור] f אופי

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

אם משתמשים בו בתור פקודת תנועה:

1. טווח הטקסט יהיה מהתו הסמן ועד וכולל את לספורth
הופעת התו שצוין אחרי הסמן.

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מה- לספורההתרחשות של
התו שצוין לאחר הסמן מופיע בשורה.

אופי in נוֹכְחִי קו (לַהֲפוֹך)
תַקצִיר:
[לספור] F אופי

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

אם משתמשים בו בתור פקודת תנועה:

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

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מה- לספורההתרחשות של
התו שצוין לפני הסמן מופיע בשורה.

להזיז ל קו
תַקצִיר:
[לספור] G

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

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יהיה משורת הסמן ועד וכולל השורה שצוינה.

2. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: מכוון ל לספור if לספור צוין; אחרת, השורה האחרונה.

נוֹכְחִי סקירה: מוגדר לא- .

להזיז ל חולצות of מסך
תַקצִיר:
[לספור] H

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

אם משתמשים בו בתור פקודת תנועה:

1. אם במצב פתוח, אזור הטקסט יהיה השורה הנוכחית.

2. אחרת, אזור הטקסט יהיה מקו הזינוק ועד וכולל (את
השורה הראשונה של התצוגה + לספור -1).

3. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

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

אחרת, הוא יקבע את הקו הנוכחי ואת העמודה הנוכחית כדלקמן.

נוֹכְחִי קו: הגדר ל (השורה הראשונה של התצוגה + לספור -1).

נוֹכְחִי סקירה: מוגדר לא- .

הַבלָעָה לפני סמן
תַקצִיר:
[לספור] i

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

נוֹכְחִי שורה/עמודה: כפי שצוין עבור פקודות קלט הטקסט (ראה קֶלֶט מצב פקודות in
vi).

הַבלָעָה at ההתחלה of קו
תַקצִיר:
[לספור] I

פקודה זו תהיה שווה ערך ל- vi פקודה ^[לספור]i.

לְהִצְטַרֵף
תַקצִיר:
[לספור] J

אם השורה הנוכחית היא השורה האחרונה במאגר העריכה, זו תהיה שגיאה.

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

נוֹכְחִי קו: ללא שינוי.

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

להזיז ל תַחתִית of מסך
תַקצִיר:
[לספור] L

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

אם משתמשים בו בתור פקודת תנועה:

1. אם במצב פתוח, אזור הטקסט יהיה השורה הנוכחית.

2. אחרת, אזור הטקסט יכלול את כל השורות משורת הסמן ההתחלתית ועד
(השורה האחרונה של התצוגה −(לספור -1)).

3. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

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

2. אחרת, הוא יקבע את הקו הנוכחי ואת העמודה הנוכחית כדלקמן.

נוֹכְחִי קו: הגדר ל (השורה האחרונה של התצוגה −(לספור -1)).

נוֹכְחִי סקירה: מוגדר לא- .

סמן עמדה
תַקצִיר:
m מכתב

פקודה זו תהיה שווה ערך ל- ex סימן פקודה עם התו שצוין בתור an
ויכוח.

להזיז ל אמצע of מסך
תַקצִיר:
M

הקו האמצעי של התצוגה יחושב באופן הבא:

( חלק עליון קו of מה היא לְהַצִיג) + (((מספר of קווים מוצגת) + 1) / 2) -1

אם משתמשים בו בתור פקודת תנועה:

1. אם במצב פתוח, אזור הטקסט יהיה השורה הנוכחית.

2. אחרת, אזור הטקסט יכלול את כל השורות משורת הסמן ההתחלתית ועד
וכולל את הקו האמצעי של התצוגה.

3. כל טקסט שיועתק למאגר יהיה במצב קו.

אם לא משמש כפקודת תנועה:

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

אחרת, הוא יקבע את הקו הנוכחי ואת העמודה הנוכחית כדלקמן.

נוֹכְחִי קו: הגדר לקו האמצעי של התצוגה.

נוֹכְחִי סקירה: מוגדר לא- .

לחזור על רגיל ביטוי (קָדִימָה)
תַקצִיר:
n

אם כיוון החיפוש הזכור היה קדימה, ה n הפקודה תהיה שווה ל-
vi / פקודה ללא תווים שהוזן על ידי המשתמש. אחרת, זה יהיה שווה ערך ל
מה היא vi ? פקודה ללא תווים שהוזן על ידי המשתמש.

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

לחזור על רגיל ביטוי (לַהֲפוֹך)
תַקצִיר:
N

סרוק להתאמה הבאה של הדפוס האחרון שניתן לו / or ?, אבל בכיוון ההפוך;
זה ההפך מ n.

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

הַבלָעָה ריק קו להלן
תַקצִיר:
o

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

נוֹכְחִי שורה/עמודה: כפי שצוין עבור פקודות קלט הטקסט (ראה קֶלֶט מצב פקודות in
vi).

הַבלָעָה ריק קו מעל
תַקצִיר:
O

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

נוֹכְחִי שורה/עמודה: כפי שצוין עבור פקודות קלט הטקסט (ראה קֶלֶט מצב פקודות in
vi).

שים החל מ- בלם הבא
תַקצִיר:
[חיץ] p

אם לא חיץ מצוין, יש להשתמש במאגר ללא שם.

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

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

נוֹכְחִי קו: אם טקסט המאגר נמצא במצב שורה, הגדר את השורה לשורה +1; אחרת,
ללא שינוי.

נוֹכְחִי סקירה: אם טקסט המאגר נמצא במצב שורה:

1. אם יש לא- בשורה הראשונה של המאגר, הגדר לעמודה האחרונה ב-
שכל חלק מהלא הראשון בשורה מוצג.

2. אם אין אי- בשורה הראשונה של המאגר, הגדר לעמודה האחרונה ב-
אשר כל חלק מהלא האחרון בשורה הראשונה של המאגר הוא
מוצג.

אם טקסט המאגר נמצא במצב תו:

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

2. אחרת, אם המאגר הוא המאגר ללא שם, הגדר לעמודה האחרונה שבה יש
חלק מהתו האחרון מהמאגר מוצג.

3. אחרת, הגדר לעמודה הראשונה שממנה כל חלק מהתו הראשון
המאגר מוצג.

שים החל מ- בלם לפני
תַקצִיר:
[חיץ] P

אם לא חיץ מצוין, יש להשתמש במאגר ללא שם.

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

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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: אם טקסט המאגר נמצא במצב שורה:

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

2. אם אין אי- בשורה הראשונה של המאגר, הגדר לעמודה האחרונה ב-
אשר כל חלק מהלא האחרון בשורה הראשונה של המאגר הוא
מוצג.

אם טקסט המאגר נמצא במצב תו:

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

2. אחרת, אם המאגר הוא המאגר ללא שם, הגדר לעמודה האחרונה שבה יש
חלק מהתו האחרון מהמאגר מוצג.

3. אחרת, הגדר לעמודה הראשונה שממנה כל חלק מהתו הראשון
המאגר מוצג.

זן ex מצב
תַקצִיר:
Q

צא ממצב חזותי או פתוח והיכנס ex מצב פקודה.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: ללא שינוי.

חלף אופי
תַקצִיר:
[לספור] r אופי

החלף את לספור תווים ליד הסמן ואחריו עם התו שצוין. אם
יש פחות מ לספור לֹא תווים ליד ואחרי הסמן על השורה, זה
תהיה טעות.

אם הדמות היא ‐V, כל תו הבא מלבד ה יופשט
בעל משמעות מיוחדת ומשמש כדמות מילולית.

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

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

נוֹכְחִי קו: ללא שינוי אלא אם התו המחליף הוא a אוֹ
, במקרה זה הוא יוגדר לקו + לספור.

נוֹכְחִי סקירה: הגדר למיקום העמודה האחרונה שבה הוחלף חלק מהעמודה האחרונה
התו מוצג, או אם התו החלופי גרם ליצירת שורות חדשות,
מוגדר לא- .

חלף תווים
תַקצִיר:
R

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

נוֹכְחִי שורה/עמודה: כפי שצוין עבור פקודות קלט הטקסט (ראה קֶלֶט מצב פקודות in
vi).

תחליף אופי
תַקצִיר:
[חיץ][לספור] s

פקודה זו תהיה שווה ערך ל- vi פקודה:

[חיץ][לספור] ג

תחליף קווים
תַקצִיר:
[חיץ][לספור] S

פקודה זו תהיה שווה ערך ל- vi פקודה:

[חיץ][לספור] c_

להזיז סמן ל לפני אופי (קָדִימָה)
תַקצִיר:
[לספור] t אופי

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

אם משתמשים בו בתור פקודת תנועה:

1. אזור הטקסט יהיה מהסמן ועד אך לא כולל את לספורth
הופעת התו שצוין אחרי הסמן.

2. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו לפני ה-
לספורהמופע הרביעי של התו שצוין לאחר הופעת הסמן בשורה.

להזיז סמן ל לאחר אופי (לַהֲפוֹך)
תַקצִיר:
[לספור] T אופי

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

אם משתמשים בו בתור פקודת תנועה:

1. אם התו לפני הסמן הוא התו שצוין, זו תהיה שגיאה.

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

3. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו לאחר ה-
לספורהמופע הרביעי של התו שצוין לפני הופעת הסמן בשורה.

בטל
תַקצִיר:
u

פקודה זו תהיה שווה ערך ל- ex לבטל הפקודה פרט לכך שהשורה הנוכחית ו
העמודה הנוכחית תוגדר באופן הבא:

נוֹכְחִי קו: הגדר לשורה הראשונה שנוספה או השתנתה אם ישנה; אחרת, עברו לקו
לפני כל טקסט שנמחק אם קיים כזה; אחרת, עבור לשורה 1.

נוֹכְחִי סקירה: אם מבטלים ex פקודה, הגדר לא- הראשון .

אחרת, אם מבטלים פקודת קלט טקסט:

1. אם הפקודה הייתה א C, c, O, o, R, S, או s הפקודה, העמודה הנוכחית תוגדר
לערך שהחזיק כאשר הוזנה פקודת קלט הטקסט.

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

אחרת, אם שורה בודדת שונתה (כלומר, לא הוספה או נמחקה) על ידי u פקודה:

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

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

אחרת, הגדר לא- .

בטל נוֹכְחִי קו
תַקצִיר:
U

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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר לעמודה הראשונה בשורה שבה כל חלק מהראשון
תו בשורה מוצג.

להזיז ל ההתחלה of Word
תַקצִיר:
[לספור] w

פרט לכך שמילים משמשות כמפריד במקום מילים גדולות, פקודה זו
יהיה שווה ערך ל W פקודה.

להזיז ל ההתחלה of Bigword
תַקצִיר:
[לספור] W

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

אם משתמשים בו בתור פקודת תנועה:

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

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

3. אם יש תווים או סוף שורה שלפני ה- לספורהמילה הגדולה,
והפקודה הקשורה היא c, אזור הטקסט יהיה עד וכולל את
הדמות האחרונה לפני הדמות הקודמת תווים או סוף שורה.

4. אם יש תווים או סוף שורה שלפני המילה הגדולה, וה-
הפקודה הקשורה היא d or y, אזור הטקסט יהיה עד וכולל האחרון
לפני תחילת המילה הגדולה או סוף השורה.

5. כל טקסט שיועתק למאגר יהיה במצב תווים.

אם לא משמש כפקודת תנועה:

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

נוֹכְחִי קו: הגדר לשורה המכילה את העמודה הנוכחית.

נוֹכְחִי סקירה: הגדר לעמודה האחרונה שבה כל חלק מהתו הראשון של ה-
לספורהמילה הגדולה הבאה מוצגת.

מחק אופי at סמן
תַקצִיר:
[חיץ][לספור] x

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

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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: אם השורה ריקה, הגדר למיקום עמודה 1. אחרת, אם היו
לספור או פחות לא- תווים ליד ואחרי הסמן בשורה הנוכחית, הגדר ל
העמודה האחרונה שמציגה חלק כלשהו של הלא- של הקו. אחרת,
ללא שינוי.

מחק אופי לפני סמן
תַקצִיר:
[חיץ][לספור] X

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

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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר ל (עמודה נוכחית - רוחב התווים שנמחקו).

טִלטוּל
תַקצִיר:
[חיץ][לספור] y תנועה

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

אם פקודת התנועה היא y פקודה חוזרת על עצמה:

1. המאגר יהיה במצב קו.

2. אם יש פחות מ לספור −1 שורות אחרי השורה הנוכחית במאגר העריכה, זה
תהיה טעות.

3. אזור הטקסט יהיה מהשורה הנוכחית ועד וכולל השורה הבאה לספור -1
קווים.

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

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

נוֹכְחִי סקירה:

1. אם התנועה הייתה ממיקום הסמן הנוכחי לכיוון סוף מאגר העריכה,
ללא שינוי.

2. אחרת, אם השורה הנוכחית ריקה, הגדר למצב עמודה 1.

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

טִלטוּל נוֹכְחִי קו
תַקצִיר:
[חיץ][לספור] Y

פקודה זו תהיה שווה ערך ל- vi פקודה:

[חיץ][לספור] y_

צייר מחדש חלון
אם במצב פתוח, ה z הפקודה תכלול את התקציר:

תַקצִיר:
[לספור] z

If לספור לא צוין, הוא יקבע כברירת מחדל חלון אפשרות עריכה -1. ה z הפקודה
יהיה שווה ערך ל ex z פקודה, עם תו סוג של = וכן לספור of לספור
−2, אלא שהשורה הנוכחית והעמודה הנוכחית יוגדרו כדלקמן, וה-
חלון אפשרות העריכה לא תושפע. אם החישוב עבור לספור הטיעון היה
התוצאה היא מספר שלילי, ה לספור ויכוח ל ex z הפקודה תהיה אפס. ריק
שורה תיכתב לאחר כתיבת השורה האחרונה.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: ללא שינוי.

אם לא במצב פתוח, ה z לפקודה יהיה את התקציר הבא:

תַקצִיר:
[קו] z [לספור] אופי

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

If לספור מצוין, הערך של חלון אפשרות העריכה תוגדר ל לספור (כפי ש
המתואר ב ex חלון הפקודה), והמסך יצויר מחדש.

קו יוצב כמפורט על ידי התווים הבאים:

,
מקם את תחילת השורה בשורה הראשונה של התצוגה.

. מקם את תחילת השורה במרכז התצוגה. קו האמצע של
התצוגה תחושב כמתואר עבור M פקודה.

- הנח חלק לא מוגדר מהשורה בשורה האחרונה של התצוגה.

+ אם קו צוין, שווה ערך ל מקרה. אם קו לא צוין,
להציג מסך שבו תהיה השורה הראשונה של התצוגה (השורה האחרונה הנוכחית)
+1. אם אין שורות אחרי השורה האחרונה בתצוגה, זו תהיה שגיאה.

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

אחרת, הצג מסך שבו השורה האחרונה של התצוגה תכיל
חלק לא מוגדר של (שורה ראשונה נוכחית −1). אם החישוב הזה מביא ל-
שורה לפני תחילת מאגר העריכה, זו תהיה שגיאה.

נוֹכְחִי קו: אם קו ו '^' צוינו תו:

1. אם המסך הראשון הוצג כתוצאה מהפקודה שניסתה להציג
שורות לפני תחילת מאגר העריכה: אם המסך הראשון כבר היה
מוצג, ללא שינוי; אחרת, הגדר ל (שורה ראשונה נוכחית −1).

2. אחרת, הגדר לשורה האחרונה של התצוגה.

If קו ו '+' צוינו תווים, מוגדרים לשורה הראשונה של התצוגה.

אחרת, אם קו צוין, הוגדר ל קו.

אחרת, ללא שינוי.

נוֹכְחִי סקירה: מוגדר לא- .

יציאה
תַקצִיר:
ZZ

פקודה זו תהיה שווה ערך ל- ex שיט פקודה ללא כתובות, נגררת !, או
שם הקובץ (ראה את ex שיט פקודה).

קֶלֶט מצב פקודות in vi
במצב קלט טקסט, השורה הנוכחית תהיה מורכבת מאפס או יותר מהבאים
קטגוריות, בתוספת הסיום :

1. תווים לפני נקודת הכניסה להזנת טקסט

תווים בקטגוריה זו לא ישתנו במהלך מצב קלט טקסט.

2. כניסה אוטומטית תווים

כניסה אוטומטית תווים יוכנסו אוטומטית לכל שורה שנוצרת
במצב קלט טקסט, או כתוצאה מהזנת a אוֹ
במצב קלט טקסט, או כאפקט של הפקודה עצמה; לדוגמה, O or o
(ראה ex כניסה אוטומטית פקודה), כאילו הוזן על ידי המשתמש.

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

3. תווים להזנת טקסט

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

כל תו קלט טקסט שהוזן על ידי המשתמש (שאין לו משמעות מיוחדת)
יטופל כדלקמן:

א. תו קלט הטקסט יצורף לתו האחרון בעריכה
חיץ מהקטגוריה הראשונה, השנייה או השלישית.

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

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

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

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

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

4. מחיקת-עמודות

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

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

5. תווים העוקבים אחר אזור הטקסט עבור ה c הפקודה, או נקודת הכניסה להזנת טקסט
עבור כל הפקודות האחרות

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

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

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

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

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

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

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

5. אחרת, במיקום עמודה 1

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

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

NUL
תַקצִיר:
NUL

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


תַקצִיר:


ה לתו D לא תהיה משמעות מיוחדת במצב קלט טקסט עבור a
פקודה מכוונת קו (ראה פיקוד תיאורים in vi).

אין צורך לתמוך בפקודה זו במסופים במצב בלוק.

אם הסמן אינו עוקב אחר כניסה אוטומטית אופי, או כניסה אוטומטית אופי וא
'0' or '^' אופי:

1. אם הסמן נמצא במיקום עמודה 1, ה- תו-D יימחק
ולא ננקטו כל פעולה נוספת.

2. אחרת, ה לתו D לא תהיה משמעות מיוחדת.

אם תו הקלט האחרון היה א '0', הסמן יוזז למיקום עמודה 1.

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

אחרת, הסמן יוזז חזרה לעמודה לאחר רוחב ההזזה הקודם (ראה
מה היא ex רוחב משמרת פקודה) גבול.

כל הגליפים בעמודות בין מיקום הסמן ההתחלתי לבין (כולל) ה-
מיקום סמן הסיום יהפוך לעמודות מחיקות כמתואר ב קֶלֶט מצב פקודות in
vi.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: הגדר ל-1 אם קדמה ל-D א '^' or '0'; אחרת, הגדר
to (עמודה −1) −((עמודה −2) % רוחב משמרת).


תַקצִיר:


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

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

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

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

אחרת, זו תהיה טעות.

כל הגליפים בעמודות בין מיקום הסמן ההתחלתי לבין (כולל) ה-
מיקום סמן הסיום יהפוך לעמודות מחיקות כמתואר ב קֶלֶט מצב פקודות in
vi.

תו המחיקה הנוכחי (ראה stty) יגרום לפעולה מקבילה ל- -ה
פקודה, אלא אם התו שהוכנס קודם לכן היה a , במקרה זה
יהיה כאילו תו המחיק הנוכחי המילולי הוכנס במקום
.

נוֹכְחִי קו: ללא שינוי, אלא אם כן יימחקו שורות קלט קודם לכן, ובמקרה זה
להיות מוגדר לקו −1.

נוֹכְחִי סקירה: הגדר לעמודה הראשונה שמציגה כל חלק מהתו המגובה
למעלה מעל.


תַקצִיר:


-J
-M

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

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

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

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

כל העמודות אחרי הסמן שהן עמודות מחיקות (כמתואר ב קֶלֶט מצב פקודות
in vi) יימחק.

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

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

נוֹכְחִי קו: הגדר לקו הנוכחי +1.

נוֹכְחִי סקירה: הגדר לעמודה הראשונה שמציגה כל חלק מהתו הראשון
לאחר כניסה אוטומטית תווים בשורה החדשה, אם יש, או במיקום העמודה הראשונה
אחרי האחרון כניסה אוטומטית תו, אם יש, או מיקום עמודה 1.

-T
תַקצִיר:
-T

ה לתו T לא תהיה משמעות מיוחדת במצב קלט טקסט עבור a
פקודה מכוונת קו (ראה פיקוד תיאורים in vi).

אין צורך לתמוך בפקודה זו במסופים במצב בלוק.

התנהג כאילו המשתמש הזין את המספר המינימלי של תווים הדרושים לתנועה
הסמן קדימה למיקום העמודה לאחר הבא רוחב משמרת (ראה ex רוחב משמרת
פקודה) גבול.

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: מכוון ל סקירה + רוחב משמרת − ((עמודה −1) % רוחב משמרת).

-U
תַקצִיר:
-U

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

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

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

אחרת, זו תהיה טעות.

כל הגליפים בעמודות בין מיקום הסמן ההתחלתי לבין (כולל) ה-
מיקום סמן הסיום יהפוך לעמודות מחיקות כמתואר ב קֶלֶט מצב פקודות in
vi.

הנוכחי להרוג דמות (ראה stty) יגרום לפעולה מקבילה ל- -U
פקודה, אלא אם התו שהוכנס קודם לכן היה a , במקרה זה
יהיה כאילו הזרם המילולי להרוג התו הוכנס במקום
.

נוֹכְחִי קו: ללא שינוי, אלא אם כן יימחקו שורות קלט קודם לכן, ובמקרה זה
להיות מוגדר לקו −1.

נוֹכְחִי סקירה: הגדר לעמודה הראשונה שמציגה חלק כלשהו מהתו האחרון
גיבוי מעל.

-V
תַקצִיר:
-V


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

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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה: ללא שינוי.

-W
תַקצִיר:
-W

אם יש תווים מלבד כניסה אוטומטית תווים שהוקלטו ב-
השורה הנוכחית לפני הסמן, הסמן יזוז אחורה מעל המילה האחרונה שלפניה
הסמן (כולל כל תווים בין סוף המילה האחרונה ל-
הסמן הנוכחי); הסמן לא יעבור לפני התו הראשון לאחר סיום
כל כניסה אוטומטית תווים.

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

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

אחרת, זו תהיה טעות.

כל הגליפים בעמודות בין מיקום הסמן ההתחלתי לבין (כולל) ה-
מיקום סמן הסיום יהפוך לעמודות מחיקות כמתואר ב קֶלֶט מצב פקודות in
vi.

נוֹכְחִי קו: ללא שינוי, אלא אם כן יימחקו שורות קלט קודם לכן, ובמקרה זה
להיות מוגדר לקו −1.

נוֹכְחִי סקירה: הגדר לעמודה הראשונה שמציגה חלק כלשהו מהתו האחרון
גיבוי מעל.


תַקצִיר:


אם הקלט היה חלק מפקודה מכוונת קו:

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

2. אם הוזן, מצב קלט הטקסט יסתיים והפקודה תבוצע
המשך בביצוע עם הקלט שסופק.

אחרת, סיים את מצב קלט הטקסט וחזור למצב פקודה.

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

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

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

נוֹכְחִי קו: ללא שינוי.

נוֹכְחִי סקירה:

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

2. אחרת, אם תו מוצג בעמודה הנוכחית, ללא שינוי.

3. אחרת, הגדר למצב עמודה 1.

יְצִיאָה סטָטוּס


יוחזרו ערכי היציאה הבאים:

0 השלמה מוצלחת.

>0 אירעה שגיאה.

השלכות OF שגיאות


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

אחרת, כאשר נתקלת בשגיאה בלתי ניתנת לשחזור היא תהיה שווה ערך ל-SIGHUP
אירוע אסינכרוני.

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

השמיים הבא סעיפים יש לו אִינפוֹרמָטִיבִי.

בקשה נוהג


אין.

דוגמאות


אין.

Rationalale


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

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

מבחינה היסטורית, vi יצא מיד אם הקלט הסטנדרטי לא היה טרמינל. POSIX.1-2008
מתיר, אך אינו מחייב, התנהגות זו. תנאי סוף קובץ אינו שווה ערך
לתו של סוף הקובץ. תו נפוץ של סוף קובץ, ‐D, הוא היסטורית
a vi פקודה.

הטקסט בקטע STDOUT משקף את השימוש הפועל תצוגה בחלק הזה;
כמה יישומים של vi השתמש בפלט סטנדרטי כדי לכתוב למסוף, אבל POSIX.1-2008
לא מחייב שזה יהיה המצב.

מבחינה היסטורית, יישומים חזרו למצב פתוח אם הטרמינל לא היה מסוגל
תומך במצב חזותי מלא. POSIX.1-2008 דורש התנהגות זו. היסטורית, הפתוח
מצב של vi התנהג בערך שווה ערך למצב החזותי, למעט שרק א
שורה בודדת ממאגר העריכה (``שורת חיץ'' אחת) נשמרה עדכנית בכל עת. זֶה
השורה הוצגה בדרך כלל בשורה הבאה לאחרונה של מסוף עם כתובת סמן
(והשורה האחרונה ביצעה את הפונקציות החזותיות הרגילות שלה עבור פקודות מכוונות קו ו
הודעות). בנוסף, כמה פקודות בודדות התנהגו אחרת במצב פתוח מאשר בוויזואל
מצב. POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית.

מבחינה היסטורית, ex ו vi יישומים ציפו שהטקסט ימשיך כרגיל
סדר אירופאי/לטיני משמאל לימין, מלמעלה למטה. אין דרישה ב
POSIX.1-2008 שזה יהיה המצב. המפרט נכתב בכוונה באמצעות מילים
כמו ``לפני'', ``אחרי'', ``ראשון'' ו``אחרון'' כדי לאפשר יישומים ל
לתמוך בסדר הטקסט הטבעי של השפה.

מבחינה היסטורית, שורות מעבר לסוף מאגר העריכה סומנו בסינגל ('~')
דמויות; כלומר, אם התצוגה מבוססת אחד הייתה באורך 20 שורות, והשורה האחרונה של
הקובץ היה בשורה הראשונה, ואז שורות 2-20 יכילו רק יחיד '~' אופי.

מבחינה היסטורית, vi העורך ניסה להציג רק שורות שלמות בתחתית ה-
מסך (הוא אכן הציג קווים חלקיים בחלק העליון של המסך). אם תור היה ארוך מדי
מתאים בשלמותו בתחתית המסך, קווי המסך היכן שהקו יתאים
הוצגו הוצגו כיחידים '@' תווים, במקום להציג חלק מ
השורה. POSIX.1-2008 מתיר, אך אינו מחייב, התנהגות זו. יישומים הם
מומלץ לנסות תמיד להציג שורה שלמה בתחתית המסך כאשר
ביצוע גלילה או מיקום מסך לפי קווי חיץ.

מבחינה היסטורית, קווים מסומנים ב '@' שימשו גם כדי למזער את הפלט לטרמינלים מטומטמים
על קווים איטיים; כלומר, שינויים מקומיים בסמן עודכנו, אך שינויים בקווים
על המסך שלא היו קרובים לסמן פשוט סומנו ב- an '@' סִימָן
במקום להתעדכן כך שיתאים לטקסט הנוכחי. POSIX.1-2008 מאפשר, אך לא
דורשים תכונה זו מכיוון שהיא משמשת בתדירות נמוכה יותר ככל שהטרמינלים הופכים לחכמים יותר
והחיבורים מהירים יותר.

אתחול in ex ו vi
מבחינה היסטורית, vi תמיד הייתה שורה במאגר העריכה, גם אם מאגר העריכה היה
``ריק''. לדוגמה:

1. ex הפקודה = מבוצע ממצב ויזואלי כתב ``1'' כאשר המאגר היה ריק.

2. כותב ממצב חזותי של מאגר עריכה ריק כתב קבצים של תו בודד (א
), בזמן שכותב מ ex מצב של מאגר עריכה ריק כתב קבצים ריקים.

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

למען עקביות, POSIX.1-2008 אינו מתיר אף אחת מההתנהגויות הללו.

מבחינה היסטורית, vi לא תמיד החזיר את הטרמינל למצביו המקוריים; לדוגמה,
ICRNL שונה אם הוא לא הוגדר במקור. POSIX.1-2008 אינו מתיר זאת
התנהגות.

פיקוד תיאורים in vi
פקודות תנועה הן בין ההיבטים המסובכים ביותר של vi לתאר. עם כמה
חריגים, אזור הטקסט וסוג המאגר של פקודת תנועה ב-a vi הפקודה הם
מתואר על בסיס כל מקרה לגופו. התיאורים של אזורי טקסט ב-POSIX.1-2008 הם
לא נועד לרמוז על כיוון; כלומר, אזור כולל מקו n לקו n+5 זה
זהה לאזור מקו n+5 לקו n. זה יותר מעניין אקדמי -
תנועות לסימנים יכולות להיות בכל כיוון, ואם ה לעטוף האפשרות מוגדרת, אז יכול
תנועות לנקודות חיפוש. מבחינה היסטורית, שורות תמיד מאוחסנות במאגרים בטקסט
להזמין; כלומר מתחילת מאגר העריכה ועד סופו. POSIX.1-2008 דורש
התאמה לפרקטיקה ההיסטורית.

מבחינה היסטורית, ספירות פקודות הוחלו על כל תנועה הקשורה, והיו
כפל לכל ספירת תנועות שסופקה. לדוגמה, 2cw הוא זהה c2w, ו 2c3w
הוא זהה c6w. POSIX.1-2008 דורש התנהגות זו. מבחינה היסטורית, vi מצווה על כך
השתמש במילים גדולות, מילים, פסקאות ומשפטים כאובייקטים שטופלו בקבוצות של שורות ריקות,
או שורות שהכילו רק דמויות, באופן לא עקבי. חלק מהפקודות טופלו
אותם כישות אחת, בעוד שאחרים התייחסו לכל שורה בנפרד. לדוגמה, ה w, W,
ו B פקודות התייחסו לקבוצות של שורות ריקות כמילים בודדות; כלומר הפקודה
יעביר את הסמן לכל שורה ריקה חדשה. ה e ו E פקודות שטופלו בקבוצות ריקות
שורות כמילה אחת; כלומר, השימוש הראשון יעבור מעבר לקבוצת הקווים. ה b
הפקודה פשוט תצפצף על המשתמש, או אם תעשה מתחילת השורה כתנועה
פקודה, נכשל בדרכים בלתי צפויות. אם השורות הכילו רק (או הסתיימו ב)
דמויות, ה w ו W הפקודות פשוט יצפצפו למשתמש, ה E ו e פקודות היו
להתייחס לקבוצה כאל מילה אחת, וה B ו b פקודות יתייחסו לשורות כאל
מילים בודדות. עבור עקביות ופשטות המפרט, POSIX.1-2008 דורש
זה הכל vi פקודות מתייחסות לקבוצות של שורות ריקות או ריקות כאל ישות אחת, וזה
תנועה דרך קווים המסתיימים ב הדמויות יהיו עקביות עם תנועות אחרות.

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

מבחינה היסטורית, התווים הראשונים והאחרונים במאגר העריכה היו גבולות מילים. זֶה
תרגול היסטורי נדרש לפי POSIX.1-2008.

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

מבחינה היסטורית, קווים היו מקופלים באופן שרירותי בין עמודות של תווים כלשהם
נדרשו מיקומי עמודות מרובים על המסך, למעט כרטיסיות, אשר
הסתיים בשוליים הימניים. POSIX.1-2008 מתיר את הראשון ודורש את
אַחֲרוֹן. מימושים שאינם מפרקים קווים באופן שרירותי בין עמודות של תווים
אשר תופסים מיקומי עמודות מרובים, לא יאפשרו לסמן לנוח על עמודה
שאינו מכיל שום חלק של דמות.

ההיסטורי vi הייתה בעיה בכך שכל התנועות היו לפי קווי חיץ, לא לפי תצוגה
או קווי מסך. לרוב זה הדבר הנכון לעשות; למשל, תנועות קו בודד,
כמו j or k, אמור לעבוד על קווי חיץ. פקודות כמו dj, או j., שם . הוא שינוי
הפקודה, הגיוני רק עבור קווי חיץ. עם זאת, זה לא הדבר הנכון לעשות עבורו
תנועת מסך או פקודות גלילה כמו -D, -F, ו H. אם החלון
הוא קטן למדי, שימוש בקווי חיץ במקרים אלה יכול לגרום לתנועה אקראית לחלוטין;
לדוגמה, 1 יכול לגרום למסך שונה לחלוטין, ללא כל חפיפה.
ברור שזה לא מה שהמשתמש רצה. הבעיה חמורה עוד יותר במקרה של H,
L, ו M פקודות - כשהן ממקמות את הסמן במקום הראשון שאינו של הקו, הם
כולם עשויים להתייחס לאותו מיקום בקווים גדולים, ולא יגרמו לשום תנועה כלל.

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

יישומים של ex ו vi קיימים שאין להם את הבעיות הללו כי הרלוונטיים
פקודות ( -ב, -D, -F, -יו, -י, -ה, H,
L, ו M) לפעול על קווי תצוגה (מסך), לא (לערוך) קווי חיץ.

POSIX.1-2008 אינו מתיר התנהגות זו כברירת מחדל מכיוון שהמפתחים הסטנדרטיים
האמין שהמשתמשים ימצאו את זה מבלבל מדי. עם זאת, הפרקטיקה ההיסטורית הייתה
רָגוּעַ. לדוגמה, ex ו vi ניסיון היסטורי, אם כי לפעמים ללא הצלחה,
לעולם לא לשים חלק משורה על השורות האחרונות של המסך; לדוגמה, אם קו יהיה
לא מתאים בשלמותו, שום חלק מהשורה לא הוצג, וקווי המסך
המתאים לקו הכיל יחיד '@' דמויות. התנהגות זו מותרת, אבל
לא נדרש על ידי POSIX.1-2008, כך שניתן יהיה לתמוך בהטמעות לאורך זמן
קווים במסכים קטנים בצורה סבירה יותר מבלי לשנות את הפקודות שיכוונו ל-
תצוגה (במקום מכוון למאגר). POSIX.1-2008 מאפשר גם יישומים ל
לסרב לערוך כל מאגר עריכה המכיל שורה שלא תתאים למסך בו
שְׁלֵמוּת.

אזור התצוגה (לדוגמה, הערך של חלון אפשרות עריכה) הייתה בעבר
``גדל'', או מורחב, כדי להציג טקסט חדש כאשר נעשות תנועות מקומיות בתצוגות
כאשר מספר השורות המוצגות קטן מהמקסימום האפשרי. יש להרחבה
היסטורית הייתה הבחירה הראשונה, כאשר קו המטרה הוא פחות מהמקסימום האפשרי
ערך הרחבה משם. גלילה הייתה היסטורית הבחירה הבאה, שנעשתה כאשר
קו היעד נמצא במרחק של פחות מחצי תצוגה, וחוץ מזה, המסך צויר מחדש. שם
עם זאת, היו חריגים בכך ex פקודות בדרך כלל תמיד גרמו למסך להיות
צויר מחדש. POSIX.1-2008 אינו מציין התנהגות סטנדרטית כי ייתכן שיש התנהגות חיצונית
בעיות, כגון מהירות חיבור, מספר התווים הדרושים לציור מחדש לעומת זאת
לגלול, או יכולות מסוף שהטמעות יצטרכו להכיל.

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

פקודות שמגדירות את השורה הנוכחית, אך שאינן מגדירות את ערך הסמן הנוכחי (עבור
דוגמא, j ו k) נסה להתקרב ככל האפשר למיקום העמודה הזכור,
כך שהסמן נוטה להגביל את עצמו לעמודה אנכית כשהמשתמש מסתובב
במאגר העריכה. POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית, המחייב
שמיקום התצוגה של הסמן על קו התצוגה יותאם מהזרם
ערך העמודה לפי הצורך כדי לתמוך בהתנהגות היסטורית זו.

מבחינה היסטורית, רק שורה בודדת (ועבור חלק מהטרמינלים, קו בודד מינוס עמודה אחת) של
המשתמש יכול להזין תווים עבור הפקודות מכוונות השורה; זה, :, !, /,
or ?. POSIX.1-2008 מתיר, אך אינו מחייב, מגבלה זו.

מבחינה היסטורית, שגיאות ``רכות'' ב vi גרם למסוף להתריע, אך ללא שגיאה
ההודעה הוצגה. ככלל, לא הוצגה הודעת שגיאה עבור שגיאות ב
ביצוע פקודה ב vi, כאשר השגיאה נבעה מכך שהמשתמש ניסה לכתוב או
פעולה בלתי אפשרית, או כאשר לא נמצא אובייקט שחיפשו. דוגמאות לטעויות רכות
כלול h בשוליים השמאליים, -B או [[ בתחילת הקובץ, 2G ב
סוף הקובץ וכן הלאה. בנוסף, שגיאות כגון %, ]], }, ), N, n, f, F, t, ו T
כשלא מצאו את האובייקט המבוקש היו רכים גם כן. פחות עקבי, / ו ?
הוצגה הודעת שגיאה אם ​​הדפוס לא נמצא, /, ?, N, ו n הציג שגיאה
הודעה אם לא צוין ביטוי רגולרי קודם, ו ; לא הציג an
הודעת שגיאה אם ​​אין קודם f, F, t, או T פקודה התרחשה. כמו כן, התנהגות בזה
האזור עשוי להיות מבוסס באופן סביר על הערכת זמן ריצה של מהירות הרשת
חיבור. לבסוף, יישומים מסוימים סיפקו הודעות שגיאה עבור שגיאות רכות ב
כדי לסייע למשתמשים תמימים, בהתבסס על הערך של אפשרות עריכה מילולית. POSIX.1-2008
אינו מפרט שגיאות ספציפיות שעבורן תוצג הודעת שגיאה.
יישום צריך להתאים לפרקטיקה ההיסטורית בהיעדר סיבה חזקה
להתפצל.

דף אחורה
ה -B ו פקודות ‐F באופן היסטורי נחשבו לשגיאה לנסות לעשות זאת
עמוד לפני ההתחלה או הסוף של הקובץ, בעוד ש- -D ו -U
הפקודות פשוט הועברו לתחילת או לסוף של הקובץ. למען עקביות, POSIX.1-2008
דורש את ההתנהגות האחרונה עבור כל ארבע הפקודות. כל ארבע הפקודות עדיין מחשיבות את זה
שגיאה אם ​​השורה הנוכחית נמצאת בהתחלה ( -ב, ‐U) או סוף
( -F, -D) של הקובץ. מבחינה היסטורית, ה -B ו -פ
פקודות מדלגות על שתי שורות כדי לכלול שורות חופפות כאשר פקודה בודדת היא
נכנס. זה פחות הגיוני בנוכחות א לספור, כפי שיהיה, על ידי
הגדרה, ללא קווים חופפים. החישוב בפועל בשימוש היסטורי
יישומים של vi עורך עבור -B היה:

((נוֹכְחִי ראשון קו) - לספור x (חַלוֹן עריכה אוֹפְּצִיָה)) +2

ועבור -F היה:

((נוֹכְחִי ראשון קו) + לספור x (חַלוֹן עריכה אוֹפְּצִיָה)) -2

חישוב זה אינו עובד היטב כאשר מערבבים פקודות עם ובלי ספירות; ל
דוגמא, 3-F אינו שווה ערך לכניסה ל- פקודת -F שלוש פעמים,
ואינו הפיך על ידי הזנת ה פקודה -B שלוש פעמים. לעקביות
עם אחרים vi פקודות שלוקחות ספירות, POSIX.1-2008 דורש חישוב שונה.

גְלִילָה קדימה
יישומי 4BSD ו-System V של vi שונה בערך ההתחלתי שבו השתמש
לגלול פקודה. 4BSD בשימוש:

((חַלוֹן עריכה אוֹפְּצִיָה) + 1) /2

בעוד מערכת V השתמשה בערך של לגלול אפשרות עריכה. צוינה גרסת System V
על ידי POSIX.1-2008 מכיוון שהמפתחים הסטנדרטיים האמינו שזה יותר אינטואיטיבי ו
איפשר למשתמש שיטה להגדיר את ערך הגלילה בתחילה מבלי להגדיר גם את
מספר השורות המוצגות.

גְלִילָה קדימה by קו
מבחינה היסטורית, ה -E ו פקודות Y נחשבות לשגיאה אם ​​האחרונה
והשורות הראשונות, בהתאמה, כבר היו על המסך. POSIX.1-2008 דורש
התאמה לפרקטיקה ההיסטורית. מבחינה היסטורית, ה -E ו פקודות Y
לא הייתה השפעה במצב פתוח. לפשטות ועקביות של המפרט, POSIX.1-2008
מחייב שהם יתנהגו כרגיל, אם כי עם מסך קו בודד.

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

צייר מחדש מסך
ההיסטורי פקודת ‐R מוצגת מחדש רק כאשר יש צורך לעדכן שורות אלה
נמחקו אך לא עודכנו על המסך ושסומנו עם '@' תווים.
אין דרישה שהמסך יהיה רענון כלשהו אם אין שורות בטופס זה
מוצגים כעת. POSIX.1-2008 מאפשר למימושים להרחיב פקודה זו ל
רענון שורות במסך המסומנות עם '@' דמויות כי הן ארוכות מכדי להיות
מוצג במסגרת הנוכחית; עם זאת, השורה והעמודה הנוכחיים אינם חייבים להיות
שונה.

חיפוש ל מחרוזת תיוג
מבחינה היסטורית, הראשון שאינו ליד או אחרי הסמן היה התו הראשון, ו
כל התווים הבאים שהיו תווי מילים, עד סוף השורה, היו
כלול. לדוגמה, עם הסמן בראש או על '#' אופי ב
הטקסט "#בָּר@", התג היה "#בָּר". על הדמות 'ב' זה היה "בָּר", ועל 'א'
זה היה "אר". POSIX.1-2008 דורש התנהגות זו.

חלף טקסט עם תוצאות החל מ- פָּגָז פיקוד
מבחינה היסטורית, <, >, ו ! פקודות הנחשבות לרוב תנועות הסמן מלבד קו-
תנועות מכוונות שגיאה; למשל, הפקודה >/פו הצליח, בעוד הפקודה
>l נכשל, למרות שאזור הטקסט המתואר על ידי שתי הפקודות עשוי להיות זהה.
למען עקביות, כל שלוש הפקודות מתייחסות רק לשורות שלמות ולא בשורות חלקיות, ו
האזור מוגדר ככל שורה המכילה תו שצוין על ידי ה-
תנועה.

להזיז ל תואם אופי
תווים תואמים אחרים הושארו מוגדרי יישום על מנת לאפשר
הרחבות כגון התאמה '<' ו '>' לחיפוש HTML, או #ifdef, #else, ו #endif
לחיפוש מקור C.

לחזור על החלפה
POSIX.1-2008 דורש שכל c ו g דגלים שצוינו לפקודה התחליף הקודמת
להתעלם; אולם, ה r הדגל עדיין עשוי לחול, אם הוא נתמך על ידי היישום.

לחזור ל הקודם (הֶקשֵׁר or סָעִיף)
השמיים [[, ]], (, ), {, ו } הפקודות כולן מושפעות מ``גבולות סעיפים'', אבל ב
כמה יישומים היסטוריים לא כל הפקודות מזהות את אותו סעיף
גבולות. זהו באג, לא תכונה, ואלגוריתם ייחודי של גבול מקטע לא היה
מתואר עבור כל פקודה. מקרה מיוחד אחד שנשמר הוא המשפט
הפקודה עוברת לסוף השורה האחרונה של מאגר העריכה בעוד הפקודות האחרות עוברות
להתחלה, על מנת לשמר את הסמנטיקה המסורתית של חתך התווים של
פקודת משפט. מבחינה היסטורית, vi גבולות הקטע בתחילת העריכה ובסוף
חיץ היו הראשונים שאינם בשורה הראשונה והאחרונה של מאגר העריכה אם כזה
קיים; אחרת, התו האחרון של השורה הראשונה והאחרונה של מאגר העריכה if
אחד קיים. כדי להגביר את העקביות עם מיקומי מקטעים אחרים, זה פושט
על ידי POSIX.1-2008 לתו הראשון של השורה הראשונה והאחרונה של מאגר העריכה, או
השורה הראשונה והאחרונה של מאגר העריכה אם הן ריקות.

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

לחזור על
מבחינה היסטורית, לא ניתן היה לחזור על פקודות ממופות שאינן פקודות קלט טקסט
מה היא תקופה פקודה. POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית.

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

iab -ח -ח -הדף

יש ליידע את המשתמש על שגיאה בעת הזנת הרצף לראשונה, אך לא במהלך
חזרה על פקודה. הדמות ‐T פטור מכך במיוחד
הַגבָּלָה. יישומים היסטוריים של vi התעלמו דמויות ‐T שהיו
קלט בפקודה המקורית במהלך חזרה על הפקודה. POSIX.1-2008 אוסר זאת
התנהגות.

רגיל ביטוי
מבחינה היסטורית, פקודות לא השפיעו על השורה שנחפשה אל או ממנה אם פקודת התנועה
היה חיפוש (/, ?, N, n) והמיקום הסופי היה ההתחלה/סוף הקו. היו
כמה מקרים מיוחדים ו vi לא היה עקבי. POSIX.1-2008 אינו מתיר התנהגות זו,
לעקביות. יישומים היסטוריים הותרו אך לא היו מסוגלים לטפל בחיפושים
כפקודות תנועה שעטפו (כלומר, בשל אפשרות העריכה לעטוף) למקור
מקום. POSIX.1-2008 מחייב להתייחס להתנהגות זו כשגיאה.

מבחינה היסטורית, התחביר "/RE/0" שימש כדי לאלץ את הפקודה לחתוך טקסט במצב שורה.
POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית.

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

היסטורית, נגרר z פקודות הותרו והתעלמו אם הוזנו כחלק מ-a
חיפוש משמש כפקודה תנועה. למען עקביות ופשטות המפרט,
POSIX.1-2008 אינו מתיר התנהגות זו.

לבצע an ex פיקוד
מבחינה היסטורית, vi יישומים הגבילו את הפקודות שניתן להזין ב-
שורת הפקודה של נקודתיים (לדוגמה, לצרף ו שינוי), וכמה פקודות אחרות היו ידועות
לגרום להם להיכשל בצורה קטסטרופלית. למען עקביות, POSIX.1-2008 אינו מתיר זאת
הגבלות. בעת ביצוע an ex פקודה על ידי כניסה :, לא ניתן להזין א
כחלק מהפקודה כי זה נחשב לסוף הפקודה. א
גישה שונה היא להיכנס ex מצב פקודה באמצעות ה vi Q פקודה (ומאוחר יותר
חידוש מצב חזותי עם ex vi פקודה). ב ex מצב פקודה, השורה היחידה
הגבלה לא קיימת. אז, למשל, הדברים הבאים תקפים:

Q
s/break כאן/הפסק\
כאן/
vi

POSIX.1-2008 דורש שאם ה ex הפקודה מחליפה כל חלק במסך
להימחק על ידי רענון, vi השהות עבור דמות מהמשתמש. מבחינה היסטורית, זה
דמות יכולה להיות כל דמות; לדוגמה, קלט תו על ידי המשתמש לפני ה-
הופיעה הודעה, או אפילו תו ממופה. זה כנראה באג, אבל יישומים
שניסו להיות קפדניים יותר בכך שדרשו מהמשתמש להזין תו ספציפי,
או שהמשתמש יזין תו לאחר הצגת ההודעה, נאלצו על ידי
התמרמרות המשתמשים חזרה להתנהגות היסטורית. POSIX.1-2008 דורש התאמה ל
פרקטיקה היסטורית.

משמרת שמאל (ימין)
עיין בנימוק ל- ! ו / פקודות. מבחינה היסטורית, ה < ו > פקודות
לפעמים הזיזו את הסמן לאי-הראשון (לדוגמה אם הפקודה הייתה
חוזר או עם _ כפקודת התנועה), ולפעמים השאירה אותה ללא שינוי. POSIX.1-2008
אינו מתיר חוסר עקביות זה, ומחייב במקום זאת שהסמן יעבור תמיד ל-
ראשון לא- . מבחינה היסטורית, ה < ו > הפקודות לא תמכו בארגועי חיץ,
למרות שיישומים מסוימים מאפשרים מפרט של מאגר אופציונלי. ההתנהגות הזאת
אינו נדרש ואינו מותר על-ידי POSIX.1-2008.

לבצע
מבחינה היסטורית, מאגרים יכולים להפעיל מאגרים אחרים, ולולאות, אינסופיות ואחרות, היו
אפשרי. POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית. ה *חיץ תחביר של
ex אינו נדרש ב vi, כי זה לא פרקטיקה היסטורית והיה בשימוש בחלק
vi יישומים לתמיכה בשפות סקריפטים נוספות.

להפוך מקרה
מבחינה היסטורית, ~ הפקודה התעלמה מכל הקשור לספור, ופעל רק על הדמויות
בקו הנוכחי. לעקביות עם אחרים vi פקודות, POSIX.1-2008 דורש כי an
המשויך לספור לפעול על הבא לספור תווים, ושהפקודה עוברת לעוקבת
קווים אם מתחייב על ידי לספור, כדי לאפשר לשנות פיסות טקסט גדולות ב-a
בצורה יעילה למדי. יש קיים vi יישומים הדורשים באופן אופציונלי א
פקודת תנועה קשורה עבור ~ פקודה. מימושים התומכים בפונקציונליות זו
מעודדים לבסס את זה על טילדדופ אפשרות לערוך ולטפל באזורי הטקסט ו
מיקום הסמן באופן זהה ל- יאנק פקודה.

צרף
מבחינה היסטורית, לספורs שצוין ל A, a, I, ו i הפקודות חזרו על הקלט של
שורה ראשונה לספור פעמים, ולא חזר על השורות הבאות של טקסט הקלט.
POSIX.1-2008 מחייב לחזור על כל קלט הטקסט לספור פעמים.

להזיז לְאָחוֹר ל קוֹדֵם Word
מבחינה היסטורית, vi התבלבל אם פקודות מילים שימשו כפקודות תנועה בריק
קבצים. POSIX.1-2008 דורש שזו תהיה שגיאה. יישומים היסטוריים של vi היה
מספר רב של באגים בפקודות המילה תנועה, והן השתנו מאוד בהתנהגות ב
נוכחותן של שורות ריקות, ``מילים'' המורכבות מתו אחד, ושורות המכילות
רק דמויות. לעקביות ופשטות המפרט, POSIX.1-2008
אינו מאפשר התנהגות זו.

שינוי ל סוף השורה
כמה יישומים היסטוריים של C הפקודה לא התנהגה כפי שתואר על ידי
POSIX.1-2008 כאשר $ המפתח סומנו מחדש מכיוון שהם יושמו על ידי לחיצה על $
מקש על תור הקלט ומעבד אותו מחדש. POSIX.1-2008 אינו מתיר התנהגות זו.
מבחינה היסטורית, C, S, ו s הפקודות לא העתיקו טקסט שהוחלף למספר
חוצצים. למען עקביות ופשטות המפרט, POSIX.1-2008 מחייב אותם
להתנהג כמו כל אחד מהם c פקודות מכל הבחינות.

מחק
היסטורית, שורות במצב פתוח שנמחקו גוללו למעלה, ו-an @ גליף
כתוב מעל תחילת השורה. במקרה של מסופים שאינם מסוגלים ל
תנועות הסמן הנחוצות, העורך מחק את השורה שנמחקה מהמסך. POSIX.1-2008
דורש התאמה לפרקטיקה ההיסטורית; כלומר, אם הטרמינל אינו יכול להציג את
'@' אופי, הקו לא יכול להישאר על המסך.

מחק ל סוף השורה
כמה יישומים היסטוריים של D הפקודה לא התנהגה כפי שתואר על ידי
POSIX.1-2008 כאשר $ המפתח סומנו מחדש מכיוון שהם יושמו על ידי לחיצה על $
מקש על תור הקלט ומעבד אותו מחדש. POSIX.1-2008 אינו מתיר התנהגות זו.

לְהִצְטַרֵף
מוזרות היסטורית של vi זה הפקודות J, 1J, ו 2J כולם שוות ערך.
POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית. ה vi J הפקודה צוינה
בתנאי ה ex להצטרף פקודה עם an ex הפקודה לספור ערך. תיקון הכתובת עבור
a לספור שמעבר לסוף מאגר העריכה הכרחי להתאמה היסטורית
לשניהם ex ו vi.

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

לחזור על רגיל ביטוי (קָדִימָה ו לַהֲפוֹך)
מבחינה היסטורית, N ו n לא ניתן היה להשתמש בפקודות כרכיבי תנועה עבור c
פקודה. למעט ה cN פקודה, שעבדה אם החיפוש חצה קו
גבול, אזור הטקסט ימחק, והמשתמש לא יהיה בקלט טקסט
מצב. למען עקביות ופשטות המפרט, POSIX.1-2008 אינו מתיר זאת
התנהגות.

הַבלָעָה ריק קו (לְהַלָן ו מֵעַל)
היסטורית, נחשב ל O ו o פקודות שימשו כמספר השורות הפיזיות אל
פתוח, אם הטרמינל היה מטומטם וה פתיחה איטית האפשרות לא הוגדרה. זה נועד
צמצם את התנועה בחיבורים איטיים וצביעה מחדש עבור מסופים מטומטמים. POSIX.1-2008
אינו מתיר התנהגות זו, ומחייב כי א לספור לפקודה הפתוחה תתנהג כמו ל
פקודות קלט טקסט אחרות. השינוי הזה בפרקטיקה ההיסטורית נעשה בשביל עקביות,
ובגלל שסופרסט של הפונקציונליות מסופק על ידי ה פתיחה איטית אפשרות עריכה.

שים החל מ- בלם (הבא ו לפני)
מבחינה היסטורית, לספורs ל p ו P התעלמו מפקודות אם המאגר היה מצב קו
מאגר, אך יושמו (בעיקר) כמתואר ב-POSIX.1-2008 אם המאגר היה
מאגר מצב תווים. מכיוון שקיימים יישומים שאין להם מגבלה זו, ו
מכיוון שהדבקת שורות מספר פעמים היא שימושית בדרך כלל, POSIX.1-2008 דורש זאת לספור
להיות נתמך עבור כולם p ו P פקודות.

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

מבחינה היסטורית, א P or p פקודה (או an ex גם פקודה מבוצעת ממצב פתוח או חזותי)
בוצע בקובץ ריק, השאיר שורה ריקה כשורה הראשונה של הקובץ. ל
עקביות ופשטות המפרט, POSIX.1-2008 אינו מתיר התנהגות זו.

חלף אופי
מבחינה היסטורית, r הפקודה לא טיפלה כראוי ב- למחוק ו מילה למחוק תווים
כטיעונים, וגם לא טיפל בקשר לספור גדול מ-1 עם a
return> argument, שעבורו הוא החליף לספור דמויות עם סינגל .
POSIX.1-2008 אינו מתיר חוסר עקביות אלה.

מבחינה היסטורית, r הפיקוד התיר את ‐V בריחה של תווים שהוזנו, כגון
כפי ש וה ; עם זאת, זה דרש שניים מובילים -V
תווים במקום אחד. POSIX.1-2008 דורש לשנות את זה כדי להתאים
פקודות קלט הטקסט האחרות של vi.

היסטורית, זו שגיאה להזין את r פקודה אם יש פחות מ לספור
תווים ליד או אחרי הסמן בשורה. אמנם סביר וחד משמעי
הארכה תהיה כדי לאפשר את r פקודה על שורות ריקות, זה ידרוש את זה גדול מדי
a לספור להיות מותאם כך שיתאים למספר התווים בסמן או אחריו
עקביות, השונה מספיק מהפרקטיקה ההיסטורית כדי להימנע ממנה.
POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית.

חלף תווים
היסטורית, אם היו כניסה אוטומטית תווים בשורה שבה R הפקודה הייתה
לרוץ, ו כניסה אוטומטית נקבע, הראשון יהיה מוטבע כהלכה ולא
התווים יוחלפו ב- . כל אחד נוסף יחליף n
דמויות, איפה n היה מספר התווים שנדרשו כדי להכניס את שאר התווים
הקו לרמת ההזחה המתאימה. התנהגות זו היא באג ואינה מותרת על ידי
POSIX.1-2008.

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

טִלטוּל
מבחינה היסטורית, יאנק הפקודה לא עברה לסוף התנועה אם התנועה הייתה בפנים
הכיוון קדימה. זה עבר לסוף התנועה אם התנועה הייתה אחורה
כיוון, למעט ה _ פקודה, או עבור ה G ו ' פקודות כאשר סוף ה
התנועה הייתה על הקו הנוכחי. זה היה מסובך עוד יותר על ידי העובדה כי עבור מספר
של פקודות תנועה, ה יאנק הפקודה הזיזה את הסמן אך לא עדכנה את המסך; ל
לדוגמה, פקודה הבאה תזיז את הסמן מסוף התנועה, אפילו
למרות שהסמן על המסך לא שיקף את תנועת הסמן עבור יאנק
פקודה. POSIX.1-2008 דורש שכל יאנק פקודות הקשורות לתנועות לאחור
הזז את הסמן לסוף התנועה לצורך עקביות, ובמיוחד, כדי לבצע '
פקודות כתנועות התואמות את דפוסי החיפוש כתנועות.

טִלטוּל נוֹכְחִי קו
כמה יישומים היסטוריים של Y הפקודה לא התנהגה כפי שתואר על ידי
POSIX.1-2008 כאשר '_' המפתח סומנו מחדש מכיוון שהם יושמו על ידי לחיצה על
'_' מקש על תור הקלט ומעבד אותו מחדש. POSIX.1-2008 אינו מתיר זאת
התנהגות.

צייר מחדש חלון
מבחינה היסטורית, z הפקודה תמיד צייר מחדש את המסך. זה מותר אך לא חובה
מאת POSIX.1-2008, בגלל השימוש התכוף ב- z פקודה בפקודות מאקרו כגון מַפָּה n nz.
עבור מיקום המסך, במקום השימוש בו לשינוי גודל המסך. הסטנדרט
מפתחים האמינו כי הרחבה או גלילה של המסך מציעה ממשק טוב יותר עבור
משתמשים. היכולת לצייר מחדש את המסך נשמרת אם גודל החלון החדש האופציונלי הוא
שצוין, וב- -ארץ פקודות ‐R.

הסמנטיקה של z^ מבלבלים במקרה הטוב. פרקטיקה היסטורית היא שהמסך לפני
המסך שהסתיים בשורה שצוינה מוצג. POSIX.1-2008 דורש
התאמה לפרקטיקה ההיסטורית.

מבחינה היסטורית, z הפקודה לא תציג שורה חלקית בחלק העליון או התחתון של
מָסָך. אם השורה החלקית בדרך כלל הייתה מוצגת בתחתית ה-
מסך, הפקודה עבדה, אבל השורה החלקית הוחלפה ב '@' דמויות. אם ה
קו חלקי בדרך כלל היה מוצג בחלק העליון של המסך, הפקודה
ייכשל. למען עקביות ופשטות המפרט, POSIX.1-2008 אינו מתיר
ההתנהגות הזאת.

מבחינה היסטורית, z פקודה עם מפרט שורה של 1 התעלמה מהפקודה. ל
עקביות ופשטות המפרט, POSIX.1-2008 אינו מתיר התנהגות זו.

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

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

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

iabcd 0C

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

iabcd 0R

היישום ההיסטורי מביא למחרוזת "bcd" נעלמת ואז בקסם
מופיע שוב כאשר תו מוזן. POSIX.1-2008 דורש את ההתנהגות הקודמת
בעת החלפת עמודות מחיקות - כלומר, החלפת תווים שכבר אינם
באופן הגיוני חלק ממאגר העריכה - וההתנהגות האחרונה אחרת.

יישומים היסטוריים של vi השליכו את -D ו תווים ‐T כאשר
הם הוכנסו במקומות שבהם פונקציונליות הפיקוד שלהם לא הייתה מתאימה.
POSIX.1-2008 דורש כי פונקציונליות T תמיד זמינה, וזה
‐D יטופל ככל מפתח אחר כאשר אינו פועל כניסה אוטומטית תווים.

NUL
כמה יישומים היסטוריים של vi הגביל את מספר התווים שהוזנו באמצעות
תו קלט NUL עד 256 בתים. POSIX.1-2008 מתיר מגבלה זו; למרות זאת,
מומלץ ליישם כדי להסיר מגבלה זו.


ראה גם נימוק לפקודת מצב הקלט . ההנחות הנסתרות ב-
פקודת ‐D (וב- vi כניסה אוטומטית המפרט באופן כללי) הוא זה
דמויות תופסות עמודה בודדת על המסך וזה תווים מורכבים
של מספר אינטגרלי של דמויות.


מימושים מותרים לשכתוב כניסה אוטומטית תווים בשורה מתי ,
, -D, ו ‐T מוזנים, או כאשר ה משמרת פקודות
משמשים, כי יישומים היסטוריים עשו זאת ומצאו צורך בכך
עשה כך. לדוגמה, א ‐D כאשר לפני הסמן יש סינגל , עם
tabstop מוגדר ל-8, ו רוחב משמרת מוגדר ל-3, יביא ל- מוחלף על ידי
כַּמָה דמויות.

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

-V
מבחינה היסטורית, vi מְשׁוּמָשׁ ^V, ללא קשר לערך של התו המילולי-הבא של ה-
מָסוֹף. POSIX.1-2008 דורש התאמה לפרקטיקה ההיסטורית.

השימושים המתוארים עבור ניתן להשיג גם עם ‐V -ש, כלומר
שימושי במסופים המשתמשים -V עבור פונקציית החץ למטה. עם זאת, רוב
שימוש ביישומים היסטוריים ‐Q עבור ה טרמיוסים תו START, כך העורך
בדרך כלל לא יקבל את -Q אלא אם כן stty איכסון מצב מוגדר כבוי. (ב
בנוסף, כמה יישומים היסטוריים של vi מוגדר במפורש איכסון מצב מופעל, כך היה
קשה למשתמש לכבות אותו.) כל אחד מתווי הפקודה המתוארים ב
ניתן להפוך את POSIX.1-2008 ללא יעיל על ידי בחירתם כ טרמיוסים דמויות שליטה,
באמצעות stty כלי שירות או שיטות אחרות המתוארות בכרך ממשקי מערכת של
POSIX.1-2008.


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

FUTURE כיוונים


אין.

השתמש ב-viposix באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

  • 1
    VBA-M (ארכיון - עכשיו ב-Github)
    VBA-M (ארכיון - עכשיו ב-Github)
    הפרויקט עבר ל
    https://github.com/visualboyadvance-m/visualboyadvance-m
    מאפיינים: יצירות לרמות שמור מדינות רבות
    מערכת, תומך ב-gba, gbc, gb, sgb,
    sgb2Tu...
    הורד את VBA-M (ארכיון - עכשיו ב-Github)
  • 2
    Stacer
    Stacer
    מייעל וניטור מערכת לינוקס
    מאגר Github:
    https://github.com/oguzhaninan/Stacer.
    קהל: משתמשי קצה/שולחן עבודה. מִשׁתַמֵשׁ
    ממשק: Qt. מתכנת La...
    הורד את סטייסר
  • 3
    orangefox
    orangefox
    מזלג של TeamWinRecoveryProject (TWRP)
    עם הרבה פונקציות נוספות, עיצוב מחדש
    ועוד תכונות: תומך בטרבל וב
    ROM ללא טרבל עדכני ליבת אוראו,
    בנוי...
    הורד את OrangeFox
  • 4
    itop - ITSM CMDB OpenSource
    itop - ITSM CMDB OpenSource
    פורטל תפעול IT: פתוח לחלוטין
    מקור, ITIL, שירות מבוסס אינטרנט
    כלי ניהול כולל מלא
    CMDB הניתן להתאמה אישית, מערכת עזרה ו
    איש מסמכים...
    הורד את itop - ITSM CMDB OpenSource
  • 5
    קלמנטינה
    קלמנטינה
    קלמנטיין היא מוזיקה מרובת פלטפורמות
    נגן ומארגן ספרייה בהשראת
    אמארוק 1.4. יש לו מהיר ו
    ממשק קל לשימוש, ומאפשר לך
    חפש ו...
    הורד את קלמנטיין
  • 6
    XISMuS
    XISMuS
    שימו לב: לעדכון מצטבר 2.4.3 יש
    שוחרר!! העדכון עובד עבור כל אחד
    גרסה קודמת של 2.xx. אם משדרגים
    מגרסה v1.xx, אנא הורד ו
    אני ...
    הורד את XISMuS
  • עוד »

פקודות לינוקס

Ad