İngilizceFransızcaİspanyolca

Ad


OnWorks favicon'u

exposix - Bulutta Çevrimiçi

Exposix'i Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü üzerinden OnWorks ücretsiz barındırma sağlayıcısında çalıştırın

Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi öykünücüsü veya MAC OS çevrimiçi öykünücüsü gibi birden çok ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen komut açıklamasıdır.

Program:

ADI


eski - metin düzenleyici

SİNOPSİS


ex [-rR] [-s|-v] [-c komuta] [-t etiket dizisi] [-w boyut] [dosya...]

TANIM


The ex yardımcı program, satır yönelimli bir metin düzenleyicisidir. Editörün diğer iki modu daha vardır—
açık ve görsel—ki burada ekran odaklı düzenleme mevcuttur. bu daha çok anlatılıyor
tarafından tamamen ex açık ve görsel komutlar ve içinde vi.

bir işlenen ise '-', sonuçlar belirtilmemiş.

Bu bölüm şu terimi kullanır: düzenleme tampon geçerli çalışma metnini açıklamak için. Özel değil
uygulama bu terimle ima edilir. Tüm düzenleme değişiklikleri düzenleme üzerinde gerçekleştirilir
arabellek ve bir düzenleyici komutu yazana kadar hiçbir değişiklik herhangi bir dosyayı etkilemeyecektir.
dosyası.

Bazı terminaller, eksiksizliği desteklemek için gerekli tüm yeteneklere sahip değildir. ex
tam ekran düzenleme komutları gibi tanım (görsel kip or açık kip). Ne zaman
bu komutlar bu tür terminallerde desteklenemez, bu durum bir
``düzenleyici komutu değil'' gibi bir hata mesajı veya bir sözdizimi hatası bildirin. bu
uygulama ya komutları kabul edebilir ve ekranda şu sonuçları verebilir:
Bu cildin gereklerini yerine getirmek için başarısız bir girişimin sonucu
POSIX.1‐2008 veya terminalle ilgili eksikliği açıklayan bir hata bildirin.

SEÇENEKLER


The ex yardımcı program, POSIX.1‐2008'in Temel Tanımlar hacmine uygun olacaktır, Bölüm 12.2,
Yarar Sözdizimi Kuralları, belirtilmemiş kullanımı hariç '-', Ve '+' olabilir
bir seçenek sınırlayıcı olarak kabul edildi ve '-'.

Aşağıdaki seçenekler desteklenecektir:

-c komuta
Yüklenen ilk düzenleme arabelleğinde yürütülecek bir başlangıç ​​komutu belirtin.
mevcut bir dosya (Genişletilmiş AÇIKLAMA bölümüne bakın). Uygulamalar
birden fazla desteklemek -c seçenek. Bu tür uygulamalarda belirtilen
komutlar, komut satırında belirtilen sırayla yürütülür.

-r Adlandırılmış dosyaları kurtarın (Genişletilmiş AÇIKLAMA bölümüne bakın). Kurtarma
bir dosyaya ilişkin bilgiler, bir düzenleyici veya sistem çökmesi sırasında kaydedilecektir (için
örneğin, editörün yakalayabileceği bir sinyal ile editör sonlandırıldığında),
veya kullandıktan sonra ex korumak Komut.

A Crash bu bağlamda, sistemin veya yardımcı programın beklenmedik bir arızasıdır.
arızalı sistemin veya yardımcı programın yeniden başlatılmasını gerektirir. Bir sistem çökmesi şu anlama gelir:
o sırada çalışan herhangi bir yardımcı program da çöküyor. Bir editör veya sistem durumunda
kilitlenme, düzenleme arabelleğindeki değişikliklerin sayısı (en son korumak
komutu) kurtarılacak belirtilmemiş.

Eğer hayırsa dosya işlenenler verilir ve -t seçenek belirtilmemiş, diğer tüm
seçenekler, ÇIKIŞ değişken ve herhangi bir .exrc dosyalar yoksayılır; bir listesi
Çağıran kullanıcıya sunulan tüm kurtarılabilir dosyalar yazılacak ve
editör başka bir işlem yapmadan normal olarak çıkacaktır.

-R set Sadece oku düzenleme seçeneği.

-s Hazırlamak ex aşağıdaki eylemleri gerçekleştirerek toplu kullanım için:

* Yazma istemlerini ve bilgilendirici (ancak tanısal olmayan) mesajları bastırın.

* Değerini görmezden gelin VADELİ ve herhangi bir uygulama varsayılan terminal türü ve
terminalin açık veya görsel modları destekleyemeyen bir tür olduğunu varsayalım;
bakın görsel komut ve açıklama vi.

* Kullanımını bastırmak ÇIKIŞ ortam değişkeni ve herhangi birinin okunması
.exrc dosya; GENİŞLETİLMİŞ AÇIKLAMA bölümüne bakın.

* Değeri yok sayarak otomatik girintiyi bastırın otomatik girinti düzenleme seçeneği.

-t etiket dizisi
Belirtilenleri içeren dosyayı düzenleyin etiket dizisi; görmek etiketler. Etiketler özelliği
ile temsil edilen -t etiket dizisi ve etiket komut isteğe bağlıdır. olacak
uygun bir şekilde uygulanmasını da sağlayan herhangi bir sistemde sağlanan etiketler;
aksi takdirde, kullanımı -t tanımsız sonuçlar üretir. Herhangi bir sistemde,
birden fazla belirtmek için bir hata -t seçeneği.

-v Görsel modda başlayın (bkz. vi).

-w boyut değerini ayarlayın pencere editör seçeneği boyut.

İŞLENENLER


Aşağıdaki işlenen desteklenecektir:

dosya Düzenlenecek bir dosyanın yol adı.

STDIN


Standart giriş, aşağıdaki bölümde açıklandığı gibi bir dizi komuttan ve giriş metninden oluşur.
GENİŞLETİLMİŞ AÇIKLAMA bölümü. Uygulama, standart girdinin her satırını şu şekilde sınırlayabilir:
{LINE_MAX} uzunluğunda.

Standart giriş bir terminal cihazı değilse, sanki -s seçenek olmuştu
belirtildi.

Standart girdiden yapılan bir okuma bir hata döndürürse veya düzenleyici bir sonlandırma algılarsa,
standart girdiden dosya koşulu, bir SIGHUP asenkron ile eşdeğer olacaktır
olay.

GİRİŞ DOSYALAR


Girdi dosyaları, metin dosyaları veya eksik olanlar dışında metin dosyaları olacak dosyalar olacaktır.
uzunluğu {LINE_MAX}−1 bayttan uzun olmayan ve NUL içermeyen son satır
karakterler. Varsayılan olarak, tamamlanmamış herhangi bir son satır, sondaki bir satıra sahipmiş gibi ele alınacaktır.
. Diğer dosya biçimlerinin düzenlenmesine isteğe bağlı olarak aşağıdakiler tarafından izin verilebilir: ex
uygulamalar.

The .exrc dosyalar ve kaynak dosyalar aşağıdakilerden oluşan metin dosyaları olacaktır. ex komutlar; görmek
GENİŞLETİLMİŞ AÇIKLAMA bölümü.

Varsayılan olarak editör, düzenlenecek dosyalardan satırları yorumlamadan okuyacaktır.
bu satırlardan herhangi birini herhangi bir editör komutu olarak.

ÇEVRE DEĞİŞKENLER


Aşağıdaki ortam değişkenleri, aşağıdakilerin yürütülmesini etkiler: ex:

ÖNE ÇIKAN HABERLER Sistem tarafından seçilen yatay ekran boyutunu geçersiz kılın. Temel Tanımlara Bakın
POSIX.1‐2008 hacmi, bölüm 8, çevre Değişkenler geçerli değerler için ve
ayarlanmadığında veya boş olduğunda sonuçlar.

ÇIKIŞ Bir liste belirleyin ex editör başlangıcında yürütülen komutlar. Bkz.
Başlatma aşamasının daha fazla ayrıntısı için GENİŞLETİLMİŞ AÇIKLAMA bölümü.

ANA SAYFA Bir editör başlangıcı için aranacak bir dizinin yol adını belirleyin.
adlı dosya .exrc; GENİŞLETİLMİŞ AÇIKLAMA bölümüne bakın.

DİL Ayarlanmamış veya ayarlanmamış uluslararasılaştırma değişkenleri için varsayılan bir değer sağlayın.
boş. (Bkz. POSIX.1‐2008'in Temel Tanımlar cildi, Bölüm 8.2,
Uluslararasılaşma Değişkenler uluslararasılaşmanın önceliği için
yerel kategorilerin değerlerini belirlemek için kullanılan değişkenler.)

LC_ALL Boş olmayan bir dize değerine ayarlanırsa, diğer tüm değerlerin değerlerini geçersiz kılın
uluslararasılaştırma değişkenleri.

LC_COLLATE
Aralıkların, denklik sınıflarının ve çoklu ortamların davranışı için yerel ayarı belirleyin.
normal ifadeler içinde karakter harmanlama öğeleri.

LC_CTYPE Metin verisi bayt dizilerinin yorumlanması için yerel ayarı belirleyin
karakter olarak (örneğin, çoklu bayt karakterlerin aksine tek bayt
argümanlar ve girdi dosyaları), karakter sınıflarının normal içindeki davranışı
ifadeler, karakterlerin büyük veya küçük harf olarak sınıflandırılması,
Harflerin büyük/küçük harf dönüşümü ve kelime sınırlarının tespiti.

LC_MESSAGES
biçimini ve içeriğini etkilemek için kullanılması gereken yerel ayarı belirleyin.
standart hataya yazılan teşhis mesajları.

HATLARI Satır sayısı olarak kullanılan, sistem tarafından seçilen dikey ekran boyutunu geçersiz kıl
görsel modda ekranlı ve dikey ekran boyutunda. Üssü Gör
POSIX.1‐2008 tanımları hacmi, bölüm 8, çevre Değişkenler geçerli için
ayarlanmadığında veya boş olduğunda değerler ve sonuçlar.

NLSPATH İşleme için mesaj kataloglarının yerini belirleyin. LC_MESSAGES.

PATH Belirtilen kabuk komutu için arama yolunu belirleyin. ex editör
komutlar !, kabuk, okumak, ve yazmak, ve açık ve görsel mod komutu !; görmek
komut arama ve yürütme açıklaması Bölüm 2.9.1.1, Komuta
Ara ve infaz.

SHELL Varsayılan değer olarak kullanmak için tercih edilen komut satırı yorumlayıcısını belirleyin.
the kabuk düzenleme seçeneği.

VADELİ Terminal tipinin adını belirleyin. Bu değişken ayarlanmamış veya boşsa, bir
belirtilmemiş varsayılan terminal tipi kullanılacaktır.

ASENKRON ETKİNLİKLER


Aşağıdaki terim bu ve sonraki bölümlerde komut ve
eşzamansız olay eylemleri:

tamamlamak yazmak
Tam yazma, düzenleme arabelleğinin tüm içeriğinin bir dosyaya yazılmasıdır.
uçbirim aygıtı dışında bir tür veya düzenleme arabelleğinin kaydedilmesine neden olan
yürüten kullanıcı tarafından ex korumak emretmek. Düzenlemenin içeriğini yazma
editör çıktığında kaldırılacak geçici bir dosyaya arabellek
tam bir yazı olarak kabul edilir.

Sinyaller alındıktan sonra aşağıdaki işlemler yapılacaktır:

SIGINT Standart giriş bir terminal cihazı değilse, ex dosyayı yazmayacak veya
komut veya metin giriş moduna döner ve sıfır olmayan bir çıkışla çıkar
durumu.

Aksi takdirde, açık veya görsel metin giriş modu komutu yürütülüyorsa, ex makbuzda
SİGINT'in makbuzu ile aynı şekilde davranacaktır. karakter.

Aksi takdirde:

1. Eğer bir ex metin giriş modu komutu, tüm giriş satırları
tamamen girilenler, düzenleme arabelleğine çözülür ve herhangi bir kısmen
girilen satır atılır.

2. Yürütülen bir komut varsa, iptal edilecek ve bir mesaj
görüntülenir. tarafından aksi belirtilmedikçe ex or vi komut açıklamaları,
yürütme komutu tarafından değiştirilen herhangi bir satırın görünüp görünmediği belirtilmemiş
değiştirilmiş veya yürütme komutu tarafından değiştirilmeden önce olduğu gibi,
tampon.

Şu anda yürütülmekte olan komut bir hareket komutuysa, ilişkili
komut iptal edilecektir.

3. Açık veya görsel komut modunda ise terminal uyarılacaktır.

4. Editör daha sonra komut moduna dönecektir.

SIGCONT Açık veya görsel modda ise ekran yenilenecektir.

SIGHUP Düzenleme arabelleği son tam yazma işleminden sonra değiştirilmişse, ex -ecek
kullanarak daha sonra kurtarılabilmesi için düzenleme arabelleğini kaydetmeyi deneyin. -r
seçeneği veya ex kurtarmak emretmek. Editör dosyayı yazmayacak veya geri dönmeyecek.
komut veya metin giriş modu için ve sıfır olmayan bir çıkış durumu ile sona erecektir.

SIGTERM SIGHUP'a bakın.

Diğer tüm sinyaller için yapılan işlem belirtilmemiştir.

STDOUT


Standart çıktı, yalnızca kullanıcıya bilgi istemleri yazmak için kullanılacaktır.
mesajlar ve dosyadan satırlar yazmak için.

STDER


Standart hata sadece teşhis mesajları için kullanılacaktır.

ÇIKTI DOSYALAR


Çıkış ex metin dosyaları olacaktır.

GENİŞLETİLMİŞ TANIM


Sadece ex Editörün modu bu bölümde açıklanmıştır. Görmek vi ek düzenleme için
mevcut yetenekler ex.

Bir hata oluştuğunda, ex mesaj yazacak. Terminal göze çarpan bir modu destekliyorsa
(ters video gibi), mesaj öne çıkma modunda yazılacaktır. eğer terminal
göze çarpan bir modu ve düzenleme seçeneğini desteklemiyor hata zilleri ayarlandı, bir uyarı eylemi
hata mesajından önce gelir.

Varsayılan olarak, ex ile gösterilecek olan komut modunda başlayacaktır. : çabuk; görmek
the istemi emretmek. Metin giriş modu tarafından girilebilir eklemek, eklemekya da değişiklik
komutlar; yazarak çıkılabilir (ve komut moduna yeniden girilebilir). (".") tek basina
bir satırın başında.

Başlatma in ex ve vi
Bu ve sonraki bölümlerde aşağıdaki semboller,
arabelleği düzenle:

alternatif ve akım yol adları
adlı iki yol adı akım ve alternatif, editör tarafından korunur. Herhangi ex
dosya adlarını argüman olarak alan komutlar, bunları aşağıdaki gibi ayarlayacaktır:

1. Eğer dosya argüman belirtilir ex düzenleme, exya da kurtarmak komutları, veya
an ex etiket komutu, düzenleme arabelleğinin içeriğini değiştirir.

a. Komut, düzenleme arabelleğinin içeriğini değiştirirse, geçerli
yol adı olarak ayarlanacaktır dosya argüman veya etiket tarafından belirtilen dosya,
ve alternatif yol adı, akımın önceki değerine ayarlanacaktır.
yol adı.

B. Aksi takdirde, alternatif yol adı şu şekilde ayarlanacaktır: dosya argüman.

2. Eğer dosya argüman belirtilir ex sonraki komut:

a. Komut, düzenleme arabelleğinin içeriğini değiştirirse, geçerli
yol adı ilk olarak ayarlanacaktır dosya argüman ve alternatif yol adı
geçerli yol adının önceki değerine ayarlanacaktır.

3. Eğer dosya argüman belirtilir ex dosya komut, geçerli yol adı
olarak ayarlanacaktır dosya argüman ve alternatif yol adı olarak ayarlanacaktır
geçerli yol adının önceki değeri.

4. Eğer dosya argüman belirtilir ex okumak ve yazmak komutlar (yani,
tarafından adlandırılan programa değil, bir dosya okuma veya yazma kabuk düzenleme
seçeneği) veya dosya argüman belirtilir ex çıkmak komut:

a. Geçerli yol adının değeri yoksa, geçerli yol adı olarak ayarlanacaktır.
the dosya argüman.

B. Aksi takdirde, alternatif yol adı şu şekilde ayarlanacaktır: dosya argüman.

Alternatif yol adı, geçerli yol adının önceki değerine ayarlanmışsa,
geçerli yol adının önceden bir değeri yoktu, o zaman alternatif yol adının
sonuç olarak değer yok.

akım hat
İmleç tarafından başvurulan düzenleme arabelleğinin satırı. Her komut açıklaması
komut yürütüldükten sonra geçerli satırı belirtir. akım hat
değer. Düzenleme arabelleği satır içermediğinde, geçerli satır sıfır olacaktır; görmek
Adresleme in ex.

akım sütun
İmleç tarafından işgal edilen geçerli görüntü satırı sütunu. (Sütunlar
1'den başlayarak numaralandırılmıştır.) Her komut açıklaması geçerli sütunu belirtir
komut yürütüldükten sonra, akım sütun değer. Bu sütun bir
ideal Editörün ömrü boyunca hatırlanan sütun. gerçek ekran
imlecin üzerinde durduğu satır sütunu, geçerli sütundan farklı olabilir;
imleç konumlandırma tartışmasına bakın Komuta açıklamaları in vi.

set için olmayan
Geçerli sütun değeri için bir açıklama, yani geçerli sütun şu şekilde olacaktır:
ilk satırın herhangi bir bölümünün görüntülendiği son görüntü satırı sütununa ayarlayın.
olmayan çizginin. Hattın özelliği yoksa olmayan karakterler,
geçerli sütun, üzerinde bulunduğu son görüntü satırı sütununa ayarlanacaktır.
son olmayanın herhangi bir bölümünü görüntüledi satırdaki karakter. çizgi ise
boşsa, mevcut sütun sütun konumu 1'e ayarlanacaktır.

Düzenleme arabelleğindeki satırların uzunluğu {LINE_MAX} bayt ile sınırlı olabilir. açık ve
görsel modda, düzenleme arabelleğindeki satırların uzunluğu,
ekrana sığacak karakterler. Düzenleme sırasında herhangi bir sınır aşılırsa, bir
hata mesajı yazılacaktır. Bir dosyadan okunan bir satır tarafından herhangi bir sınır aşılırsa,
bir hata mesajı yazılır ve düzenleme oturumu sonlandırılabilir.

Düzenleyici, bir kullanıcı komutu dışında herhangi bir nedenle çalışmayı durdurursa ve düzenleme
arabellek, son tam yazma işleminden bu yana değiştirildi, bir SIGHUP'a eşdeğer olacaktır.
asenkron olay. Sistem çökerse, bir SIGHUP asenkron ile eşdeğer olacaktır.
olay.

Başlatma sırasında (ilk dosya düzenleme arabelleğine veya herhangi bir kullanıcıya kopyalanmadan önce)
terminalden gelen komutlar işlenir) aşağıdakiler gerçekleşir:

1. Eğer ortam değişkeni ÇIKIŞ ayarlandığında, editör aşağıdakileri yürütür ex komutlar
bu değişkende bulunur.

2. Eğer ÇIKIŞ değişken ayarlanmadı ve aşağıdakilerin tümü doğru:

a. ANA SAYFA ortam değişkeni boş değil ve boş değil.

B. Dosya .exrc tarafından atıfta bulunulan dizinde ANA SAYFA Çevre değişkeni:

Bence. var

ii. Sürecin veya işlemin gerçek kullanıcı kimliğiyle aynı kullanıcı kimliğine aittir.
işlemin uygun ayrıcalıkları var

iii. Sahibinden başka kimse tarafından yazılamaz

editör yürütür ex Bu dosyada bulunan komutlar.

3. Yalnızca ve yalnızca aşağıdakilerin tümü doğruysa:

a. Geçerli dizine tarafından atıfta bulunulmaz. ANA SAYFA Çevre değişkeni.

B. içinde bir komut ÇIKIŞ ortam değişkeni veya bir komut .exrc içindeki dosyayı
tarafından atıfta bulunulan dizin ANA SAYFA ortam değişkeni düzenleyici seçeneğini belirler
exrc.

c. .exrc geçerli dizindeki dosya:

Bence. var

ii. Sürecin gerçek kullanıcı kimliğiyle aynı kullanıcı kimliğine veya aşağıdakilerden birine aittir.
bir dizi uygulama tanımlı kullanıcı kimliği

iii. Sahibinden başka kimse tarafından yazılamaz

editör yürütmeye çalışacaktır ex Bu dosyada bulunan komutlar.

Herhangi bir satırda .exrc boş satırlar olan dosyalar yok sayılır. Varsa .exrc dosya var,
ancak mülkiyet veya izin nedeniyle okunmaz, bir hata olacaktır.

Sonra ÇIKIŞ değişken ve herhangi .exrc dosyalar işlenir, tarafından belirtilen ilk dosya
kullanıcı aşağıdaki gibi düzenlenecektir:

1. Kullanıcı şunları belirtmişse -t seçeneği, etki sanki ex etiket komut
belirtilen bağımsız değişkenle girilir, ancak etiket işleme
düzenlemek için bir dosya ile sonuçlanmazsa, etki aşağıdaki 3. adımda açıklandığı gibi olacaktır.

2. Aksi takdirde, kullanıcı herhangi bir komut satırı belirtmişse dosya argümanlar, etkisi olacaktır
sanki ex düzenleme komutu, bu argümanlardan ilki ile girildi. dosya
argüman.

3. Aksi takdirde, etki sanki ex düzenleme komutu ile girildi
olarak var olmayan dosya adı dosya argüman. Bu eylemin uygulanıp uygulanmayacağı belirsizdir.
geçerli yol adını ayarlayın. Bu eylemin ayarlamadığı bir uygulamada
geçerli yol adı, geçerli yol adını kullanan herhangi bir düzenleyici komutu, bir
editor komutu, geçerli yol adını ayarlar.

Eğer -r seçenek belirtildiğinde, ilk bağımsız değişken listesindeki bir dosya veya bir
tarafından belirtilen dosya -t kurtarma bilgisi daha önce verilmişse, seçenek düzenlenir.
kaydedildiği takdirde, bu bilgiler kurtarılacak ve editör, sanki
düzenleme arabelleğinin içeriği zaten değiştirilmiş. birden fazla örneği varsa
kurtarılacak dosya, en son kaydedilen dosya kurtarılır ve
dosyanın kurtarılabilecek önceki sürümlerinin bulunduğuna dair bilgi mesajı
yazılacaktır. Bir dosya hakkında herhangi bir kurtarma bilgisi yoksa, bilgi amaçlı bir
bu amaçla mesaj yazılacak ve düzenleme her zamanki gibi devam edecektir.

Eğer -c seçenek belirtildiğinde, zaten var olan bir dosya ilk kez (bir
var olmayabilecek ancak kurtarma bilgilerinin mevcut olduğu dosya, -r
seçeneği belirtilir) düzenleme arabelleğinin içeriğini değiştirir veya başlatır, geçerli
satır, düzenleme arabelleğinin son satırına ayarlanacak, mevcut sütun
olmayan , ve ex ile belirtilen komutlar -c seçeneği yürütülür. Bunda
durumda, mevcut satır ve mevcut sütun, komut için açıklandığı gibi ayarlanmamalıdır.
düzenleme arabelleği içeriğinin değiştirilmesi veya başlatılmasıyla ilişkili. Ancak, eğer
the -t seçenek veya bir etiket komutu bu eylemle ilişkilendirilirse, -c seçenek komutları
yürütülecek ve ardından etikete hareket gerçekleştirilir.

Geçerli argüman listesi, başlangıçta kullanıcı tarafından belirtilen dosya adlarına ayarlanmalıdır.
komut satırı. Kullanıcı tarafından herhangi bir dosya adı belirtilmemişse, geçerli argüman listesi
boş olacaktır. Eğer -t seçenek belirtilmişse herhangi bir dosya adının olup olmadığı belirtilmemiş.
etiket işlemeden elde edilen sonuç, geçerli argüman listesinin başına eklenecektir. durumda
dosya adının geçerli argüman listesine bir önek olarak eklendiği yerde, mevcut argüman
liste referansı bu dosya adına ayarlanmalıdır. Dosya adının eklenmemesi durumunda
mevcut argüman listesine bir önek olarak, mevcut argüman listesi referansı
mantıksal olarak komut satırında belirtilen dosya adlarının ilkinden önce bulunmalıdır (için
örneğin, sonraki bir ex sonraki komut, komuttan ilk dosya adını düzenler
astar). Eğer -t seçenek belirtilmedi, mevcut argüman listesi referansı
komut satırındaki dosya adlarının ilki.

Adresleme in ex
adresleme ex geçerli satır ve geçerli sütunla ilgilidir; bir hattın adresi
1 tabanlı satır numarasıdır, bir sütunun adresi, sütundan 1 tabanlı sayısıdır.
satırın başlangıcı. Genel olarak, geçerli satır, bir komuttan etkilenen son satırdır.
Geçerli satır numarası, geçerli satırın adresidir. Her komut açıklamasında,
komutun geçerli satır numarası ve geçerli sütun üzerindeki etkisi açıklanır.

Adresler şu şekilde oluşturulur:

1. karakter "." (dönem) geçerli satırı adresleyecektir.

2. karakter '$' düzenleme arabelleğinin son satırını ele alacaktır.

3. Pozitif ondalık sayı n hitap edecek ndüzenleme arabelleğinin inci satırı.

4. adres "'x" işaret adı karakteriyle işaretlenmiş satırı ifade eder 'x', Hangi
taşınabilir karakter kümesinden küçük bir harf olacaktır, geri alıntı karakteri,
veya tek tırnak karakteri. İşaretlenen satır değilse bir hata olacaktır.
şu anda düzenleme arabelleğinde mevcut veya işaret ayarlanmadı. Çizgiler işaretlenebilir
ile ex işaret or k komutları veya vi m Komut.

5. Tarafından çevrelenen normal bir ifade karakterler ('/') ilk satırı ele alacaktır
geçerli satırı takip eden satırdan sonuna doğru ileriye doğru aranarak bulunur.
düzenleme arabelleği ve satırın hariç tutulduğu ilk satırda durma
sonlandırmak normal ifadeyle eşleşir. Belirtildiği gibi Düzenli İfadeler
in exile sınırlandırılmış boş bir normal ifadeden oluşan bir adres
karakterler ("//") hariç tutulan satırın bulunduğu bir sonraki satırı ele alacaktır.
sonlandırmak karşılaşılan son normal ifadeyle eşleşir. Ek olarak,
ikinci komut satırının sonunda atlanabilir. Eğer tarama düzenleme
seçeneği ayarlandığında, arama, düzenleme arabelleğinin başlangıcına sarılır ve
tüm düzenleme arabelleğinin
arandı. Normal ifade içinde, dizi "\/" harfi temsil edecek
normal ifade sınırlayıcısı yerine.

6. İçine alınmış normal bir ifade karakterler ('?') hitap edecek
ilk satır, geçerli satırdan önceki satırdan geriye doğru aranarak bulunur
düzenleme arabelleğinin başlangıcına doğru ve bunun için ilk satırda durma
sonlandırma hariç satır normal ifadeyle eşleşir. Bir adres
ile sınırlandırılmış boş bir normal ifadeden oluşan karakterler ("??")
sonlandırma hariç satırın olduğu önceki satırı ele alacaktır.
karşılaşılan son normal ifadeyle eşleşir. Ek olarak, ikinci
mark> komut satırının sonunda atlanabilir. Eğer tarama düzenleme seçeneği ayarlandı,
arama, düzenleme arabelleğinin başından sonuna kadar saracaktır.
arabelleği düzenleyin ve geçerli satıra kadar (bu satır dahil) devam edin, böylece tüm düzenleme
tampon aranır. Normal ifade içinde, dizi "\?" temsil edecek
gerçek RE sınırlayıcısı yerine.

7. Bir ('+') veya bir eksi işareti ('-') ardından bir ondalık sayı adreslenir
geçerli satır artı veya eksi sayı. A '+' or '-' arkasından ondalık sayı gelmez
sayı, mevcut satır artı veya eksi 1'i adresleyecektir.

Adresleri isteğe bağlı olarak sıfır veya daha fazla adres ofseti takip edebilir - ayrılmış.
Adres ofsetleri aşağıdaki gibi oluşturulur:

1. '+' or '-' hemen ardından bir ondalık sayı eklenir (çıkarılır)
adrese (gönderen) belirtilen satır sayısı. A '+' or '-' tarafından takip edilmedi
ondalık sayı, adrese (den) 1 ekler (çıkarır).

2. Ondalık sayı, belirtilen satır sayısını adrese ekleyecektir.

Ara adres değerinin sıfırdan küçük veya büyük olması hata olmayacaktır.
düzenleme arabelleğindeki son satırdan daha fazla. Son adres değeri için bir hata olacaktır.
düzenleme arabelleğindeki son satırdan sıfırdan küçük veya büyük olabilir.

Komutlar sıfır, bir veya iki adres alır; açıklamalarına bakın 1 adres ve 2 adres in
Komuta açıklamaları in ex. Gerekli sayıdan fazla adres sağlanırsa
sıfır adres gerektiren bir komut, bir hata olacaktır. Aksi takdirde, eğer daha fazla ise
bir komuta gerekli sayıda adres sağlanır, adresler önce belirtilir
değerlendirilecek ve ardından maksimum geçerli adres sayısı kalana kadar atılacaktır.

Adresler birbirinden bir (',') veya bir (';').
öncesinde veya sonrasında herhangi bir adres belirtilmemişse veya ayırıcı, olacak
sanki geçerli satırın adresi ayırıcıdan önce veya sonra belirtilmiş gibi. İçinde
bir durumda ayırıcı, geçerli satır (".") ilk olarak ayarlanacaktır
adres ve ancak o zaman bir sonraki adres hesaplanacaktır. Bu özellik için kullanılabilir
ileri ve geri aramalar için başlangıç ​​çizgisini belirleyin (bkz. kural 5. ve 6.).

A ('%') iki adresi girmekle eşdeğer olacaktır "1,$".

herhangi bir sınırlama adresler, adres ayırıcılar veya adres arasındaki karakterler
ofsetler atılacaktır.

Komuta çizgi ayrıştırma in ex
Bu ve sonraki bölümlerde ayrıştırma davranışını açıklamak için aşağıdaki sembol kullanılır:

kaçış Bir karakter `` olarak anılırsa -kaçtı'' veya `` -V-
kaçtı'', karakterin özel bir anlam kazandığı veya kaybettiği anlamına gelir.
sırasıyla, bir tarafından öncelenmesi nedeniyle veya -V
karakter. Aksi belirtilmedikçe, kaçan karakter atılır
o zaman ve herhangi bir amaç için daha fazla dikkate alınmayacaktır.

Komut satırı ayrıştırması aşağıdaki adımlarda yapılacaktır. Her adım için karakterler
zaten değerlendirilen dikkate alınmaz; yani, "baş karakter" ifadesi,
henüz değerlendirilmemiş bir sonraki karakter.

1. Lider karakterler atlanacaktır.

2. Lider karakterler atlanacaktır.

3. Baştaki karakter çift tırnaklı bir karakterse, en fazla ve
sonraki olmayanlar dahil -kaçtı atılacak ve herhangi bir
sonraki karakterler ayrı bir komut olarak ayrıştırılacaktır.

4. Adres olarak yorumlanabilecek baş karakterler değerlendirilecek; görmek
Adresleme in ex.

5. Lider karakterler atlanacaktır.

6. Bir sonraki karakter bir karakter veya bir :

a. Bir sonraki karakter bir ise :

ben. Eğer ex açık veya görsel moddaysa, mevcut satır sonuncuya ayarlanacaktır.
varsa adresi belirtilir.

ii. Aksi takdirde, son komut bir karakter,
hiçbir işlem yapılmayacaktır; örneğin, komut "|| " -ecek
üç değil, iki zımni komut yürütün.

iii. Aksi takdirde, adım 6.b. uygulanmalı.

B. Aksi takdirde, zımni komut baskı emretmek. Son #, p, ve l
herhangi birine belirtilen bayraklar ex komut hatırlanacak ve bunun için geçerli olacaktır
ima edilen komut. Yürütme ex numara, baskıya da liste komut ayarlayacaktır
hatırlanan bayraklar #, hiçbir şey ve l, sırasıyla, artı diğer bayraklar
yürütülmesi için belirtilen numara, baskıya da liste Komut.

If ex şu anda bir performans göstermiyor global or v komut ve adres veya sayı yok
belirtilirse, komut verilmeden önce mevcut satır 1 artırılır.
uygulanmış. Geçerli satırı artırmak, adresi geçen bir adresle sonuçlanırsa
düzenleme arabelleğindeki son satır, komut başarısız olur ve artış olmaz
olur.

C. bu veya karakter atılır ve sonraki
karakterler ayrı bir komut olarak ayrıştırılacaktır.

7. Komut adı bir sonraki karakterden oluşmalıdır (karakter değilse
alfabetik) veya sonraki karakter ve sonraki herhangi bir alfabetik karakter (eğer
karakter alfabetiktir), aşağıdaki istisnalar dışında:

a. Komut adındaki karakterlerin herhangi bir önekinden oluşan komutlar silmek,
hemen ardından herhangi bir karakter 'l', 'P', '+', '-'ya da '#' olmalı
olarak yorumlandı silmek komutu, ardından bir , ardından karakterler
ön ekinin bir parçası olmayan silmek emretmek. maksimum sayısı
karakterler komut adıyla eşleştirilecektir silmek; Örneğin, "del" -ecek
olarak muamele görmemek "de" ardından bayrak l.

B. Karakterden oluşan komutlar 'K', ardından bir karakter olabilir
bir markanın adı olarak kullanılan, arkasından bir
, ardından gelen karakter 'K'.

C. Karakterden oluşan komutlar 's', ardından olabilecek karakterler
için geçerli seçenekler olarak yorumlanmıştır. s komut, eşdeğer olacaktır s
komutu, herhangi bir desen veya değiştirme değeri olmadan, ardından bir ,
karakterlerden sonra gelen 's'.

8. Komut adı, olası komut adlarıyla eşleştirilmelidir ve bir komut
kullanıcı tarafından belirtilen karakterlerle eşleşen bir önek içeren ad,
yürütülen komut. Kullanıcı tarafından belirtilen karakterlerin olduğu komutlarda
belirsiz olabilir, yürütülen komut aşağıdaki gibi olacaktır:

┌───┬───────┬┬───┬──────┬┬───┬───────┐
aeklemek ││nsonraki ││tt
cdeğişiklik ││pbaskı ││ugeri
chdeğişiklik ││prbaskı ││ungeri
edüzenleme ││rokumak ││vv
mhareket ││reokumak ││wyazmak
maişaret ││ss ││ │ │
└───┴───────┴┴───┴──────┴┴───┴───────┘
Benzer belirsizliklere neden olan adlara sahip uygulama uzantıları kontrol edilmeyecektir.
POSIX.1‐2008 tarafından belirtilen komutlar için tüm olası eşleşmelere kadar bir eşleşme için
kontrol edildi.

9. Komut bir ! komut ise veya komut bir okumak komut ve ardından sıfır
yada daha fazla karakterler ve bir !veya komut bir yazmak komut ve ardından
bir veya daha fazla karakterler ve bir !, komutun geri kalanı hepsini içerecektir
olmayana kadar karakterler -kaçtı . bu olmalı
atılır ve sonraki karakterler ayrı olarak ayrıştırılır. ex Komut.

10. Aksi takdirde, komut bir düzenleme, exya da sonraki komut veya bir görsel komut verirken
açık veya görsel modda, komutun sonraki kısmı aşağıdaki gibi ayrıştırılacaktır:

a. Herhangi '!' komutun hemen ardından gelen karakter atlanacak ve bir parçası olacaktır.
komutun.

B. Herhangi bir lider karakterler atlanacak ve komutun bir parçası olacaktır.

C. Bir sonraki karakter bir ise '+', ilk olmayan karaktere kadar olan karakterler -kaçtı
veya olmayan -kaçtı atlanacak ve bir parçası olacak
Komut.

D. Komutun geri kalanı paragrafta belirtilen adımlarla belirlenecektir.
12

11. Aksi takdirde, komut bir global, açık, sya da v komut, sonraki kısmı
komut aşağıdaki gibi ayrıştırılır:

a. Herhangi bir lider karakterler atlanacak ve komutun bir parçası olacaktır.

B. Sonraki karakter alfasayısal değilse, çift tırnak, ,
, veya karakter:

Bence. Bir sonraki karakter, bir komut sınırlayıcı olarak kullanılacaktır.

ii. Eğer komut bir global, açıkya da v komut, ilk karaktere kadar olan karakterler
olmayan -kaçtı , veya ilk olmayan -kaçan sınırlayıcı
karakteri atlanacak ve komutun bir parçası olacaktır.

iii. Eğer komut bir s komut, ilk karaktere kadar olan karakterler
olmayan -kaçtı veya ikinci olmayan -kaçtı
sınırlayıcı karakter, atlanacak ve komutun bir parçası olacaktır.

C. Eğer komut bir global or v komut, ilk karaktere kadar olan karakterler
olmayan -kaçtı atlanacak ve komutun bir parçası olacaktır.

D. Aksi takdirde, komutun geri kalanı, aşağıda belirtilen adımlarla belirlenecektir.
paragraf 12.

12. Aksi takdirde:

a. komut bir olsaydı harita, haritayı kaldırmak, kısaltmakya da kısaltmak komut, karakterler
ilk olmayana kadar -V-kaçtı , veya çift-
alıntı karakteri atlanacak ve komutun bir parçası olacaktır.

B. Aksi takdirde, ilk olmayan karaktere kadar olan karakterler -kaçtı ,
, veya çift tırnak karakteri atlanacak ve
Komut.

C. komut bir olsaydı eklemek, değişiklikya da eklemek komutu ve adım 12.b. Bitti
bir karakter, sonraki karakterler, bir sonrakine kadar
olmayan -kaçtı komuta giriş metni olarak kullanılacaktır.

D. Komut bir çift tırnak karakteriyle sonlandırıldıysa, sonraki tüm karakterler,
bir sonraki olmayana kadar -kaçtı , atılacaktır.

e. sonlandırma veya karakter atılır ve herhangi bir
sonraki karakterler ayrı olarak ayrıştırılacaktır ex Komut.

Komut argümanları, her birinin Özeti ve Açıklamasında açıklandığı şekilde ayrıştırılacaktır.
bireysel ex emretmek. Bu ayrıştırma olmayacak -hassas, hariç !
araya girmeden komut adını takip etmesi gereken argüman karakterler ve
nerede aksi belirsiz olurdu. Örneğin, saymak ve bayrak argümanlar olmak zorunda değil
-ayrı çünkü "d22p" belirsiz değil ama dosya argümanlar ex sonraki
komut bir veya daha fazla ile ayrılmalıdır karakterler. Herhangi komut altında
için argümanlar kısaltmak, kısaltmak, harita, ve haritayı kaldırmak komutlar olabilir -V-
kaçtı, bu durumda argüman sınırlayıcı olarak kullanılmayacaktır. Herhangi
başka bir komut için komut argümanında -kaçtı, bu durumda
o argüman sınırlayıcı olarak kullanılmayacaktır.

için komut argümanları içinde kısaltmak, kısaltmak, harita, ve haritayı kaldırmak komutlar, herhangi
karakter olabilir -V-kaçtı. Tüm bu tür kaçan karakterler ele alınacaktır
kelimenin tam anlamıyla ve özel bir anlamı olmayacaktır. Diğer tüm için komut argümanları içinde ex
normal ifadeler veya değiştirme dizeleri olmayan komutlar, herhangi bir karakter
aksi takdirde özel bir anlamı olabilir -kaçtı. Kaçan karakterler
tam anlamıyla, kabuk genişletme karakterleri veya '!', '%', ve
'#' genişleme karakterleri Görmek Düzenli İfadeler in ex ve Değiştirme Dizeler in ex için
normal ifadeler veya değiştirme dizeleri olan komut bağımsız değişkenlerinin açıklamaları.

Olmayan- -kaçtı '%' görünen karakterler dosya herhangi birine argümanlar ex komut
geçerli yol adıyla değiştirilmelidir; kaçmamış '#' karakterler ile değiştirilecektir
alternatif yol adı. eğer bir hata olacaktır '%' or '#' karakterler bir satırda çıkış yapılmamış olarak görünür
argüman ve bunlara karşılık gelen değerler ayarlanmaz.

Olmayan- -kaçtı '!' ya da argümanlardaki karakterler ex ! komut veya
açık ve görsel mod ! komutunda veya argümanlarda ex okumak komut, nerede
ilk olmayan komut adından sonra bir '!' karakter veya argümanlarda
ex yazmak komut adının ardından bir veya daha fazlasının geldiği komut karakterler ve
ilk olmayan komut adından sonra bir '!' karakteri ile değiştirilecektir.
bu üç komutun sonuncusunun argümanları, sonuçta ortaya çıktıktan sonra göründükleri gibi
'%', '#', ve '!' karakterler değiştirildi. eğer bir hata olacaktır '!' karakterler
bu komutlardan birinde çıkış yapılmamış görünüyor ve daha önce bir yürütme yapılmamış
bu komutlardan.

Bir işlemin ayrıştırılması veya yürütülmesi sırasında bir hata oluşursa ex komut:

* Bu amaçla bilgilendirme mesajı yazılacaktır. Yürütme ex komuta
duracak ve imleç (örneğin, geçerli satır ve sütun)
daha da modifiye edilmiştir.

* Eğer ex bir harita genişletmesinden kaynaklanan komut, o haritadaki tüm karakterler
tarafından aksi belirtilmedikçe genişleme iptal edilecektir. harita Komut.

* Aksi takdirde, eğer ex komutun işlenmesinden kaynaklanan ÇIKIŞ çevre
değişken, bir .exrc Dosya :kaynak komut, bir -c seçeneği veya bir +komuta belirtilen bir
ex düzenleme, ex, sonrakiya da görsel komut, kaynağından başka komut yok
komutları yürütülecektir.

* Aksi takdirde, eğer ex komut, bir arabellek veya bir global or v
komut, arabelleğin yürütülmesinden kaynaklanan başka komut yok veya global or v
komutu yürütülecektir.

* Aksi takdirde, eğer ex komut bir tarafından sonlandırılmadı , tüm karakterler
ve bir sonraki olmayan dahil -kaçtı atılacaktır.

Giriş Kurgu in ex
Bu ve sonraki bölümlerde komutu belirtmek için aşağıdaki sembol kullanılır
eylemler:

sözcük POSIX yerel ayarında, bir kelime maksimum bir harf, rakam ve
ve her iki uçta harfler dışındaki karakterlerle sınırlandırılmış alt çizgiler,
rakamlar veya alt çizgiler veya bir satırın başına veya sonuna veya düzenleme arabelleğine göre.

Kullanıcıdan giriş karakterlerini kabul ederken, ex komut modu veya ex metin girişi
modunda ex Sistem Arayüzlerinde tanımlandığı gibi kurallı mod giriş işlemeyi etkinleştirecektir
POSIX.1‐2008'in hacmi.

Eğer varsa ex metin giriş modu:

1. Eğer numara düzenleme seçeneği ayarlandı, ex satır numarasını kullanarak giriş isteyecektir.
için belirtilen formatta girilmesi durumunda satıra atanır. ex
numara Komut.

2. Eğer otomatik girinti düzenleme seçeneği ayarlandı, ex kullanarak giriş isteyecektir otomatik girinti
tarafından açıklandığı gibi karakterler otomatik girinti düzenleme seçeneği. otomatik girinti karakterler
varsa satır numarasını takip edin.

Eğer varsa ex komut modu:

1. Eğer istemi düzenleme seçeneği ayarlandığında, giriş tek bir kullanım için sorulur. ':'
karakter; aksi takdirde, herhangi bir istem olmayacaktır.

Aşağıdaki bölümlerdeki giriş karakterleri, aşağıdaki etkilere sahip olacaktır:
giriş satırı.

kaydırma
özet:
eof

açıklamasına bakın arpacık eof karakter arpacık.

Eğer varsa ex komut modu:

Eğer eof karakter satıra girilen ilk karakterdir, satır
iki karakter içeriyormuş gibi değerlendirilir: a -D ve bir .

Aksi halde eof karakterin özel bir anlamı olmayacaktır.

Eğer varsa ex metin giriş modu:

İmleç bir otomatik girinti karakter, otomatik girinti içindeki karakterler
satır, sonraki metin giriş karakterinin bir kısmı değiştirilecek şekilde değiştirilecektir.
önceki sütundan sonraki satırdaki ilk sütunda görüntülenir vardiya genişliği düzenleme seçeneği
sütun sınırı ve kullanıcıdan aynı satır için tekrar giriş istenecektir.

Aksi takdirde, imleç bir '0'izleyen bir otomatik girinti karakter ve
the '0' önceki metin giriş karakteriydi, '0' ve hepsi otomatik girinti
satırdaki karakterler atılacak ve kullanıcıdan tekrar sorulması istenecektir.
Aynı satır için giriş

Aksi takdirde, imleç bir '^'izleyen bir otomatik girinti karakter ve
the '^' önceki metin giriş karakteriydi, '^' ve hepsi otomatik girinti
satırdaki karakterler atılacak ve kullanıcıdan tekrar sorulması istenecektir.
Aynı satır için giriş ek olarak otomatik girinti sonraki giriş satırı için seviye
olduğu aynı satırdan türetilecektir. otomatik girinti akım için seviye
giriş satırı türetilmiştir.

Aksi takdirde, yoksa otomatik girinti veya satırdaki metin giriş karakterleri, eof
karakter atılacaktır.

Aksi halde eof karakterin özel bir anlamı olmayacaktır.


özet:

-J

Eğer varsa ex komut modu:

Komut satırının ayrıştırılmasına neden olun; -J şuna eşlenecektir:
bu amaç için.

Eğer varsa ex metin giriş modu:

Geçerli satırı sonlandırın. dışında karakter yoksa otomatik girinti
satırdaki karakterler, satırdaki tüm karakterler atılacaktır.

Geçerli satırdan sonra yeni bir satırda metin girişi iste. Eğer otomatik girinti düzenleme
seçeneği ayarlandığında, uygun sayıda otomatik girinti karakterler olarak eklenecektir
tarafından açıklandığı gibi satırın öneki ex otomatik girinti düzenleme seçeneği.


özet:


Bir sonraki girişe izin ver veya -J, bir hazır karakter olarak, kaldırılıyor
metin giriş modu sırasında düzenleyici için sahip olabileceği herhangi bir özel anlam. bu
karakter, komut satırı ayrıştırıldığında veya tutulduğunda ve tutulduğunda korunacak ve değerlendirilecektir.
giriş metni düzenleme arabelleğinin bir parçası olduğunda dahil edilir.

-V
özet:
-V

Özel karakterleri kaldırarak, sonraki herhangi bir karakterin değişmez karakter olarak girilmesine izin verin.
bu, metin giriş modu sırasında düzenleyiciye sahip olabileceği anlamına gelir. bu -V karakteri
komut satırı ayrıştırılmadan veya giriş metni
tamponu düzenle.

"Bir sonraki değişmez" işlevi, temel alınan sistem tarafından gerçekleştirilirse,
dışında bir karakter olup olmadığını uygulama tanımlı -V bu işlevi yerine getirir.

-W
özet:
-W

atın -W ve giriş satırında ondan önceki kelime, herhangi bir
kelimeyi takip eden ve kelimeden önce gelen karakterler -W. Eğer `` kelime
silme '' işlevi, temel alınan sistem tarafından gerçekleştirilir, uygulama tarafından tanımlanır
dışında bir karakter olup olmadığı -W bu işlevi yerine getirir.

Komuta açıklamaları in ex
Bu bölümde komut değiştiricileri temsil etmek için aşağıdaki semboller kullanılmıştır. Bazı
bu değiştiriciler atlanabilir, bu durumda belirtilen varsayılanlar kullanılacaktır.

1 adres bölümünde açıklanan formlardan herhangi birinde verilen tek satırlık bir adres Adresleme in ex;
varsayılan, geçerli satır olacaktır ("."), Aksi belirtilmediği sürece.

Hat adresi sıfır ise, aksi belirtilmedikçe bir hata olacaktır.
aşağıdaki komut açıklamaları.

Düzenleme arabelleği boşsa ve adres başka bir komutla belirtilirse
göre =, eklemek, eklemek, açık, koymak, okumakya da görselveya adres sıfır değil,
bir hata olacaktır.

2 adres Kapsayıcı bir satır aralığı belirten iki adres. adres yoksa
belirtilen, varsayılan 2 adres yalnızca geçerli satır olacaktır (".,."), Meğer ki
aksi takdirde aşağıdaki komut açıklamalarında belirtilmiştir. bir adres ise
belirtildi, 2 adres içinde aksi belirtilmedikçe, yalnızca bu satırı belirtecektir.
aşağıdaki komut açıklamaları.

İlk adresin ikinci adresten büyük olması hata olacaktır.

Düzenleme arabelleği boşsa ve iki adres bir komutla belirtilmişse
dan başka !, yazmak, wqya da çıkmak komutları veya adreslerden herhangi biri sıfır değilse,
bir hata olacaktır.

saymak Pozitif bir ondalık sayı. Eğer saymak belirtilirse, eşdeğer olacaktır
tarafından aksi belirtilmedikçe, komuta ek bir adres belirterek
aşağıdaki komut açıklamaları. Ek adres şuna eşit olacaktır:
komuta belirtilen son adres (açıkça veya varsayılan olarak) artı
saymak-1.

Bu, düzenlemenin son satırından daha büyük bir adresle sonuçlanırsa
arabellek, düzenleme arabelleğinin son satırına eşit olacak şekilde düzeltilecektir.

bayraklar Bir veya daha fazla karakter '+', '-', '#', 'P'ya da 'l' (el). Bayrak
karakterler olabilir - ayrılmış ve herhangi bir sıra veya kombinasyonda. bu
karakterler '#', 'P', ve 'l' biçiminde yazılmasına neden olur
tarafından belirtilen baskı belirtilen komutla bayraklar.

Yazılacak satırlar şu şekildedir:

1. Yürütme sırasında yazılan tüm düzenleme arabellek satırları ex &, ~, liste,
numara, açık, baskı, s, görsel, ve z komutlar belirtildiği gibi yazılacaktır
by bayraklar.

2. Bir işlemin tamamlanmasından sonra ex argüman olarak bayraklı komut,
geçerli satır tarafından belirtildiği gibi yazılacaktır bayraklar, geçerli satır olmadığı sürece
komut tarafından yazılan son satırdı.

Karakterler '+' ve '-' sonra geçerli satırın değerine neden
infaz ex bölümünde açıklandığı gibi ofset adresi tarafından ayarlanacak komut
Adresleme in ex. Bu ayar, mevcut hat kapatılmadan önce gerçekleşecektir.
2. yukarıda açıklandığı gibi yazılmıştır.

için varsayılan bayraklar hiçbiri olacaktır.

tampon Metni tutmak için bir dizi adlandırılmış alandan biri. Adlandırılmış arabellekler belirtilir
POSIX yerel ayarının alfasayısal karakterleriyle. Ayrıca bir tane olacak
``adsız'' arabellek. kullanan düzenleyici komutları için bir arabellek belirtilmediğinde
arabellek, adsız arabellek kullanılacaktır. Metni arabelleklerde saklayan komutlar
metni, komut yürürlüğe girmeden önceki haliyle saklayacak ve
dosyada daha sonra meydana gelen metinden önce dosyada daha önce meydana gelen metin,
metin bölgesinin nasıl belirtildiğinden bağımsız olarak. Metni depolayan komutlar
arabellekler, metni adsız arabellekte ve ayrıca belirtilen herhangi bir arabellekte saklayacaktır.
tampon eklendi.

In ex komutlar, arabellek adları kendi başına ad olarak belirtilir. açık veya
görsel mod komutları, adından önce bir çift tırnak işareti ('''') karakter.

Belirtilen arabellek adı bir büyük harfse ve arabellek içeriği
değiştirilecekse, tampon yerine eklenecektir.
üzerine yazıldı. Tampon değiştirilmiyorsa, arabellek adının
küçük harf ve büyük harf aynı sonuçlara sahip olacaktır.

Ayrıca 1'den 9'a kadar numaralandırılmış tamponlar da olacaktır. Açık ve görsel olarak
modu, tek bir satırdan daha fazla karakter içeren bir metin bölgesi
tarafından değiştiriliyor vi c or d komutlar, ile ilişkili hareket karakteri
the c or d komutları, arabellek metninin satır modunda olacağını veya
komutlar %, `, /, ?, (, ), N, n, {ya da } için bir metin bölgesi tanımlamak için kullanılır
the c or d komutları, 1'den 8'e kadar olan arabelleklerin içeriği,
bir sonraki sayısal olarak daha büyük değerle adlandırılan arabellek, arabellek 9'un içeriği
atılacak ve metin bölgesi arabellek 1'e kopyalanacaktır.
metnin kullanıcı tanımlı bir arabelleğe veya adsız bir arabelleğe kopyalanmasına ek olacaktır.
arabellek veya her ikisi. Sayısal arabellekler, açık için bir kaynak arabellek olarak belirtilebilir.
ve görsel mod komutları; ancak, yazma olarak sayısal bir arabellek belirtmek
açık veya görsel mod komutunun hedefi belirtilmemiş sonuçlara sahip olacaktır.

Her tamponun metni, satırda veya satırda olma özelliğine sahip olacaktır.
karakter modu. Boş olmayan bir arabelleğe metin eklemek, modu eşleşecek şekilde ayarlayacaktır.
eklenen metnin özelliği. Bir ara belleğe metin eklemek,
arabellekte en az bir ek satırın oluşturulmasına neden olur. Tüm metin
tarafından tamponlarda saklanır ex komutlar satır modunda olacaktır. bu ex komutları
arabellekleri metin kaynağı olarak kullan, farklı arabelleklerin nasıl olduğunu ayrı ayrı belirtin
modlar işlenir. Herhangi biri için arabellek kullanan her açık veya görsel mod komutu
amaç, arabellekte saklanan metnin modunu ayrı ayrı belirtir ve
farklı modların arabelleklerinin nasıl işlendiği.

dosya Bir yol adı türetmek için kullanılan komut metni. Varsayılan, geçerli olacaktır
yol adı, daha önce tanımlandığı gibi, bu durumda, henüz geçerli bir yol adı yoksa
tespit edildiğinde, özellikle belirtilen durumlar dışında bir hata olacaktır.
takip eden bireysel komut açıklamaları. Komut metni herhangi bir içerik içeriyorsa
karakterlerden '~', '{', '[', '*', '?', '$', '''', ters alıntı, tek alıntı,
ve 'kabuk açılımları' işlemine tabi tutulacağını,
aşağıda açıklandığı gibi; birden fazla yol adı ortaya çıkarsa ve komut
sadece bir tane bekler, bu bir hata olacaktır.

Editördeki kabuk açılımlarının işlemi aşağıdaki gibi yapılacaktır. bu ex
yardımcı program, kabuk düzenleme seçeneği tarafından adlandırılan programa iki argüman iletecektir;
ilk olacak -c, ve ikincisi dize olacaktır "Eko" ve komut
tek bir argüman olarak metin. Bunun standart çıktısı ve standart hatası
komut, komut metninin yerini alacaktır.

! İşlemini değiştirmek için komut adına eklenebilen bir karakter,
ayrı komut açıklamalarında ayrıntılı olarak verilmiştir. hariç olmak üzere ex
okumak, yazmak, ve ! komutlar, '!' karakter yalnızca aşağıdaki durumlarda değiştirici olarak işlev görür:
yok onunla komut adı arasındaki karakterler.

hatırladı arama yön
The vi komutlar N ve n ileri veya geri yönde aramaya başlayın.
düzenleme arabelleği, başlangıçta olan, hatırlanan bir arama yönüne göre
çözülür ve tarafından ayarlanır ex global, v, s, ve etiket komutları ve vi / ve ?
emreder.

Kısaltmak
özet:
ab[kısaltmak][ss rhs]

If ss ve rhs belirtilmemişse, mevcut kısaltmaların listesini yazın ve hiçbir şey yapmayın
Daha fazla.

Uygulamalar, kabul edilen karakter kümesini kısıtlayabilir ss or rhsbunun dışında
yazdırılabilir karakterler ve karakterler kısıtlanmayacaktır. Ek olarak
kısıtlamalar uygulamaya göre tanımlanmalıdır.

Hem de ss ve rhs, herhangi bir karakter bir ile kaçabilir -V, bu durumda
karakter sınırlamak için kullanılmayacaktır ss itibaren rhs, ve kaçış -V olacaktır
atılan.

Açık ve görsel metin giriş modunda, kelime olmayan veya kaçmayan karakter
tarafından -V karakteri word karakterinden sonra girilirse bir kontrol yapılır.
eşleşen karakter kümesi ss, bu komut sırasında girilen metin girişinde. Eğer öyleyse
bulundu, etkisi sanki olacaktır rhs yerine girildi ss.

Kontrol edilen karakter seti aşağıdaki gibi tanımlanır:

1. Kelimeden ve kelime olmayandan önce herhangi bir karakter girilmemişse veya karakterler
kontrolü tetikleyen karakter kümesi, kelime karakterinden oluşacaktır.

2. Karakter, kelimeden önce ve kelime olmayan veya karakterler
tetiklendiğinde, kontrol bir kelime karakteridir, karakter seti şunlardan oluşacaktır:
kelime olan tetikleyici karakterlerden hemen önce eklenen karakterler
karakterler, artı tetikleyici sözcük karakteri.

3. Karakter, kelimeden önce ve kelime olmayan veya karakterler
tetiklendiğinde kontrol bir kelime karakteri değil, karakter kümesi şunlardan oluşacaktır
ikisi de olmayan tetikleyici karakterlerden önce eklenen karakterler
karakterler veya kelime karakterleri artı tetikleyici kelime karakteri.

olup olmadığı belirtilmemiştir. ss için girilen argüman ex kısaltmak ve kısaltmak
komutlar bu şekilde değiştirilir. Değiştirme gerçekleşip gerçekleşmediğine bakılmaksızın,
komutun etkisi, değiştirme gerçekleşmemiş gibi olacaktır.

akım hat: Değişmedi.

akım sütun: Değişmedi.

eklemek
özet:
[1 adres] a[Ppend][!]

Keşfet ex metin giriş modu; giriş metni belirtilen satırdan sonra yerleştirilmelidir. Eğer çizgi
sıfır belirtilirse, metin düzenleme arabelleğinin başına yerleştirilecektir.

Bu komut aşağıdakilerden etkilenecektir: numara ve otomatik girinti düzenleme seçenekleri; takiben
ile komut adı '!' neden olur otomatik girinti değiştirilecek seçenek ayarını düzenle
yalnızca bu komutun süresi.

akım hat: Son giriş satırına ayarlayın; hiçbir satır girilmemişse, belirtilene ayarlayın
satıra veya sıfır satırı belirtilmişse düzenleme arabelleğinin ilk satırına veya sıfır ise sıfır
düzenleme arabelleği boş.

akım sütun: Olmayan olarak ayarla .

Argümanlar
özet:
ar[gs]

Geçerli argüman listesini, eğer varsa, mevcut argüman listesi girişiyle birlikte yazın. '['
ve ']' karakterler.

akım hat: Değişmedi.

akım sütun: Değişmedi.

değişim
özet:
[2 adres] c[hange][!][saymak]

Keşfet ex metin giriş modu; giriş metni belirtilen satırların yerini alacaktır. Belirtilen
satırlar, satır modu arabelleği haline gelecek olan adsız arabelleğe kopyalanacaktır.

Bu komut aşağıdakilerden etkilenecektir: numara ve otomatik girinti düzenleme seçenekleri; takiben
ile komut adı '!' neden olur otomatik girinti değiştirilecek seçenek ayarını düzenle
yalnızca bu komutun süresi.

akım hat: Son giriş satırına ayarlayın; hiçbir satır girilmemişse, önceki satıra ayarlayın
ilk adrese veya önünde satır yoksa düzenleme arabelleğinin ilk satırına
ilk adres veya düzenleme arabelleği boşsa sıfıra.

akım sütun: Olmayan olarak ayarla .

değişim rehber
özet:
chd[ir][!][rehber]
cd[!][rehber]

Geçerli çalışma dizinini şu şekilde değiştirin: rehber.

Eğer hayırsa rehber argüman belirtilir ve ANA SAYFA ortam değişkeni olmayan olarak ayarlandı
null ve boş olmayan değer, rehber içinde belirtilen değere varsayılan olacaktır ANA SAYFA
Çevre değişkeni. Eğer ANA SAYFA ortam değişkeni boş veya tanımsız,
varsayılan değeri rehber uygulama tanımlıdır.

Eğer hayırsa '!' komut adına eklenir ve düzenleme arabelleği o zamandan beri değiştirildi
son tam yazma ve geçerli yol adı bir ile başlamıyor '/', olacak
bir hata.

akım hat: Değişmedi.

akım sütun: Değişmedi.

kopya
özet:
[2 adres] co[py] 1 adres [bayraklar]
[2 adres] t 1 adres [bayraklar]

Belirtilen hedef satırdan sonra belirtilen satırları kopyalayın; sıfır satırı bunu belirtir
satırlar düzenleme arabelleğinin başına yerleştirilecektir.

akım hat: Kopyalanan son satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Sil
özet:
[2 adres] d[seçkin][tampon][saymak][bayraklar]

Belirtilen satırları bir arabelleğe silin (varsayılan olarak adsız arabellek),
satır modu arabelleği haline gelir.

Bayraklar komut adını hemen takip edebilir; görmek Komuta çizgi ayrıştırma in ex.

akım hat: Silinen satırlardan sonraki satıra veya düzenlemedeki son satıra ayarlayın
arabellek, bu satır düzenleme arabelleğinin sonunu geçmişse veya düzenleme arabelleği ise sıfıra
boş.

akım sütun: Olmayan olarak ayarla .

Düzenle
özet:
e[adı geçen][!][+komuta][dosya]
ex[!][+komuta][dosya]

Eğer hayırsa '!' komut adına eklenir ve düzenleme arabelleği o zamandan beri değiştirildi
son tam yazma, bir hata olacaktır.

If dosya belirtilirse, düzenleme arabelleğinin mevcut içeriğini geçerli içerikle değiştirin.
içeriği dosyave geçerli yol adını şu şekilde ayarlayın: dosya. Eğer dosya belirtilmemiş, değiştirin
tarafından adlandırılan dosyanın mevcut içeriği ile düzenleme arabelleğinin mevcut içeriği
geçerli yol adı. Herhangi bir nedenle dosyanın mevcut içeriğine erişilemiyorsa,
düzenleme arabelleği boş olacaktır.

The +komuta seçenek -sınırlandırılmış; içindeki karakterler +komuta yapabilmek
onlardan önce bir ile kaçmak karakter. bu +komuta olmalı
olarak yorumlandı ex düzenleme arabelleğinin içeriğinden hemen sonra komut
değiştirildi ve mevcut satır ve sütun ayarlandı.

Düzenleme arabelleği boşsa:

akım hat: 0 olarak ayarlayın.

akım sütun: 1 olarak ayarlayın.

Aksi takdirde, içindeyken yürütülürse ex komut modu veya +komuta argüman belirtilir:

akım hat: Düzenleme arabelleğinin son satırına ayarlayın.

akım sütun: Olmayan olarak ayarla .

Aksi takdirde, dosya atlanır veya geçerli yol adıyla sonuçlanır:

akım hat: Düzenleme arabelleğinin ilk satırına ayarlayın.

akım sütun: Olmayan olarak ayarla .

Aksi takdirde, dosya son düzenlenen dosya ile aynıysa, satır ve sütun ayarlanacaktır.
aşağıdaki gibi; dosya daha önce düzenlendiyse, satır ve sütun aşağıdaki gibi ayarlanabilir:

akım hat: Dosya en son düzenlendiğinde tutulan son değere ayarlayın. Bu değer ise
yeni düzenleme arabelleğinde geçerli bir satır değil, düzenleme arabelleğinin ilk satırına ayarlayın.

akım sütun: Geçerli satır, dosya en son tutulduğunda tutulan son değere ayarlanmışsa
düzenlendi, dosya en son düzenlendiğinde tutulan son değere ayarlayın. Aksi takdirde veya
son değer, yeni düzenleme arabelleğinde geçerli bir sütun değil, .

Aksi takdirde:

akım hat: Düzenleme arabelleğinin ilk satırına ayarlayın.

akım sütun: Olmayan olarak ayarla .

fileto
özet:
f[s][dosya]

Eğer bir dosya argüman belirtilirse, alternatif yol adı geçerli olarak ayarlanacaktır.
yol adı ve geçerli yol adı olarak ayarlanacaktır. dosya.

Bir bilgi mesajı yazın. Dosyanın geçerli bir yol adı varsa, dahil edilecektir.
bu mesajda; aksi halde mesaj, geçerli bir yol adı olmadığını belirtecektir.
Düzenleme arabelleği satır içeriyorsa, geçerli satır numarası ve
düzenleme arabelleği bu mesaja dahil edilecektir; aksi takdirde, mesaj şunu belirtecektir:
düzenleme arabelleği boş. Düzenleme arabelleği son tamamlamadan sonra değiştirilmişse
yazın, bu gerçek bu mesaja dahil edilecektir. Eğer Sadece oku düzenleme seçeneği ayarlandı,
bu gerçek bu mesaja dahil edilecektir. İleti, belirtilmemiş diğer
bilgiler.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Küresel
özet:
[2 adres] g[loblu] /model/ [komutlar]
[2 adres] v /model/ [komutlar]

İsteğe bağlı '!' karakterden sonra global komutu yürütmekle aynı olacaktır. v
Komut.

If model boş (örneğin, "//") veya belirtilmemişse, kullanılan son normal ifade
editör komutunda şu şekilde kullanılacaktır: model. model tarafından sınırlandırılabilir
karakterler (Özet bölümünde gösterilmiştir) ve ayrıca alfasayısal olmayan veya
ondan başka , , veya çift alıntı.

Hiçbir satır belirtilmemişse, satırlar tüm dosya için varsayılan olacaktır.

The global ve v komutlar mantıksal olarak iki geçişli işlemlerdir. İlk önce, içindeki çizgileri işaretleyin
sonlandırma hariç satırın olduğu belirtilen satırlar maçlar
(global) veya eşleşmiyor (v or küresel!) belirtilen desen. İkincisi, yürütün ex
tarafından verilen komutlar komutlar, geçerli satırla (".") işaretli her satıra ayarlayın. eğer bir
Bu işlem sırasında hata oluşur veya düzenleme arabelleğinin içeriği değiştirilir (için
örneğin, tarafından ex düzenleme: komut) bir hata mesajı yazılacak ve daha fazla komut verilmeyecektir.
Bu komutun yürütülmesinden kaynaklanan işlemler işlenecektir.

çoklu ex komutlar kullanılarak tek bir satırda birden çok komut girilerek belirtilebilir.
a her birinden kaçarak onları veya satır başına bir tane sınırlamak için Birlikte
.

Herhangi bir komut belirtilmemişse:

1. Varsa ex komut modu, sanki baskı komutu belirtildi.

2. Aksi halde hiçbir komut yürütülmez.

Için eklemek, değişiklik, ve eklemek komutları, giriş metni bir parçası olarak dahil edilecektir
komut ve sonlandırma komut listesini bitirirse atlanabilir
komutlar. açık ve görsel komutlar, komutlardan biri olarak belirtilebilir.
durumda, işaretlenen her satır, editörün açık veya görsel moda girmesine neden olacaktır. açıksa veya
kullanılarak görsel moddan çıkılır. vi Q komutu, mevcut satır bir sonrakine ayarlanacaktır.
işaretli hat ve açık veya görsel moda yeniden girilene kadar işaretli hatlar listesi
yorgun.

The global, v, ve geri komutlar kullanılamaz komutlar. İşaretli satırlar silinebilir
dosyada işaretli satırlardan daha önce meydana gelen satırlar için yürütülen komutlar tarafından. İçinde
bu durumda silinen satırlar için herhangi bir komut yürütülmez.

Hatırlanan arama yönü ayarlanmamışsa, global ve v komutlar onu ayarlayacaktır
İleri.

The otomatik baskı ve otomatik girinti düzenleme seçenekleri, kullanım süresi boyunca engellenecektir. g or
v Komut.

akım hat: Hiçbir komut yürütülmediyse, son işaretli satıra ayarlayın. Aksi takdirde,
yürütülen için belirtilen ex emreder.

akım sütun: Hiçbir komut yürütülmezse, olmayan olarak ayarlayın. ; aksi takdirde, belirtildiği gibi
birey için ex emreder.

Ekle
özet:
[1 adres] i[ekle][!]

Keşfet ex metin giriş modu; giriş metni belirtilen satırın önüne yerleştirilmelidir. Eğer
satır sıfır veya 1 ise, metin düzenleme arabelleğinin başına yerleştirilmelidir.

Bu komut aşağıdakilerden etkilenecektir: numara ve otomatik girinti düzenleme seçenekleri; takiben
ile komut adı '!' neden olur otomatik girinti değiştirilecek seçenek ayarını düzenle
yalnızca bu komutun süresi.

akım hat: Son giriş satırına ayarlayın; hiçbir satır girilmemişse, önceki satıra ayarlayın
belirtilen satıra veya satır yoksa düzenleme arabelleğinin ilk satırına
belirtilen satırdan önce veya düzenleme arabelleği boşsa sıfır.

akım sütun: Olmayan olarak ayarla .

Kaydol
özet:
[2 adres] j[oin][!][saymak][bayraklar]

If saymak belirtilir:

Adres belirtilmemişse, kaydol komut gibi davranacak 2 adres vardı
geçerli satır ve geçerli satır artı saymak (.,. + saymak).

Bir adres belirtilmişse, kaydol komut gibi davranacak 2 adres vardı
belirtilen adres ve belirtilen adres artı saymak (adr,adr + saymak).

İki adres belirtilmişse, kaydol komut, ek bir komut gibi davranacaktır.
adres, son adrese eşit artı saymak -1 (adres1,adres2,adres2 + saymak -1),
belirtildi.

Bu, düzenlemenin son satırından daha büyük ikinci bir adresle sonuçlanırsa
tampon, düzenleme tamponunun son satırına eşit olacak şekilde düzeltilecektir.

Eğer hayırsa saymak belirtilir:

Adres belirtilmemişse, kaydol komut gibi davranacak 2 adres vardı
geçerli satır ve sonraki satır (.,. +1).

Bir adres belirtilmişse, kaydol komut gibi davranacak 2 adres vardı
belirtilen adres ve sonraki satır (adr,adr + 1).

Belirtilen satırlardaki metni, yerini alacak olan tek bir satırda birleştirin.
belirtilen satırlar

Eğer bir '!' karakter, komut adına eklenir, kaydol olmadan olacak
geçerli yerel ayardan bağımsız olarak herhangi bir satırın değiştirilmesi.

Aksi takdirde, POSIX yerel ayarında, geçerli satırı belirtilen satırlardan ilkine ayarlayın,
ve ardından, sonraki her satır için aşağıdakileri yapın:

1. Önde gelenleri atın birleştirilecek satırdan karakterler.

2. Birleştirilecek satır şimdi boşsa, silin ve 3 ile 5 arasındaki adımları atlayın.

3. Geçerli satır bir ile biterse veya birleştirilecek satırın ilk karakteri
bir ')' karakter, daha fazla değişiklik yapmadan satırları birleştirin.

4. Geçerli satırın son karakteri bir ".", çizgileri iki ile birleştir
Aralarındaki karakterler.

5. Aksi takdirde, satırları tek bir onların arasında.

akım hat: Belirtilen ilk satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Liste
özet:
[2 adres] l[olduğunu][saymak][bayraklar]

Bu komut şuna eşdeğer olacaktır: ex komut:

[2 adres] p[rint][saymak] l[bayraklar]

Yerimizi Print .

Harita
özet:
harita[!][ss rhs]

If ss ve rhs belirtilmemiş:

1. Eğer '!' belirtilirse, metin giriş modu haritalarının geçerli listesini yazın.

2. Aksi takdirde, mevcut komut modu haritaları listesini yazın.

3. Başka bir şey yapmayın.

Uygulamalar, kabul edilen karakter kümesini kısıtlayabilir ss or rhsbunun dışında
yazdırılabilir karakterler ve karakterler kısıtlanmayacaktır. Ek olarak
kısıtlamalar uygulamaya göre tanımlanmalıdır. Hem de ss ve rhs, herhangi bir karakter olabilir
ile kaçtı -V, bu durumda karakter sınırlamak için kullanılmayacaktır. ss
itibaren rhs, ve kaçış -V atılacaktır.

eğer karakter '!' e eklenir harita komut adı, eşleme etkili olacaktır
yerine açık veya görsel metin giriş modu sırasında açık or görsel komut modu. Bu izin verir
ss iki farklı olmak harita aynı anda tanımlar: biri komut modu için, diğeri
metin giriş modu için.

Komut modu eşlemeleri için:

Zaman ss herhangi bir parçası olarak girilir vi açık veya görsel modda komut verin (ancak
komutun argümanlarının bir parçası olarak), eylem sanki
uyan rhs girilmişti.

Komuttaki ilk karakter dışında herhangi bir karakterden kaçınılırsa, bir
-V karakteri, o karakter bir eşleşmenin parçası olmayacaktır. ss.

Uygulamaların destekleyip desteklemeyeceği belirtilmemiş harita komutları nerede ss
uzunluğu tek bir karakterden fazladır, burada ilk karakter ss is
yazdırılabilir.

If ss birden fazla karakter içeriyor ve ilk karakter '#', Ardından
numaralı bir fonksiyon tuşuna karşılık gelen bir rakam dizisi, daha sonra bu
fonksiyon tuşu yazıldığında, eşlenecek rhs. Rakamlar dışındaki karakterler
aşağıdaki bir '#' karakter ayrıca karakterler tarafından adlandırılan işlev tuşunu da temsil eder.
içinde ss Aşağıdaki '#' ve eşlenebilir rhs. nasıl olduğu belirtilmemiş
işlev tuşlarının adlandırıldığı veya hangi işlev tuşlarının desteklendiği.

Metin giriş modu eşlemeleri için:

Zaman ss açık veya görsel metin girişinde girilen metnin herhangi bir parçası olarak girilir
modlar, eylem sanki karşılık gelen rhs girilmişti.

Giriş metnindeki herhangi bir karakter, bir -V karakteri, bu
karakter bir eşleşmenin parçası olmayacaktır. ss.

olup olmadığı belirtilmemiştir. ss sonraki için girilen metin harita or haritayı kaldırmak komutlar
ile değiştirilir rhs ekran görüntüsü amacıyla metin; gözetilmeksizin
ekranın ilgili ekran görüntüsü gibi görünüp görünmediği rhs metin girildi,
komutun etkisi sanki ss metin girildi.

Eğer sadece bir kısmı ss girildiğinde, editörün ne kadar süre bekleyeceği belirtilmemiş
ek, muhtemelen eşleşen karakterler, önceden girilmiş karakterlere olduğu gibi davranılmadan önce
eşleşmiyor ss.

The rhs tarafından aksi belirtilmedikçe, karakterlerin kendileri yeniden eşlemeye tabi olacaktır.
the remap düzenleme seçeneği, ancak içindeki karakterler ss önek karakterleri olarak ortaya çıkar
rhs, bu karakterler yeniden eşleştirilmeyecektir.

Blok modlu terminallerde, eşlemenin hemen gerçekleşmesi gerekmez (örneğin,
terminal sisteme bir grup karakter ilettikten sonra), ancak bunu başaracaktır.
hemen meydana gelmiş gibi aynı sonuçlar.

akım hat: Değişmedi.

akım sütun: Değişmedi.

işaret
özet:
[1 adres] ma[rk] karakter
[1 adres] k karakter

Uygulamalar destekleyecek karakter POSIX'in tek bir küçük harfinin değerleri
yerel ayar ve ters alıntı ve tek alıntı karakterleri; diğer karakterlerin desteği
uygulama tanımlı.

yürütülürse vi m komutu, belirtilen işareti geçerli satıra ayarlayın ve 1 tabanlı
varsa, geçerli sütun tarafından başvurulan numaralı karakter; aksi takdirde, sütun konumu 1.

Aksi takdirde, belirtilen işareti belirtilen satıra ayarlayın ve önce 1 tabanlı numaralandırın
olmayan olmayan varsa sırada; aksi takdirde, son olmayan içinde
varsa satır; aksi takdirde, sütun konumu 1.

İşaret sıfırlanana veya hat sabitlenene kadar işaret hat ile ilişkili kalacaktır.
silindi. Silinen bir satır sonraki bir satır tarafından geri yüklenirse geri komut, daha önce herhangi bir işaret
sıfırlanmayan hat ile ilişkili olanlar da geri yüklenir. herhangi bir kullanımı
düzenleme arabelleğinde geçerli bir satırla ilişkili olmayan bir işaret bir hata olacaktır.

İşaretler ` ve ' aşağıdakilerden hemen önce, daha önce açıklandığı gibi ayarlanacaktır.
olaylar düzenleyicide gerçekleşir:

1. Kullanımı '$' bir olarak ex adres

2. Pozitif bir ondalık sayının bir sayı olarak kullanılması ex adres

3. Bir arama komutunun bir arama komutu olarak kullanılması ex adres

4. Bir işaret referansının bir referans olarak kullanılması ex adres

5. Aşağıdaki açık ve görsel mod komutlarının kullanımı: -], %, (, ), [, ], {,
}

6. Aşağıdaki açık ve görsel mod komutlarının kullanımı: ', G, H, L, M, z eğer
komutun bir sonucu olarak mevcut satır değişecek

7. Açık ve görsel mod komutlarının kullanımı: /, ?, N, `, n geçerli satır veya
sütun, komutun bir sonucu olarak değişecektir

8. ex mod komutları: z, geri, global, v

1., 2., 3. ve 4. kurallar için, ` ve ' işaretler konulmayacaktır, eğer ex komut
kural 6.a'da belirtildiği gibi ayrıştırılır. içinde Komuta çizgi ayrıştırma in ex.

5., 6. ve 7. kurallar için, ` ve ' komutlar şu şekilde kullanılırsa işaretler ayarlanmaz.
açık ve görsel modda hareket komutları.

1., 2., 3., 4., 5., 6., 7. ve 8. kurallar için, ` ve ' işaretler konulmayacaktır, eğer
komut başarısız olur.

The ` ve ' işaretler, düzenlemenin içeriği her seferinde daha önce açıklandığı gibi ayarlanacaktır.
açık veya görsel ise, arabellek değiştirilir (ilk arabelleğin düzenlenmesi dahil),
modunda veya içindeyse ex modu ve düzenleme arabelleği, herhangi bir komut veya hareketten önce boş değil
tarafından belirtilen komutlar veya hareketler dahil -c or -t seçenekler veya +komuta
argüman) düzenleme arabelleğinde yürütülür. Açık veya görsel modda ise, işaretler
yürütüyormuş gibi ayarla vi m emretmek; aksi takdirde, sanki yürütülüyormuş gibi ex işaret Komut.

Dan değiştirirken ex açık veya görsel mod, eğer ` ve ' işaretler zaten değil
yı kur ` ve ' işaretler daha önce açıklandığı gibi ayarlanacaktır.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Hareket
özet:
[2 adres] m[Ove] 1 adres [bayraklar]

Belirtilen satırları belirtilen hedef satırdan sonra taşıyın. Sıfır hattının hedefi
satırların düzenleme arabelleğinin başına yerleştirileceğini belirtir. olacak
hedef satır taşınacak satır aralığındaysa bir hata.

akım hat: Taşınan satırların sonuncusuna ayarlayın.

akım sütun: Olmayan olarak ayarla .

Sonraki
özet:
n[ext][!][+komuta][dosya ...]

Eğer hayırsa '!' komut adına eklenir ve düzenleme arabelleği o zamandan beri değiştirildi
son tam yazma, dosya başarıyla yazılmadığı sürece bir hata olacaktır.
tarafından belirtilen otomatik yazma seçeneği.

Bir veya daha fazla dosya belirtilmişse:

1. Argüman listesini belirtilen dosya adlarına ayarlayın.

2. Mevcut argüman listesi referansını argüman listesindeki ilk giriş olacak şekilde ayarlayın.

3. Geçerli yol adını belirtilen ilk dosya adına ayarlayın.

Aksi takdirde:

1. Argüman listesinden sonra başka dosya adı yoksa bu bir hata olacaktır.
şu anda başvurulan dosya adı.

2. Geçerli yol adını ve geçerli argüman listesi referansını dosya adına göre ayarlayın.
bağımsız değişken listesinde şu anda başvurulan dosya adı.

Düzenleme arabelleğinin içeriğini, geçerli komut dosyası tarafından adlandırılan dosyanın içeriğiyle değiştirin.
yol adı. Herhangi bir nedenle dosyanın içeriğine erişilemiyorsa, düzenleme arabelleği
boş olacaktır.

Bu komut aşağıdakilerden etkilenecektir: otomatik yazma ve yazmak seçenekleri düzenleyin.

The +komuta seçenek -sınırlandırılmış; karakterler tarafından kaçılabilir
onlardan önce bir karakter. bu +komuta olarak yorumlanacaktır. ex
düzenleme arabelleğinin içeriği değiştirildikten hemen sonra komut ve
geçerli satır ve sütun ayarlandı.

akım hat: için açıklandığı gibi ayarlayın. düzenleme Komut.

akım sütun: için açıklandığı gibi ayarlayın. düzenleme Komut.

Numara
özet:
[2 adres] nu[mber][saymak][bayraklar]
[2 adres] #[saymak][bayraklar]

Bu komutlar aşağıdakilere eşdeğer olacaktır: ex komut:

[2 adres] p[rint][saymak] #[bayraklar]

Yerimizi Print .

Açılış
özet:
[1 adres] o[kalem] /model/ [bayraklar]

Bu komutun blok modu terminallerinde veya yetersiz terminallere sahip terminallerde desteklenmesine gerek yoktur.
yetenekler. Standart giriş, standart çıkış veya standart hata terminal değilse
cihazlar, sonuçlar belirtilmemiş.

Açık moda girin.

Sondaki sınırlayıcı atlanabilir model komut satırının sonunda. Eğer
model boş (örneğin, "//") veya belirtilmemişse, kullanılan son normal ifade
Düzenleyici şablon olarak kullanılacaktır. Desen tarafından sınırlandırılabilir
karakterler (Özet bölümünde gösterilmiştir) ve ayrıca herhangi bir alfasayısal veya ondan başka
, , veya çift alıntı.

akım hat: Belirtilen satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Korumak
özet:
ön[hizmet vermek]

Düzenleme arabelleğini daha sonra kurtarılabilecek bir biçimde kaydedin. -r seçenek veya tarafından
ile ex kurtarmak emretmek. Dosya korunduktan sonra, bir posta mesajı gönderilecektir.
kullanıcıya gönderilir. Bu mesaj, mailx Yarar. NS
mesaj dosyanın adını, saklama zamanını ve ex komuta
dosyayı kurtarmak için kullanılabilir. Ek bilgiler postaya dahil edilebilir
mesaj.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Print
özet:
[2 adres] p[rint][saymak][bayraklar]

Adreslenen satırları yazın. Davranış, sütunların sayısı belirtilmemişse, belirtilmemiştir.
ekran, herhangi bir tek karakter yazmak için gereken sütun sayısından daha az
satırlar yazılıyor.

Aşağıdakiler dışında yazdırılamayan karakterler , uygulama tanımlı olarak yazılacaktır
çok karakterli diziler

Eğer # bayrak belirtilir veya numara düzenleme seçeneği ayarlı, her satırdan önce gelmelidir
aşağıdaki biçimde satır numarasına göre:

"%6d ", <hat numara>

Eğer l bayrak belirtilir veya liste düzenleme seçeneği ayarlandı:

1. POSIX.1‐2008'in Temel Tanımlar cildinde listelenen karakterler, tablo 5-1,
Kaçış Diziler ve birleşmiş İşlemler karşılık gelen kaçış olarak yazılacaktır
sıra.

2. POSIX.1‐2008'in Temel Tanımlar hacminde olmayan yazdırılamayan karakterler, tablo
5-1, Kaçış Diziler ve birleşmiş İşlemler bir üç basamaklı sekizli olarak yazılacaktır
numara (bir önceki ) karakterdeki her bayt için (en önemli
önce bayt).

3. Her satırın sonu, bir '$', ve gerçek '$' içindeki karakterler
satır bir önceki ile yazılacaktır .

Uzun çizgiler katlanır; katlanmanın meydana geldiği uzunluk belirtilmemiştir, ancak
terminalin kolon sayısı dikkate alınarak çıkış terminaline uygun olmalıdır.

Bir çizgi katlanırsa ve l bayrak belirtilmemiş ve liste düzenleme seçeneği ayarlanmamış,
katlama konumunda çok sütunlu bir karakterin ayrılıp ayrılmadığı belirtilmemiştir;
atılmayacaktır.

akım hat: Son yazılan satıra ayarlayın.

akım sütun: Geçerli satır değişmezse değişmez; aksi takdirde, olmayan olarak ayarlayın .

Koymak
özet:
[1 adres] pu[t][tampon]

Belirtilen arabellekten (varsayılan olarak adsız arabellek) metni belirtilen arabelleğe ekleyin
astar; sıfır satırı, metnin düzenlemenin başına yerleştirileceğini belirtir
tampon. Arabellekteki bir satırın her bölümü, düzenleme arabelleğinde yeni bir satır olur,
tampon modundan bağımsız olarak.

akım hat: Düzenleme arabelleğine girilen son satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Çıkmak
özet:
q[uit][!]

Eğer hayırsa '!' komut adına eklenir:

1. Düzenleme arabelleği son tam yazma işleminden sonra değiştirilmişse,
hata.

2. Argüman listesinde halihazırda başvurulan dosya adından sonra dosya adları varsa,
ve son komut bir değildi çıkmak, wq, çıkmakya da ZZ (görmek Çıkış) komutu, bir
hata.

Aksi takdirde, düzenleme oturumunu sonlandırın.

Okumak
özet:
[1 adres] r[EAD][!][dosya]

If '!' ilk olmayan değil komut adını takip etmek için, belirtilenin bir kopyası
dosya, belirtilen satırdan sonra düzenleme arabelleğine eklenecektir; sıfır satırı belirtir
kopyanın düzenleme arabelleğinin başına yerleştirilmesi gerektiğini. Hat sayısı ve
okunan bayt yazılacaktır. Eğer hayırsa dosya adlandırılmışsa, geçerli yol adı
varsayılan. Geçerli bir yol adı yoksa, o zaman dosya geçerli yol adı olacaktır. Eğer
geçerli yol adı yok veya dosya işlenen, bir hata olacaktır. belirtmek dosya o
tip düzenli değil, belirtilmemiş sonuçlara sahip olacaktır.

Aksi takdirde, dosya öncesinde '!', satırın geri kalanı '!' olmalı '%',
'#', ve '!' açıklandığı gibi genişletilmiş karakterler Komuta çizgi ayrıştırma in ex.

The ex yardımcı program daha sonra kabuk düzenlemesi tarafından adlandırılan programa iki argüman iletecektir.
seçenek; ilk olacak -c ve ikincisi, genişletilmiş argümanlar olacaktır. okumak
tek bir argüman olarak komut. Programın standart girişi şu şekilde ayarlanmalıdır:
standart giriş ex program çağrıldığında. Standart hata ve standart
programın çıktısı, belirtilen satırdan sonra düzenleme arabelleğine eklenecektir.

Kopyalanan dosyadaki veya program çıktısındaki her satır ( karakterler veya
dosyanın veya çıktının sonundan hemen önce yoksa ), olmalı
düzenleme arabelleğinde ayrı bir satır. herhangi bir olay ve
çıktıdaki çiftler tekli olarak kabul edilecektir. karakterler.

Özel anlamı '!' Aşağıdaki okumak komut kaçarak geçersiz kılınabilir
onunla bir karakter.

akım hat: Düzenleme arabelleğine hiçbir satır eklenmemişse, değişmez. Aksi takdirde, eğer açıksa
veya görsel mod, düzenleme arabelleğine girilen ilk satıra ayarlayın. Aksi takdirde, olarak ayarlayın
düzenleme arabelleğine girilen son satır.

akım sütun: Olmayan olarak ayarla .

Kurtarmak
özet:
kayıt[tekrar][!] dosya

Eğer hayırsa '!' komut adına eklenir ve düzenleme arabelleği o zamandan beri değiştirildi
son tam yazma, bir hata olacaktır.

Eğer hayırsa dosya işlenen belirtilirse, geçerli yol adı kullanılacaktır. yoksa
geçerli yol adı veya dosya işlenen, bir hata olacaktır.

hakkında daha önce herhangi bir kurtarma bilgisi kaydedilmemişse dosya, kurtarmak komut
aynı şekilde davranmak düzenleme komut ve bu yönde bir bilgi mesajı
yazılacak.

Aksi takdirde, geçerli yol adını şu şekilde ayarlayın: dosyave düzenlemenin mevcut içeriğini değiştirin
geri kazanılan içeriği içeren arabellek dosya. Dosyanın birden çok örneği varsa
kurtarılacak, en son kaydedilen kurtarılacak ve bir bilgi
dosyanın kurtarılabilecek önceki sürümlerinin bulunduğuna dair mesaj
yazılı. Editör, düzenleme arabelleğinin içeriği önceden oluşturulmuş gibi davranacaktır.
değiştirilmiş.

akım dosya: için açıklandığı gibi ayarlayın. düzenleme Komut.

akım sütun: için açıklandığı gibi ayarlayın. düzenleme Komut.

Geri sarma
özet:
yeniden [ind][!]

Eğer hayırsa '!' komut adına eklenir ve düzenleme arabelleği o zamandan beri değiştirildi
son tam yazma, dosya başarıyla yazılmadığı sürece bir hata olacaktır.
tarafından belirtilen otomatik yazma seçeneği.

Argüman listesi boşsa, bu bir hata olacaktır.

Geçerli argüman listesi referansı ve mevcut yol adı ilk olarak ayarlanacaktır.
argüman listesinde dosya adı.

Düzenleme arabelleğinin içeriğini, geçerli komut dosyası tarafından adlandırılan dosyanın içeriğiyle değiştirin.
yol adı. Herhangi bir nedenle dosyanın içeriğine erişilemiyorsa, düzenleme arabelleği
boş olacaktır.

Bu komut aşağıdakilerden etkilenecektir: otomatik yazma ve yazmak seçenekleri düzenleyin.

akım hat: için açıklandığı gibi ayarlayın. düzenleme Komut.

akım sütun: için açıklandığı gibi ayarlayın. düzenleme Komut.

set
özet:
bak[t][seçenek[=[değer]] ...][yok hayırseçenek ...][seçenek? ...][herşey]

Argüman belirtilmediğinde, değerini yazın. dönem düzenleme seçeneği ve bu seçenekler
değerleri varsayılan ayarlardan değiştirilen; tartışma ne zaman herşey is
belirtilen tüm seçenek değerlerini yazın.

Karakterin ardından bir seçenek adı verme '?' bunun mevcut değerine neden olur
seçeneği yazılabilir. bu '?' seçenek adından sıfır veya daha fazla ayrılabilir
karakterler. bu '?' yalnızca Boolean değerli seçenekler için gerekli olacaktır. Boole
seçenekler form tarafından değerler verilebilir set seçenek onları açmak veya set yok hayırseçenek çevirmek
onları kapalı; dize ve sayısal seçenekler form tarafından atanabilir set seçenek=değer. Herhangi
dizelerdeki karakterler, her birinin önüne getirilerek olduğu gibi dahil edilebilir. bir ile
kaçmak . Tek bir set komutu ile birden fazla seçenek ayarlanabilir veya listelenebilir
her biri bir sonrakinden bir veya daha fazla ayrılmış birden çok argüman belirterek
karakterler.

Yerimizi Düzenle Opsiyonlar in ex belirli seçeneklerle ilgili ayrıntılar için.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Kabuk
özet:
NS[arşın]

adlı programı çağırın. kabuk tek argümanla düzenleme seçeneği -i (etkileşimli
modu). Programdan çıkıldığında düzenlemeye devam edilecektir.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Kaynak
özet:
Bu yüzden[Urce] dosya

Oku ve yürüt ex gelen komutlar dosya. Dosyadaki boş satırlar,
görmezden geldi.

akım hat: Kişi için belirtildiği şekilde ex emreder.

akım sütun: Kişi için belirtildiği şekilde ex emreder.

Vekil
özet:
[2 adres] s[yedek][/model/rep/[seçenekleri][saymak][bayraklar]]
[2 adres] &[seçenekleri][saymak][bayraklar]]
[2 adres] ~[seçenekleri][saymak][bayraklar]]

Desenin ilk örneğini değiştirin model dizeye göre rep her belirtilen
astar. (Görmek Düzenli İfadeler in ex ve Değiştirme Dizeler in ex.) Herhangi bir alfabetik olmayan,
olmayan sınırlayıcı dışında , '|', , veya çift tırnak kullanılabilir
yerine '/'. karakterler sınırlayıcılardan kaçmak için kullanılabilir,
karakterler ve diğer özel karakterler.

Sondaki sınırlayıcı atlanabilir model veya gelen rep komutun sonunda
astar. İkisi de olursa model ve rep belirtilmemiş veya boş (örneğin, "//")
son s komutu tekrarlanacaktır. Keşke model belirtilmemiş veya boş, son
Düzenleyicide kullanılan normal ifade kalıp olarak kullanılacaktır. Keşke rep değil
belirtilen veya boşsa, desen hiçbir şeyle değiştirilmeyecektir. eğer tamamı
değiştirme deseni '%', son değiştirme kalıbı bir s komutu kullanılacaktır.

girmek içinde rep (bir kaçış gerektirir içinde ex kip
ve bir kaçış -V açık veya vi modu) çizgiyi o noktada böler,
düzenleme arabelleğinde yeni bir satır oluşturma. bu atılacaktır.

If seçenekleri mektubu içerir 'G' (global), desenin tüm örtüşmeyen örnekleri
satırında değiştirilecektir.

If seçenekleri mektubu içerir 'C' (onaylamak), daha sonra her oyuncu değişikliğinden önce çizgi
yazılacak; yazılı satır önceki tüm ikameleri yansıtacaktır. Aşağıdakiler hakkında
astar, satırdaki karakterlerin altına karakterler yazılacaktır.
önce model değiştirilecek ve '^' karakterlerin altına yazılan karakterler
Dahil model değiştirilecek. bu ex yardımcı program daha sonra bir yanıt bekleyecektir
Kullanıcı. Olumlu bir yanıt, değişikliğin yapılmasına neden olurken, diğer herhangi bir
girdi yerine geçmez. Olumlu bir yanıt bir satırdan oluşacaktır
başındaki olumlu yanıtla (mevcut yerel ayar tarafından tanımlandığı gibi)
astar. Bu satır aynı şekilde düzenlemeye tabi olacaktır. ex Komut satırı.

Kesilirse (ASENKRON OLAYLAR bölümüne bakın),
kullanıcı kesmeden sonra düzenleme arabelleğinde korunacaktır.

Hatırlanan arama yönü ayarlanmamışsa, s komut onu iletecek şekilde ayarlayacaktır.

İkinci Özet'te, & komut, önceki değişikliği tekrar edecektir, sanki &
komutu ile değiştirildi:

s/model/rep/

nerede model ve rep öncekinde belirtildiği gibidir s, &ya da ~ Komut.

Üçüncü Özette, ~ komut, önceki değişikliği tekrar edecektir, sanki '~'
ile değiştirildi:

s/model/rep/

nerede model editöre belirtilen son normal ifade olacaktır ve rep -ecek
önceki ikameden olmak (dahil & ve ~) emretmek.

Bu komutlar aşağıdakilerden etkilenecektir: LC_MESSAGES Çevre değişkeni.

akım hat: Bir değişikliğin meydana geldiği veya yoksa değişmediği son satıra ayarlayın
ikame meydana geldi.

akım sütun: Olmayan olarak ayarla .

Askıya almak
özet:
su[geçirmek][!]
st[op][!]

Denetimin çağırma işlemine dönmesine izin verin; ex varmış gibi kendini askıya alacaktır
SIGTSTP sinyalini aldı. Askıya alma, yalnızca iş denetimi şurada etkinleştirilirse gerçekleşir:
çağıran kabuk (açıklamaya bakın set -m).

Bu komutlar aşağıdakilerden etkilenecektir: otomatik yazma ve yazmak seçenekleri düzenleyin.

Akım askıya almak karakter (bkz. arpacık) eşdeğer olacaktır askıya almak Komut.

Etiket
özet:
ta[g][!] etiket dizisi

Bir etiket dosyasının formatı tarafından belirtilen şekilde değilse, sonuçlar belirtilmez. etiketler
yardımcı program (bkz. etiketler) tanım.

The etiket komut arayacak etiket dizisi tarafından atıfta bulunulan etiket dosyalarında etiket düzenleme
seçeneği, belirtilen sırayla, bir referansa kadar etiket dizisi bulunan. Dosyalar
baştan sona aranacaktır. Referans bulunamazsa, bu bir hata olacaktır.
ve bu yönde bir hata mesajı yazılacaktır. Referans bulunamazsa veya
içinde atıfta bulunulan bir dosya işlenirken bir hata oluşur. etiket düzenleme seçeneği, bir
ve böyle bir hatanın ilk ortaya çıkışında bir hata mesajı yazılacaktır.

Aksi takdirde, etiket dosyası bir kalıp içeriyorsa, kalıp normal bir kalıp olarak ele alınacaktır.
düzenleyicide kullanılan ifade; örneğin, amaçları için s Komut.

Eğer etiket dizisi geçerli yol adından farklı bir ada sahip bir dosyadaysa,
o dosyanın adına geçerli yol adı ve düzenleme arabelleğinin içeriğini değiştirin
bu dosyanın içeriği ile. Bu durumda hayır ise '!' komut adına eklenir,
ve düzenleme arabelleği son tam yazma işleminden bu yana değiştirildi, bu bir hata olacaktır,
dosya tarafından belirtildiği gibi başarıyla yazılmadığı sürece otomatik yazma seçeneği.

Bu komut aşağıdakilerden etkilenecektir: otomatik yazma, etiket, etiket uzunluğu, ve yazmak düzenleme
seçenekleri.

akım hat: Etiketler dosyası bir satır numarası içeriyorsa, bu satır numarasına ayarlayın. Eğer
satır numarası düzenleme arabelleğindeki son satırdan büyükse, bir hata mesajı
yazılacak ve mevcut satır, belirtilen şekilde ayarlanacaktır. düzenleme Komut.

Etiketler dosyası bir desen içeriyorsa, desenin şablondaki ilk oluşumuna ayarlayın.
dosya. Eşleşen bir desen bulunamazsa, bir hata mesajı yazılacak ve mevcut
hattı için belirtildiği gibi ayarlanacaktır. düzenleme Komut.

akım sütun: Etiketler dosyası bir satır numarası referansı içeriyorsa ve bu satır numarası
düzenleme arabelleğindeki son satırdan daha büyük değildi veya etiketler dosyası bir
desen ve bu desen bulundu, olmayan olarak ayarlandı. . Aksi takdirde, belirtilen şekilde ayarlayın
the düzenleme Komut.

kısaltmayı kaldır
özet:
bir[kısa] ss

If ss geçerli kısaltmalar listesinde bir giriş değil (bkz. Kısaltmak), olacak
bir hata. Aksi takdirde, silin ss kısaltmalar listesinden.

akım hat: Değişmedi.

akım sütun: Değişmedi.

geri al
özet:
u[eri]

Düzenlemenin içeriğini değiştiren son komut tarafından yapılan değişiklikleri geri alın
tampon, dahil geri. Bu amaçla, global, v, açık, ve görsel komutlar ve
arabellek yürütmelerinden ve eşlenmiş karakter genişletmelerinden kaynaklanan komutlar dikkate alınır.
tek komutlar.

Öncesinde geri alınabilecek bir işlem yoksa geri komut, bir hata olacaktır.

Eğer geri komut işaretlenmiş satırları geri yükler, işaret de geri yüklenir
satırların silinmesinden sonra sıfırlanmadıkça.

akım hat:

1. Dosyada satırlar eklenir veya değiştirilirse, eklenen veya değiştirilen ilk satıra ayarlayın.

2. Varsa, ilk satır silinmeden önceki satırı ayarlayın.

3. Düzenleme arabelleği boş değilse 1'e ayarlayın.

4. Sıfıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Eşlemeyi kaldır
özet:
unm[ap][!] ss

If '!' komut adına eklenir ve eğer ss metin listesinde bir giriş değil
giriş modu harita tanımları, bir hata olacaktır. Aksi takdirde, silin ss listesinden
metin giriş modu harita tanımları.

Eğer hayırsa '!' komut adına eklenir ve eğer ss listesinde bir giriş değil
komut modu harita tanımları, bir hata olacaktır. Aksi takdirde, silin ss listesinden
komut modu harita tanımları.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Sürümü
özet:
ve[rsiyon]

Düzenleyici için sürüm bilgilerini içeren bir mesaj yazın. mesajın formatı
belirtilmemiş.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Görsel
özet:
[1 adres] vi[tatlı][tip][saymak][bayraklar]

If ex şu anda açık veya görsel modda, görsel komutun Özeti ve davranışı
ile aynı olacaktır düzenleme tarafından belirtildiği gibi komut Düzenle.

Aksi takdirde, bu komutun blok modlu terminallerde veya terminallerde desteklenmesine gerek yoktur.
yetersiz yetenekler. Standart girdi, standart çıktı veya standart hata değilse
terminal cihazları, sonuçlar belirtilmemiş.

If saymak değeri belirtilirse, pencere düzenleme seçeneği olarak ayarlanmalıdır saymak (gibi
tarif edilmek pencere). Eğer '^' tür karakteri de belirtildi, pencere düzenleme
seçenek, tip karakteri tarafından kullanılmadan önce ayarlanmalıdır.

Görsel moda girin. Eğer tip belirtilmemişse, sanki bir tip of '+' oldu
belirtildi. NS tip aşağıdaki etkilere neden olacaktır:

+ Belirtilen satırın başlangıcını ekranın en üstüne yerleştirin.

- Belirtilen satırın sonunu ekranın altına yerleştirin.

. Belirtilen satırın başlangıcını ekranın ortasına yerleştirin.

^ Belirtilen satır, değerden küçük veya buna eşitse pencere düzenleme seçeneği,
satırı 1'e ayarlayın; aksi takdirde, satırı değeri kadar azaltın. pencere düzenleme
seçenek eksi 1. Bu satırın başlangıcını, satırın altına yakın olacak şekilde yerleştirin.
mümkün olduğunca görüntülenen satırlar, hala değerini görüntülerken pencere düzenleme
seçenek satır sayısı.

akım hat: Belirtilen satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Yazmak
özet:
[2 adres] w[ayin][!][>>][dosya]
[2 adres] w[ayin][!][dosya]
[2 adres] wq[!][>>][dosya]

Hiçbir satır belirtilmemişse, satırlar tüm dosya için varsayılan olacaktır.

Komuta wq a'ya eşdeğer olacaktır yazmak komut ve ardından bir çıkmak komut; wq!
eşdeğer olacaktır yazmak! ardından çıkmak. Her iki durumda da, eğer yazmak komuta
başarısız çıkmak teşebbüs edilmeyecektir.

Komut adının ardından bir veya daha fazla kişi gelmiyorsa karakterler veya dosya değil
öncesinde bir '!' karakter, yazmak bir dosyaya olacaktır.

1. Eğer >> argüman belirtildi ve dosya zaten mevcutsa, satırlar
içeriğini değiştirmek yerine dosyaya eklenir. Eğer >> argüman
belirtilen ve dosya zaten mevcut değilse, yazma işleminin yapılıp yapılmadığı belirtilmemiştir.
gibi devam edecek >> argüman belirtilmedi veya yazma başarısız olursa.

2. Eğer Sadece oku düzenleme seçeneği ayarlandı (bkz. Sadece oku) yazmak başarısız olacaktır.

3. Eğer dosya belirtildi ve geçerli yol adı değil ve dosya var, yazmak
başarısız olacaktır.

4. Eğer dosya belirtilmemişse, geçerli yol adı kullanılacaktır. akım yoksa
yol adı, yazmak komut başarısız olacaktır.

5. Geçerli yol adı kullanılmışsa ve geçerli yol adı, dosya
or okumak komutlar ve dosya mevcutsa, yazmak başarısız olacaktır. Eğer yazmak is
başarılı, sonraki yazmaks bu nedenle başarısız olmayacaktır (mevcut
yol adı tekrar değiştirilir).

6. Tüm düzenleme arabelleği yazılmıyorsa ve yazılacak dosya mevcutsa,
yazmak başarısız olacaktır.

1., 2., 3. ve 5. kurallar için, yazmak karakter ekleyerek zorlanabilir '!' için
komut adı.

2., 3. ve 5. kurallar için, yazmak ayarlayarak zorlanabilir yazmak düzenleme seçeneği.

Ek, uygulama tanımlı testler, yazmak başaramamak.

Düzenleme arabelleği boşsa, içeriği olmayan bir dosya yazılacaktır.

Yazılan satır ve bayt sayısını belirten bir bilgilendirme mesajı yazılacaktır.

Aksi takdirde, komutun ardından bir veya daha fazla karakterler ve dosya
öncesinde '!', satırın geri kalanı '!' olmalı '%', '#', ve '!'
açıklandığı gibi genişletilmiş karakterler Komuta çizgi ayrıştırma in ex.

The ex yardımcı program daha sonra tarafından adlandırılan programa iki argüman iletecektir. kabuk düzenleme
seçenek; ilk olacak -c ve ikincisi, genişletilmiş argümanlar olacaktır. yazmak
tek bir argüman olarak komut. Belirtilen satırlar standart girişe yazılacaktır.
komutun. Varsa, programın standart hatası ve standart çıktısı,
için açıklandığı gibi yazılmış baskı emretmek. Bu çıktıdaki son karakter bir değilse
, a çıktının sonuna yazılacaktır.

Özel anlamı '!' Aşağıdaki yazmak komut kaçarak geçersiz kılınabilir
onunla bir karakter.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Yazmak ve Çıkış
özet:
[2 adres] x[it][!][dosya]

Düzenleme arabelleği son tamamlamadan bu yana değiştirilmediyse yazmak, çıkmak olmalı
eşdeğer çıkmak komut, veya eğer bir '!' komut adına eklenir, çıkış yapmak!.

Aksi takdirde, çıkmak eşdeğer olacaktır wq komut, veya eğer bir '!' e eklenir
komut adı, için wq!.

akım hat: Değişmedi.

akım sütun: Değişmedi.

birden çekme
özet:
[2 adres] ya[nk][tampon][saymak]

Belirtilen satırları belirtilen arabelleğe (varsayılan olarak adsız arabelleğe) kopyalayın.
satır modu arabelleği haline gelecektir.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Ayarlamak Pencere
özet:
[1 adres] z[!][tip ...][saymak][bayraklar]

Hiçbir satır belirtilmemişse, geçerli satır varsayılan olacaktır; Eğer tip olarak atlanmıştır
peki, mevcut satır değeri önce 1 artırılacaktır.
satırı, düzenleme arabelleğindeki son satırdan daha büyük olmasına neden olur, bir
hata.

Eğer varsa arasındaki karakterler tip argüman ve önceki z komut adı
ya da isteğe bağlı '!' karakter, bir hata olacaktır.

If saymak değeri belirtilirse, pencere düzenleme seçeneği olarak ayarlanmalıdır saymak (gibi
tarif edilmek pencere). eğer saymak atlanırsa, varsayılan değerin 2 katı olacaktır.
kaydırma düzenleme seçeneği veya ! belirtilmişse, ekrandaki satır sayısı eksi 1'dir.

If tip atlanır, o zaman saymak belirtilen satır ile başlayan satırlar yazılacaktır.
Aksi takdirde, saymak tarafından belirtilen satırla başlayan satırlar tip argüman olacak
yazılı.

The tip argüman yazılacak satırları değiştirecektir. olası değerleri tip gibi olduğu
aşağıdaki gibidir:

− Belirtilen satır aşağıdaki değer kadar azaltılacaktır:

(((sayı of ``-'' karakter) x saymak) -1)

Hesaplama 1'den küçük bir sayı ile sonuçlanacaksa, bu bir hata olacaktır. Yazı yazmak
satırın yeni değerinden başlayarak düzenleme arabelleğindeki satırlar saymak çizgiler veya
düzenleme arabelleğindeki son satır yazılmıştır.

+ Belirtilen satır aşağıdaki değer kadar artırılacaktır:

(((sayı of ``+'' karakter) -1) x saymak) +1

Hesaplama, düzenlemedeki son satırdan daha büyük bir sayı ile sonuçlanacaksa
tampon, bir hata olacaktır. Yeni satırdan başlayarak düzenleme arabelleğinden satırlar yazın
satırının değeri, kadar saymak satırlar veya düzenleme arabelleğindeki son satır
yazılı.

=,. Birden fazla ise "." or '=' belirtilirse, bir hata olacaktır. Devamındaki
adımlar atılacaktır:

1. Eğer saymak sıfırdır, hiçbir şey yazılamaz.

2. İstediğiniz kadar yazın N düzenleme arabelleğindeki geçerli satırdan önceki satırlar
mevcut. Eğer saymak or '!' belirtildi, N olmalı:

(saymak −1) /2

Aksi takdirde, N olmalı:

(saymak -3) /2

If N 3'ten küçük bir sayı ise satır yazılamaz.

3. Eğer '=' tür karakteri olarak belirtildi, aşağıdakilerden oluşan bir satır yazın
ekrandaki sütun sayısının ikiye bölünmesinden daha küçük veya 40 '-'
karakterler.

4. Geçerli satırı yazın.

5. 3. adımı tekrarlayın.

6. İstediğiniz kadar yazın N düzenleme arabelleğindeki geçerli satırdan sonraki satırlar olduğu gibi.
N 2. adımda olduğu gibi tanımlanmalıdır. N 3'ten küçük bir sayıdır, hiçbir satır
yazılı. Eğer saymak 3'ten küçükse satır yazılmaz.

^ Belirtilen satır aşağıdaki değer kadar azaltılacaktır:

(((sayı of ``^'' karakter) + 1) x saymak) -1

Hesaplama 1'den küçük bir sayı ile sonuçlanacaksa, bu bir hata olacaktır. Yazı yazmak
satırın yeni değerinden başlayarak düzenleme arabelleğindeki satırlar saymak çizgiler veya
düzenleme arabelleğindeki son satır yazılmıştır.

akım hat: Tür belirtilmemişse, yazılan son satıra ayarlayın. =, bu durumda, olarak ayarlayın
belirtilen satır.

akım sütun: Olmayan olarak ayarla .

Kaçış
özet:
! komuta
[adr]! komuta

sonra satırın içeriği '!' olmalı '%', '#', ve '!' genişletilmiş karakterler
tarif edildiği gibi Komuta çizgi ayrıştırma in ex. Genişletme satırın metnine neden oluyorsa
değiştirmek için, yeniden görüntülenecek ve öncesinde tek bir '!' karakter.

The ex yardımcı program tarafından adlandırılan programı yürütür. kabuk düzenleme seçeneği. iki tane geçecek
programa argümanlar; ilk olacak -c, ve ikincisi genişletilmiş olacaktır
argümanlar ! tek bir argüman olarak komut.

Hiçbir satır belirtilmemişse, standart girdi, standart çıktı ve standart hata
program, standart giriş, standart çıkış ve standart hataya ayarlanacaktır. ex
program çağrıldığında. Ayrıca, düzenleme yapılırsa bir uyarı mesajı yazılacaktır.
arabellek, son tam yazma işleminden bu yana değiştirildi ve uyarmak düzenleme seçeneği ayarlandı.

Eğer satırlar belirtilmişse programa standart girdi olarak geçirilecek ve
programın standart çıktısı ve standart hatası, düzenlemedeki bu satırların yerini alacaktır.
tampon. Program çıktısındaki her satır ( karakterler veya son
çıktının hemen öncesinde bir ), ayrı bir satır olacaktır
düzenleme arabelleğinde. herhangi bir olay ve çıktıdaki çiftler
tek olarak kabul edilecektir karakterler. Belirtilen satırlar şuraya kopyalanacaktır:
adsız arabellek değiştirilmeden önce ve adsız arabellek bir satır haline gelecektir.
mod tamponu.

Eğer varsa ex modu, tek '!' karakter program tamamlandığında yazılacaktır.

Bu komut aşağıdakilerden etkilenecektir: kabuk ve uyarmak seçenekleri düzenleyin. hiçbir satır varsa
belirtilen, bu komut aşağıdakilerden etkilenecektir. otomatik yazma ve yazmak seçenekleri düzenleyin. Eğer
satırlar belirtilirse, bu komut aşağıdakilerden etkilenecektir. otomatik baskı düzenleme seçeneği.

akım hat:

1. Hiçbir satır belirtilmemişse, değiştirilmez.

2. Aksi takdirde, herhangi bir satır okunduysa, okunan son satırı ayarlayın.

3. Aksi takdirde, belirtilen satırların ilk satırından önceki satıra ayarlayın, eğer o satır ise
bulunmaktadır.

4. Aksi takdirde, düzenleme arabelleği boş değilse, düzenleme arabelleğinin ilk satırına ayarlayın.

5. Aksi takdirde, sıfıra ayarlayın.

akım sütun: Hiçbir satır belirtilmemişse, değiştirilmez. Aksi takdirde, olmayan olarak ayarlayın. .

vardiya Sol
özet:
[2 adres] <[<...][saymak][bayraklar]

Belirtilen satırları satırın başına kaydırın; sütun konumlarının sayısı
kaydırılan, komut karakterlerinin sayısı çarpı değerin değeri olacaktır. vardiya genişliği düzenleme
seçenek. sadece lider karakterler silinecek veya başka karakterlere dönüştürülecektir.
değişen karakterler; diğer karakterler etkilenmeyecektir.

Kaydırılacak satırlar, satır haline gelecek olan adsız arabelleğe kopyalanacaktır.
mod tamponu.

Bu komut aşağıdakilerden etkilenecektir: otomatik baskı düzenleme seçeneği.

akım hat: Belirtilen satırlarda son satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

vardiya Sağ
özet:
[2 adres] >[> ...][saymak][bayraklar]

Belirtilen satırları satırın başlangıcından uzağa kaydırın; sütun konumlarının sayısı
kaydırılacak, komut karakterlerinin sayısı çarpı değerin değeri olacaktır. vardiya genişliği
düzenleme seçeneği. Vardiya eklenerek gerçekleştirilecektir önek olarak karakterler
çizgi veya değişen lider diğer karakterlere karakterler. boş satırlar
değiştirilmeyecektir.

Kaydırılacak satırlar, satır haline gelecek olan adsız arabelleğe kopyalanacaktır.
mod tamponu.

Bu komut aşağıdakilerden etkilenecektir: otomatik baskı düzenleme seçeneği.

akım hat: Belirtilen satırlarda son satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

-D
özet:
-NS

sonrakini yaz n çizgiler, nerede n değerlerinin minimumudur. kaydırma düzenleme seçeneği ve
düzenleme arabelleğindeki geçerli satırdan sonraki satır sayısı. Geçerli satır ise
düzenleme arabelleğinin son satırı bir hata olacaktır.

akım hat: Yazılan son satıra ayarlayın.

akım sütun: Olmayan olarak ayarla .

Yazmak çizgi Numara
özet:
[1 adres] = [bayraklar]

If hat belirtilmemişse, düzenleme arabelleğindeki son satıra varsayılan olacaktır. Yaz
belirtilen satırın satır numarası.

akım hat: Değişmedi.

akım sütun: Değişmedi.

Gerçekleştirmek
özet:
[2 adres] @ tampon
[2 adres] * tampon

Herhangi bir arabellek belirtilmemişse veya olarak belirtilmişse '@' or '*', yürütülen son tampon
Kullanılmış. Daha önce hiçbir arabellek yürütülmediyse, bu bir hata olacaktır.

Adresler tarafından belirtilen her satır için geçerli satırı ayarlayın (".") belirtilen
satırı ve adlandırılmış içeriği yürütün tampon (o zamanlar oldukları gibi @ komuta
olarak idam edildi) ex komutlar. Satır modu arabelleğinin her satırı için ve sonuncusu hariç tümü için
karakter modu arabelleğinin satırı, ex komut ayrıştırıcı, satır
tarafından sonlandırıldı .

Bu işlem sırasında bir hata oluşursa veya adreslerin belirttiği bir satır açılmazsa
geçerli satır ona ayarlandığında veya tek bir satırdan fazlası belirtildiğinde var
adreslerle değiştirilir ve düzenleme arabelleğinin içeriği değiştirilir (örneğin, ex
düzenleme: komutu) bir hata mesajı yazılacak ve bundan kaynaklanan başka komutlar olmayacaktır.
bu komutun yürütülmesi işlenecektir.

akım hat: Kişi için belirtildiği şekilde ex emreder.

akım sütun: Kişi için belirtildiği şekilde ex emreder.

Düzenli İfadeler in ex
The ex yardımcı program, temel normalin bir üst kümesi olan düzenli ifadeleri destekleyecektir.
POSIX.1‐2008'in Temel Tanımlar cildinde açıklanan ifadeler, Bölüm 9.3, Basic
Düzenli İfadeler. Boş bir normal ifade ("//") sonuncuya eşdeğer olacaktır
normal ifadeyle karşılaşıldı.

Adreslerde satırları belirtmek için normal ifadeler ve bazı komutlarda (için
örnek vekil komutu), değiştirilecek bir satırın bölümlerini belirtmek için.

Temel düzenli ifadeleri geliştirmek için aşağıdaki yapılar kullanılabilir:

\< Başlangıcı eşleştir sözcük. (bkz. tanımı sözcük başında
Komuta açıklamaları in ex.)

\> A'nın sonunu eşleştir sözcük.

~ Son yedek parçayı eşleştirin vekil emretmek. bu ('~')
karakteri ile normal bir karakter olmak için normal bir ifadede kaçılabilir.
özel bir anlamı yok. bu atılacaktır.

editör seçeneği ne zaman sihirli ayarlanmaz, yalnızca özel anlamları olan karakterler
be '^' bir kalıbın başında, '$' bir kalıbın sonunda ve . bu
karakterler ".", '*', '[', ve '~' öncesinde belirtilmediği sürece sıradan karakterler olarak kabul edilecektir.
tarafından ; önünde bir özel anlamlarını yeniden kazanacaklar,
veya durumunda , tek olarak ele alınmalı . karakterler
diğer karakterlerden kaçmak için kullanılan atılacaktır.

Değiştirme Dizeler in ex
Karakter '&' ('\&' editör seçeneği ise sihirli ayarlanmadı) değiştirme dizesinde
değiştirilecek desenle eşleşen metni temsil edecektir. Karakter '~' ('\~' if
sihirli ayarlanmamış) önceki parçanın yedek parçası ile değiştirilecektir. vekil
emretmek. Sekans '\n', Burada n bir tamsayıdır, eşleşen metinle değiştirilecektir
karşılık gelen geri referans ifadesi ile. Karşılık gelen geri referans ise
ifade eşleşmiyor, ardından karakterler '\n' boş dize ile değiştirilecektir.

Teller '\l', '\u', '\L', ve '\U' içindeki öğelerin durumunu değiştirmek için kullanılabilir
değiştirme dizesi (kullanarak '\&' or "\"rakam) gösterimi. dize '\l' ('\u') acak
takip eden karakterin küçük harfe (büyük harf) dönüştürülmesine neden olur. dize '\L'
('\U') kendisinden sonraki tüm karakterlerin küçük harfe dönüştürülmesine neden olur
(büyük harf) dizeye kadar ikame tarafından eklendikleri için '\e' or '\E'Ya da
değiştirme dizesinin sonuyla karşılaşıldı.

Aksi takdirde, aşağıdaki herhangi bir karakter bu literal olarak ele alınacaktır
karakter ve kaçış atılacaktır.

ile vaka dönüştürmeye bir örnek s komut aşağıdaki gibidir:

:p
The kedi oturdu on the mat.
:s/\<.at\>/\u&/gp
The Kedi Cumartesi on the Mat.
:s/S\(.*\)M/S\U\1\eM/p
The Kedi SAT ON L' Mat.

Düzenle Opsiyonlar in ex
The ex yardımcı programı davranışını değiştiren bir dizi seçeneğe sahiptir. Bu seçenekler
kullanılarak değiştirilebilen varsayılan ayarlar set Komut.

Seçenekler, aksi belirtilmedikçe Boole'dir.

otomatik girinti, ai
[Varsayılan ayarlanmazsa]

If otomatik girinti ayarlandığında, giriş modundaki her satır girintili olacaktır (ilk önce
editör seçeneği tarafından belirlenen şekilde mümkün olduğunca karakterler sekme durağıve sonra kullanarak
karakterler) aşağıdaki gibi başka bir satırla hizalamak için:

1. Açık veya görsel moddaysa ve metin girişi satır yönelimli bir komutun parçasıysa (bkz.
GENİŞLETİLMİŞ AÇIKLAMA vi), ilk sütuna hizalayın.

2. Aksi takdirde, açık veya görsel modda ise, her satır için girinti şu şekilde ayarlanacaktır:
aşağıdaki gibidir:

a. Bu komutun bir parçası olarak daha önce bir satır eklenmişse,
varsayılan olarak son eklenen satırın girintisi veya
en -D karakteri Giriş Moda Komutları in vi.

B. Aksi takdirde, bir önceki geçerli satırın girintisine ayarlanacaktır, eğer
herhangi; aksi takdirde, ilk sütuna.

3. İçin ex a, i, ve c komutlar, her satır için girinti aşağıdaki gibi ayarlanacaktır:

a. Bu komutun bir parçası olarak daha önce bir satır eklenmişse,
varsayılan olarak son eklenen satırın girintisi veya
the eof karakter kaydırma.

B. Aksi takdirde, komut ex a komut satırına ayarlanacaktır.
varsa sonra eklenir; aksi takdirde ilk sütuna.

C. Aksi takdirde, komut ex i komut satırına ayarlanacaktır.
varsa daha önce eklenmiş; aksi takdirde ilk sütuna.

D. Aksi takdirde, komut ex c komut, girintiye ayarlanacaktır
hattın yerini aldı.

otomatik baskı, ap
[Varsayılan set]

If otomatik baskı ayarlandığında, her satırdan sonra geçerli satır yazılacaktır. ex değiştiren komut
geçerli düzenleme arabelleğinin içeriği ve her birinin ardından etiket etiketi olan komut
arama modeli bulundu veya etiket satırı numarası, aşağıdaki durumlar dışında geçerliydi:

1. Komut, açık veya görsel moddayken yürütüldü.

2. Komut, bir global or v komut veya @ tampon yürütme.

3. Komut şu şekildeydi: okumak düzenleme arabelleğine bir dosya okuyan komut.

4. Komut şuydu: eklemek, değişiklikya da eklemek Komut.

5. Komut, bir .

6. Geçerli satır, komuta belirtilen bir bayrakla yazılacaktır; Örneğin,
silmek # geçerli satırı bayrak değiştirici için belirtilen şekilde yazacaktır. silmek
komut tarafından belirtildiği gibi değil otomatik baskı düzenleme seçeneği.

otomatik yazma, aw
[Varsayılan ayarlanmazsa]

If otomatik yazma ayarlandı ve düzenleme arabelleği en son tamamen değiştirildiğinden beri değiştirildi
herhangi bir dosyaya yazıldığında, düzenleme arabelleğinin içeriği sanki ex yazmak
komut, tarafından etkilenen her komuttan önce bağımsız değişkenler olmadan belirtilmişti.
otomatik yazma düzenleme seçeneği yürütülür. karakter ekleme '!' herhangi birinin komut adına
arasında ex hariç komutlar '!' yazılmasını engelleyecektir. Yazma başarısız olursa, bir
hata verir ve komut yürütülmez.

güzelleştirmek, bf
[Varsayılan ayarlanmazsa]

If güzelleştirmek dışındaki tüm yazdırılamayan karakterler ayarlanır. , , ve
besleme> karakterler, dosyalardan okunan metinlerden atılacaktır.

dizin, dir
[Varsayılan uygulama tanımlı]

Bu seçeneğin değeri, düzenleyici arabelleğinin içinde olacağı dizini belirtir.
yerleştirildi. Bu dizin kullanıcı tarafından yazılabilir değilse, editör çıkar.

uyumlu, ed
[Varsayılan ayarlanmazsa]

Varlığına neden olur g ve c hatırlanacak yedek komutlardaki son ekler ve
ekleri tekrarlanarak değiştirilir.

hata zilleri, eb
[Varsayılan ayarlanmazsa]

editör varsa ex modu ve terminal, öne çıkan bir modu desteklemiyor (örn.
ters video) ve hata zilleri ayarlandığında, hata mesajlarından önce,
terminal.

exrc
[Varsayılan ayarlanmazsa]

If exrc ayarlandı, ex herhangi birine erişecek .exrc içinde açıklandığı gibi geçerli dizindeki dosya
Başlatma in ex ve vi. Eğer exrc ayarlanmamış, ex herhangi birini görmezden gelecek .exrc içindeki dosyayı
Başlatma sırasında geçerli dizin, geçerli dizin
ANA SAYFA Çevre değişkeni.

göz ardı etmek, ic
[Varsayılan ayarlanmazsa]

If göz ardı etmek ayarlandığında, büyük harf ve küçük harf gösterimi olan karakterler
normal ifade amaçları için eşdeğer olarak kabul edilen bu temsillere sahip olmak
karşılaştırması.

The göz ardı etmek düzenleme seçeneği, hatırlanan tüm düzenli ifadeleri etkiler; Örneğin,
ayarını kaldırmak göz ardı etmek düzenleme seçeneği bir sonraki vi n arama komutu
büyük/küçük harfe duyarlı bir biçimde son temel düzenli ifade.

liste
[Varsayılan ayarlanmazsa]

If liste ayarlanır, içindeyken yazılan arabellek satırlarını düzenleyin ex komut modu olarak yazılacaktır
için belirtilen baskı ile komut l bayrak belirtildi. Açık veya görsel modda, her biri
düzenleme arabelleği satırı, belirtilen şekilde görüntülenecektir. ex baskı ile komut l bayrak
belirtildi. Açık veya görsel metin giriş modunda, imleç herhangi bir
satırdaki karakter, üzerinde duracaktır '$' satırın sonunu işaretlemek.

sihirli
[Varsayılan set]

If sihirli ayarlandığında, normal ifadelerdeki karakterlerin yorumunu değiştirin ve
ikame değiştirme dizeleri (bkz. Düzenli İfadeler in ex ve Değiştirme Dizeler in
ex).

mesaj
[Varsayılan set]

If mesaj ayarlandığında, başkalarının kullanma izni yazmak or konuşmak yazılacak komutlar
terminal, açık veya görsel moddayken açılacaktır. Kabuk seviyesi komutu mesaj
n herhangi bir ayarından öncelikli olacaktır. ex mesaj seçenek; yani, eğer mesaj y oldu
editör başlamadan önce (veya bir kabuk çıkışında), örneğin:

:!mesaj y

the mesaj seçeneği ex gelen mesajları bastırır, ancak mesaj seçenek olmaz
eğer gelen mesajları etkinleştir mesaj n verildiği.

numara, nu
[Varsayılan ayarlanmazsa]

If numara ayarlanır, içindeyken yazılan arabellek satırlarını düzenleyin ex komut modu ile yazılacaktır
tarafından belirtilen biçimde satır numaraları baskı ile komut # bayrak belirtildi. İçinde
ex metin giriş modunda, her satırın önüne, metinde sahip olacağı satır numarası gelir.
dosyası.

Açık veya görsel modda, her düzenleme arabelleği satırı, bir önceki satırla görüntülenecektir.
numarası, tarafından belirtilen formatta ex baskı ile komut # bayrak belirtildi. Bu
değerlendirilmesi amacıyla satır numarası hattın bir parçası olarak kabul edilmeyecektir.
geçerli sütun; yani, sütun konumu 1, aşağıdaki ilk sütun konumu olacaktır.
tarafından belirtilen biçim baskı Komut.

paragraflar, paragraf
[POSIX yerel ayarında varsayılan IPLPPPQPP LIpplpipbp]

The paragraflar düzenleme seçeneği, açık ve
görsel mod komutları. bu paragraflar düzenleme seçeneği bir karakter dizisine ayarlanabilir
sıfır veya daha fazla karakter çiftinden oluşur. Tek sayıya ayarlamak bir hata olacaktır.
Karakter sayısı.

istemi
[Varsayılan set]

If istemi ayarlandı, ex komut modu girişi için bir (':'); ne zaman
ayarlanmadığında, herhangi bir istem yazılmaz.

Sadece oku
[Varsayılan görmek metin]

Eğer Sadece oku düzenleme seçeneği ayarlandığında, salt okunur mod etkinleştirilecektir (bkz. Yazmak.)
Sadece oku Aşağıdaki koşullardan herhangi biri mevcutsa, düzenleme seçeneği başlatılacaktır.
doğru:

* Komut satırı seçeneği −R belirtildi.

* Eşdeğer eylemlerin gerçekleştirilmesi erişim() işlevi aşağıdakilerle çağrılır
argümanlar dosyanın yazma iznine sahip olmadığını gösterir:

1. Geçerli yol adı, yol argüman.

2. sabit W_OK olarak kullanılır mod argüman.

The Sadece oku düzenleme seçeneği, uygulama tanımlı diğer için ayarlamak üzere başlatılabilir
sebepler. bu Sadece oku düzenleme seçeneği, herhangi bir özel duruma bağlı olarak unset olarak başlatılmayacaktır.
Kullanıcının veya işlemin ayrıcalıkları. bu Sadece oku düzenleme seçeneği, her
düzenleme arabelleğinin içeriğinin değiştirildiği süre (örneğin, bir düzenleme or sonraki
komutu) kullanıcı tarafından açıkça ayarlanmadıkça, bu durumda ayarlanana kadar ayarlı kalacaktır.
kullanıcı bunu açıkça kaldırır. Ayarlanmadığında, her seferinde yeniden başlatılacaktır.
düzenleme arabelleğinin içeriği değiştirilir.

redraw
[Varsayılan ayarlanmazsa]

Düzenleyici, aptal bir terminalde akıllı bir terminali simüle eder. (Bunun muhtemel olması nedeniyle
terminale büyük miktarda çıktı gerektirir, yalnızca yüksek iletimde faydalıdır
hızlar.)

remap
[Varsayılan set]

If remap ayarlanırsa, harita çevirisi diğer haritalar açısından tanımlanan haritalara izin verir;
nihai bir ürün elde edilene kadar çeviri devam edecektir. Ayarlanmadıysa, yalnızca bir adım
tercüme yapılacaktır.

rapor
[Varsayılan 5]

Bunun değeri rapor düzenleme seçeneği, hangi satırların ekleneceğini, kopyalanacağını,
düzenleme arabelleğinde silinen veya değiştirilen bir bilgi mesajının yazılmasına neden olur
kullanıcıya. Aşağıdaki koşullar bir bilgi mesajına neden olacaktır. Mesaj
eklenen, kopyalanan, silinen veya değiştirilen satırların sayısını içermelidir, ancak başka türlü
belirtilmemiş.

* Bir ex or vi editör komutu, bunun dışında açık, geriya da görsel, bu en azından değiştirir
değeri rapor seçenek satırı sayısını düzenleyin ve bir ex
global or v komut veya ex or vi arabellek yürütme, bilgi amaçlı bir
yazılacak mesaj.

* Bir ex birden çekme or vi y or Y en azından değerini kopyalayan komut rapor düzenleme
seçenek artı 1 satır sayısı ve bir ex global or v komut veya
ex or vi tampon yürütme, bir bilgi mesajının yazılmasına neden olur.

* Bir ex global, v, açık, geriya da görsel komut veya ex or vi ekleyen arabellek yürütme
veya en azından toplam değerinin toplamını siler. rapor seçenek satır sayısını düzenle,
ve bir parçası olmayan ex global or v komut veya ex or vi arabellek yürütme,
bilgilendirme mesajı yazılmasına neden olacaktır. (Örneğin, 3 satır olsaydı
sırasında eklenen ve 8 satır silinen ex görsel komut, 5 karşılaştırılan sayı olacaktır
karşı rapor komut tamamlandıktan sonra düzenleme seçeneği.)

kaydırma scr
[Varsayılan (ekrandaki satır sayısı -1)/2)

Değeri kaydırma düzenleme seçeneği, kaydırılan satır sayısını belirleyecektir. ex
-D ve z komutlar. İçin vi -D ve -U komutları, olacak
önceki satır yokken kaydırılacak ilk satır sayısı -D veya -U komutu
idam edildi.

bölümler
[POSIX yerel ayarında varsayılan NHSHH HUnhsh]

The bölümler düzenleme seçeneği, açık ve
görsel mod komutları. bu bölümler düzenleme seçeneği, aşağıdakilerden oluşan bir karakter dizisine ayarlanabilir:
sıfır veya daha fazla karakter çifti; tek sayıya ayarlamak bir hata olacaktır.
karakterler.

kabuk, sh
[Ortam değişkeninden varsayılan SHELL]

Bu seçeneğin değeri bir dize olacaktır. Varsayılan, SHELL
Çevre değişkeni. Eğer SHELL ortam değişkeni boş veya boş, sh (görmek sh)
yardımcı program varsayılan olacaktır.

vardiya genişliği, sw
[Varsayılan 8]

Bu seçeneğin değeri, kullanılan girinti seviyesinin sütunlarındaki genişliği verecektir.
otomatik girinti sırasında ve shift komutları ile (< ve >).

gösteri maçı, sm
[Varsayılan ayarlanmazsa]

için açıklanan işlevsellik gösteri maçı düzenleme seçeneğinin blokta desteklenmesi gerekmez
mod terminalleri veya yetersiz yeteneklere sahip terminaller.

If gösteri maçı açık veya görsel modda ayarlandığında, ')' or '}' yazılırsa, eşleşen
'(' or '{' şu anda ekranda görünüyor, eşleşen '(' or '{' işaretlenecek
imleci belirsiz bir süre boyunca konumuna hareket ettirmek.

gösteri modu
[Varsayılan ayarlanmazsa]

If gösteri modu açık veya görsel modda ayarlandığında, editörün içinde bulunduğu mevcut mod
ekranın son satırında görüntülenecektir. Komut modu ve metin giriş modu
farklılaştırılmış; diğer belirtilmemiş modlar ve uygulama tanımlı bilgiler olabilir
Görüntülenen.

yavaş aç
[Varsayılan ayarlanmazsa]

If yavaş aç açık ve görsel metin giriş modları sırasında ayarlanır, editör güncelleme yapmaz
karakterleri görüntüleyen görüntü satırı sütunları dışındaki ekranın bölümleri
kullanıcı tarafından girildi (bkz. Giriş Moda Komutları in vi).

sekme durağı, ts
[Varsayılan 8]

Bu düzenleme seçeneğinin değeri, bir tarafından kullanılan sütun sınırını belirtecektir. içinde
göster (bkz. otomatik baskı, ap ve Giriş Moda Komutları in vi).

etiket uzunluğu, tl
[Varsayılan sıfır]

Bu düzenleme seçeneğinin değeri, girilebilecek maksimum karakter sayısını belirtecektir.
kullanıcı tarafından belirtilen etiket adında ve etiketlerdeki etiket adında önemli olarak kabul edilir
dosya. Değer sıfır ise, her iki etiket adındaki tüm karakterler anlamlı olacaktır.

etiketler
[Varsayılan görmek metin]

Bu düzenleme seçeneğinin değeri bir dize olacaktır. - dosyaların sınırlandırılmış yol adları
tarafından kullanılan etiket emretmek. Varsayılan değer belirtilmemiş.

dönem
[Ortam değişkeninden varsayılan VADELİ]

Bu düzenleme seçeneğinin değeri bir dize olacaktır. Varsayılan, VADELİ
ortamda değişkendir. Eğer VADELİ ortam değişkeni boş veya boş,
varsayılan belirtilmemiş. Editör, belirlemek için bu düzenleme seçeneğinin değerini kullanacaktır.
görüntüleme cihazının türü.

Kullanıcı, aşağıdakilerden sonra düzenleme seçeneğinin değerini değiştirirse, sonuçlar belirtilmez.
editör başlatma.

kısa
[Varsayılan ayarlanmazsa]

If kısa ayarlandığında, hata mesajları daha az ayrıntılı olabilir. Ancak bu uyarı dışında,
hata mesajları belirtilmemiş. Ayrıca, tüm hata mesajlarının değiştirilmesi gerekmez.
bu seçeneğin farklı ayarları.

uyarmak
[Varsayılan set]

If uyarmak ayarlandı ve düzenleme arabelleğinin içeriği, olduklarından beri değiştirildi.
son tamamen yazıldığında, editör belirli bir süre önce bir uyarı mesajı yazacaktır. !
komutlar (bkz. Kaçış).

pencere
[Varsayılan görmek metin]

tarafından açık ve görsel modda kullanılan bir değerdir. -Grup -F komutları ve
ekran yeniden boyandığında görüntülenen satır sayısını belirtmek için görsel mod.

Eğer -w komut satırı seçeneği belirtilmemişse, varsayılan değer
değeri HATLARI Çevre değişkeni. Eğer HATLARI ortam değişkeni boş veya
null, varsayılan, ekrandaki satır sayısı eksi 1 olacaktır.

ayarlamak pencere sıfıra veya satır sayısından daha büyük bir değere düzenleme seçeneği
ekran eksi 1 (açıkça veya -w seçeneği veya HATLARI çevre
değişken) neden olur pencere satır sayısına ayarlanacak düzenleme seçeneği
eksi 1 göster.

Terminal hattının baud hızı, uygulama tanımlı bir sistemde varsayılanı değiştirebilir.
tavır.

sarma marjı, wm
[Varsayılan 0]

Bu düzenleme seçeneğinin değeri sıfır ise hiçbir etkisi olmayacaktır.

POSIX yerel ayarında değilse, bu düzenleme seçeneğinin etkisi uygulama tanımlıdır.

Aksi takdirde, terminalin bitiş kenarından bir dizi sütun belirtecektir.

Açık ve görsel metin giriş modları sırasında, metnin herhangi bir parçasının bulunduğu her karakter için
karakterden daha küçük bir sütunda görüntülenir. sarma marjı bitişten sütunlar
görüntü satırının kenar boşluğunda, editör aşağıdaki gibi davranmalıdır:

1. Bu olayı tetikleyen karakter bir , o ve hemen öncekiler
Geçerli satırın yürütülmesi sırasında girilen geçerli satırdaki karakterler
metin giriş komutu atılır ve editör, kullanıcı
tek girdi Bunun yerine. Ayrıca, kullanıcı tarafından girilen sonraki karakter ise
a , o da atılacaktır.

2. Aksi takdirde, bir veya daha fazla varsa geçerli satırdaki karakterleri hemen
eklenen olmayanların son grubundan önceki sırasında girilen karakterler
geçerli metin girişi komutunun yürütülmesi, karakterler olacaktır
kullanıcı tek bir giriş yapmış gibi değiştirildi Bunun yerine.

Eğer otomatik girinti düzenleme seçeneği ayarlanır ve 1. veya 2.'de açıklanan olaylar gerçekleştirilir,
herhangi Geçerli satırdaki imleçte veya sonrasındaki karakterler atılacaktır.

Bitiş marjı, sistem tarafından belirlenir veya kullanıcı tarafından geçersiz kılınır.
için açıklanan ÖNE ÇIKAN HABERLER ÇEVRE DEĞİŞKENLERİ bölümünde ve Temel Tanımlar hacminde
POSIX.1‐2008, bölüm 8, çevre Değişkenler.

tarama, ws
[Varsayılan set]

If tarama ayarlanır, aramalar ( ex / or ? adresleri veya açık ve görsel mod /, ?, N,
ve n komutları) düzenleme arabelleğinin başlangıcını veya sonunu saracaktır; ayarlanmadığında,
aramalar, düzenleme arabelleğinin başında veya sonunda duracaktır.

yaz, wa
[Varsayılan ayarlanmazsa]

If yazmak ayarlandığında, yürütülürken gerçekleştirilen bazı kontroller ex yazmak komutlar
editör seçeneğinde açıklandığı gibi engellenecektir otomatik yazma.

EXIT DURUMU


Aşağıdaki çıkış değerleri döndürülecektir:

0 Başarılı tamamlama.

>0 Bir hata oluştu.

SONUÇLARI OF HATALAR


Herhangi bir hata ile karşılaşıldığında ve standart giriş bir terminal cihaz dosyası olmadığında, ex
dosyayı yazmayacak veya komut veya metin giriş moduna dönmeyecek ve ile sonlandırılacaktır.
sıfır olmayan bir çıkış durumu.

Aksi takdirde, kurtarılamaz bir hata ile karşılaşıldığında, SIGHUP'a eşdeğer olacaktır.
asenkron olay.

Aksi takdirde, bir hata ile karşılaşıldığında, editör belirtilen şekilde davranacaktır. Komuta
çizgi ayrıştırma in ex.

The takip etme bölümler vardır bilgilendirici.

BAŞVURUSU KULLANIM


sırasında bir SIGSEGV sinyali alınırsa ex bir dosyayı kaydediyor, dosya kaydedilmemiş olabilir
başarıyla kaydedildi.

The sonraki komutu birden fazla dosyayı kabul edebilir, bu nedenle aşağıdaki gibi kullanım:

sonraki bu [abc]*'

geçerlidir; için geçerli olmayacaktır. düzenleme or okumak komutlar, örneğin, çünkü onlar
yalnızca bir dosya bekliyoruz ve belirtilmemiş sonuçlar ortaya çıkıyor.

ÖRNEKLER


Yok.

GEREKÇESİ


The ex/vi spesifikasyon, 4 BSD ve System'da bulunan tarihsel uygulamaya dayanmaktadır.
V uygulamaları ex ve vi.

A kısıtlı editör (hem tarihi kırmızı yardımcı program ve değişiklikler ex) vardı
kabul edildi ve dahil edilmek üzere reddedildi. Seçeneklerden hiçbiri güvenlik düzeyini sağlamadı.
kullanıcılar bekleyebilir.

kabul edilir ki ex görsel mod ve ilgili özellikler, aksi takdirde zor olurdu
imkansız, blok modlu bir terminalde veya olmayan bir terminalde tatmin edici bir şekilde uygulamak
herhangi bir imleç adresleme biçimi; bu nedenle, bu tür özelliklerin olması zorunlu bir gereklilik değildir.
tüm terminallerde çalışmalıdır. Ancak niyet, bir ex uygulama
onları destekleyebilecek tüm terminallerde tam yetenek seti sağlamalıdır.

Opsiyonlar
The -c yerine +komuta tarafından ilham oldu -e seçeneği susuzluk. Tarihsel olarak, tüm
bu tür komutlar (bkz. düzenleme ve sonraki ayrıca) düzenlemenin son satırından yürütüldü
tampon. Bu, örneğin, şu anlama geliyordu: "+/desen" olmadıkça başarısız olur tarama seçenek
ayarlandı. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir. bu +komuta seçenektir
artık POSIX.1‐2008 tarafından belirtilmemiştir ancak bazı uygulamalarda mevcut olabilir.
Tarihsel olarak, bazı uygulamalar ex parçası olarak listelenebilecek komutlar
komut satırı argümanları. Tutarlılık için POSIX.1‐2008 bunlara izin vermez.
kısıtlamalar.

Editörün tarihsel uygulamalarında, -R seçeneği (ve Sadece oku düzenleme seçeneği)
yalnızca dosyaların üzerine yazılmasını engelledi; dosyalara eklemeye hala izin veriliyordu, eşleme
gevşek bir şekilde csh noklobber değişken. Ancak bazı uygulamalar takip edilmedi.
bu anlam ve Sadece oku eklenmesine de izin vermez. POSIX.1‐2008 aşağıdakileri takip eder:
ikinci uygulama, bunun daha açık ve sezgisel bir anlamı olduğuna inanarak Sadece oku.

The -s seçeneği, tüm etkileşimli kullanıcı geri bildirimlerini bastırır ve komut dosyalarını düzenlemek için kullanışlıdır
toplu işlerde. Spesifik etkilerin listesi tarihsel uygulamadır. terminal türü
"Açık ve görsel modları destekleyemeyen", tarihsel olarak "aptal" olarak adlandırılmıştır.

The -t seçeneği gerekliydi çünkü etiketler yardımcı program POSIX.1‐2008'de görünür ve
seçeneği tüm tarihsel uygulamalarında mevcuttur ex.

Tarihsel olarak, ex ve vi kabul edilen kamu hizmetleri -x şifrelemeyi temel alan seçenek
tarihsel olarak bulunan algoritma crypt Yarar. NS -x şifreleme seçeneği ve
ilişkili crypt yardımcı program, kullanılan algoritma belirlenebilir olmadığı için atlandı ve
bazı ülkelerin ihracat kontrol yasaları kriptografik ihracat yapmayı zorlaştırıyor
teknoloji. Ayrıca, tarihsel olarak kullanıcıların sağladığı güvenlik düzeyini sağlamadı.
bekleyebilir.

Standart Giriş
Dosya sonu koşulu, dosya sonu karakterine eşdeğer değildir. Ortak bir son-
dosya karakteri, -D, tarihsel olarak bir ex Komut.

Tarihsel uygulamalarında maksimum satır uzunluğu yoktu. ex. Spesifik olarak, olduğu gibi
parçalar halinde ayrıştırıldığında, adreslerin dosya adlarından farklı bir maksimum uzunluğu vardı.
Ayrıca, maksimum satır arabelleği boyutu, farklı uzunluklarda olan BUFSIZ olarak bildirildi.
farklı sistemlerde. Bu sürüm, makul bir değer empoze etmek için {LINE_MAX} değerini seçti.
taşınabilir kullanım kısıtlaması ex ve test paketi yazarlarına geliştirmelerinde yardımcı olmak için
bu sınırı uygulayan gerçekçi testler.

Giriş dosyalar
Standart geliştiriciler tarafından açık bir karardı. herhangi birine eklenecek
bir dosya eksik. Bu özelliğin olduğuna inanılıyordu. ex ve vi kullanıcılar tarafından güvenildi
iz bırakmayan metin dosyaları yapmak için daha taşınabilir kabul edilir ki
bu, izin veren uygulamalar için kullanıcı tarafından belirtilen bir seçenek veya uzantı gerektirecektir. ex
ve vi tarafından başka türlü tanımlanmamışsa, metin dışındaki türdeki dosyaları düzenlemek için
sistem. Rastgele türdeki dosyaları düzenleme yeteneğinin yararlı olabileceği konusunda anlaşmaya varıldı,
ancak bunu zorunlu kılmak gerekli görülmedi. ex or vi uygulama gerekli
metin dosyaları dışındaki dosyaları işlemek için.

GİRİŞ DOSYALARI bölümündeki ``Varsayılan olarak ...'' paragrafı, bir
uzun süredir devam eden güvenlik sorunu ex ve vi; "modeline" veya "modeline" ait olan
düzenleme seçeneği. Bu özellik, dosyanın ilk veya son beş satırındaki herhangi bir satıra izin verir.
dizeleri içeren "eski:" or "vi:" (ve görünüşe göre, "e:" or "vx:") çizgi olmak
editör komutlarını içeren ve ex tüm metni bir sonrakine kadar yorumlar ':' veya
komut olarak. Örneğin, şüphelenmeyen bir kullanıcının ex or
vi aşağıdaki gibi bir satırın bulunduğu bir posta mesajını yanıtlarken editör olarak:

eski:! rm -rf :

imza satırlarında göründü. Standart geliştiriciler, bir editörün
varsayılan olarak bir dosyanın herhangi bir satırını yorumlamamalıdır. Satıcıların silmeleri şiddetle tavsiye edilir
bu özelliği onların uygulamalarından ex ve vi.

eşzamanlı olmayan Etkinlikler
"Tam yazma" ifadesinin amacı, tüm düzenleme arabelleğinin yazılmasıdır.
kararlı depolamaya. Geçici dosyalarla ilgili not, şu uygulamalara yöneliktir:
kullanıcı tarafından adlandırılmamış düzenleme arabelleklerini yedeklemek için geçici dosyaları kullanın.

Tarihsel olarak, SIGQUIT tarafından göz ardı edildi ex, ancak eşdeğer oldu Q görsel olarak komut
mod; yani görsel moddan çıktı ve girdi ex modu. POSIX.1‐2008 izin verir, ancak
değil, bu davranış. Tarihsel olarak, SIGINT genellikle vi sonlandırmak için kullanıcılar
metin giriş modu ( -C'yi girmek genellikle girmekten daha kolaydır ). Bazı uygulamalar
of vi terminali bu olayla ilgili olarak uyardı ve bazıları uyarmadı. POSIX.1‐2008 bunu gerektirir
SIGINT aynı şekilde davranır ve terminalin uyarılmamasını sağlayın.

Tarihsel olarak, askıya alma ex metin giriş modu sırasında düzenleyici SIGINT'e benziyordu, çünkü
tamamlanan satırlar tutuldu, ancak herhangi bir kısmi satır atıldı ve editör geri döndü.
komut modu. POSIX.1‐2008 bu konuda sessiz; uygulamaları teşvik edilmektedir.
mümkünse tarihsel uygulamayı takip edin.

Tarihsel olarak, vi düzenleyici, SIGTSTP'yi eşzamansız bir olay olarak ele almadı ve
bu nedenle düzenleyiciyi görsel metin giriş modunda askıya almak imkansızdır. iki ana var
bunun nedenleri. Birincisi, SIGTSTP'nin UNIX sistemlerinde bir yayın sinyali olması ve
kabuğun olduğu olaylar zinciri execo zaman bir uygulama execs vi genellikle neden olur
SIGTSTP'nin süreç grubuna teslim edilmesi durumunda terminal durumu için karışıklık
varsayılan şekilde. İkincisi, UNIX'in çoğu uygulamasının küfürler paket yaptı
SIGTSTP'yi güvenli bir şekilde işlemez ve SIGTSTP'nin yanlış zamanda alınması bunlara neden olur.
çarpmak. POSIX.1‐2008 bu konuda sessiz; uygulamalarının tedavi edilmesi teşvik edilmektedir.
mümkünse asenkron bir olay olarak askıya alma.

Tarihsel olarak, SIGINT bir işlemi kesintiye uğratmadan önce düzenleme arabelleğinde yapılan değişiklikler
tutuldu; yani, sıfırdan değiştirilecek tüm satırlara kadar herhangi bir yerde
SIGINT gelene kadar değiştirildi. Bu değişiklikler yönetim tarafından atılmadı.
SIGINT'in gelişi. POSIX.1‐2008, bu davranışa izin vererek, geri komut
kısmen tamamlanmış bu komutları geri alabilmek için gereklidir.

SIGINT, SIGCONT, SIGHUP ve SIGTERM dışındaki sinyaller için yapılan işlem,
belirtilmemiş çünkü bazı uygulamalar düzenleme arabelleğini yararlı bir durumda kaydetmeye çalışıyor
diğer sinyaller alındığında.

Standart Hata
İçin ex/vi, tanı mesajları, başarısız bir girişimin sonucu olarak bildirilen mesajlardır.
çağırmak ex or vigeçersiz seçenekler veya yetersiz kaynaklar veya anormal bir
sonlandırma koşulu. Teşhis mesajları, hata mesajlarıyla karıştırılmamalıdır.
uygunsuz veya yasa dışı kullanıcı komutları tarafından oluşturulur.

Başlatma in ex ve vi
bir varsa ex komut (başka cd, chdirya da kaynak) dosya adı bağımsız değişkenine sahip, bunlardan biri veya her ikisi
alternatif ve geçerli yol adları ayarlanacaktır. Gayri resmi olarak, bunlar aşağıdaki gibi belirlenir:

1. Eğer ex komut, düzenleme arabelleğinin içeriğini değiştiren bir komuttur ve
başarılı olursa, geçerli yol adı dosya adı bağımsız değişkenine ayarlanacaktır (ilk
durumunda dosya adı argümanı sonraki komut) ve alternatif yol adı
varsa, önceki geçerli yol adına ayarlayın.

2. Dosya okuma/yazma formları söz konusu olduğunda, okumak ve yazmak komutlar, varsa
geçerli yol adı yoksa, geçerli yol adı dosya adı bağımsız değişkenine ayarlanacaktır.

3. Aksi takdirde, alternatif yol adı dosya adı bağımsız değişkenine ayarlanacaktır.

Örneğin, düzenleme: foo ve :iyileşmek foo, başarılı olduğunda, geçerli yol adını ayarlayın ve,
önceki bir geçerli yol adı varsa, alternatif yol adı. komutlar :yazı yazmak,
!emretmek, ve düzenleme: geçerli veya alternatif yol adlarını ayarlamayın. Eğer düzenleme: foo
komut herhangi bir nedenle başarısız olursa, alternatif yol adı belirlenir. bu okumak ve
yazmak komutlar, alternatif yol adını kendilerine ayarlar. dosya argüman, mevcut olmadıkça
yol adı ayarlanmadı, bu durumda geçerli yol adını kendi yollarına ayarlarlar. dosya argümanlar.
Alternatif yol adı, geçmişte :kaynak emretmek. POSIX.1-2008
tarihsel pratiğe uyum gerektirir. Alan komutları ekleyen uygulamalar
dosya adlarının argüman olarak kullanılması, alternatif yol adını burada açıklandığı gibi ayarlamaya teşvik edilir.

Tarihsel olarak, ex ve vi okumak .exrc içindeki dosyayı $ HOME dizin iki kez, eğer editör
yılında idam edildi $ HOME dizin. POSIX.1‐2008 bu davranışı yasaklar.

Tarihsel olarak, 4 BSD ex ve vi okumak $ HOME ve yerel .exrc sahip olunan dosyalar
kullanıcının gerçek kimliği veya kaynak bilgisi seçenek, diğerlerinden bağımsız olarak ayarlandı
düşünceler. Bu bir güvenlik sorunuydu çünkü normal UNIX'i koymak mümkün.
içindeki sistem komutları .exrc dosya. POSIX.1‐2008 şunları belirtmez: kaynak bilgisi seçeneği
ve tarihsel uygulamaların silinmesi teşvik edilir.

The .exrc dosyalar, kullanıcının gerçek kimliğine ait olmalı ve başka hiç kimse tarafından yazılamaz
sahibinden daha. Uygun ayrıcalıklar istisnası, kullanıcıların
özel ayrıcalıklar edinin, ancak kullanmaya devam edin. .exrc dosyalar kendi ev dizinlerinde.

System V Sürüm 3.2 ve üzeri vi uygulamalar seçeneği ekledi [hayır]exrc. Davranış
bu yerel mi .exrc dosyalar salt okunursa exrc seçeneği ayarlandı. için varsayılan
exrc seçenek kapalıydı, bu nedenle varsayılan olarak yerel .exrc dosyalar okunmadı. Sorun şuydu
çözmek için amaçlanan, System V'in kullanıcıların dosyaları vermesine izin vermesiydi, bu nedenle
dosyanın güvenli olduğundan emin olmak için olası sahiplik veya yazılabilirlik testi. Bu hala bir
kullanıcıların dosya verebileceği ancak hiçbir şeyin olmadığı sistemlerde güvenlik sorunu
POSIX.1‐2008'in yapabileceği ek. Uygulama tanımlı istisna,
grupların yerel olmasına izin ver .exrc sözde kullanıcılar oluşturarak kullanıcılar tarafından paylaşılan dosyalar
paylaşılan dosyalara sahip olmak için

POSIX.1‐2008 sistem genelinden bahsetmez ex ve vi başlangıç ​​dosyaları. Onlar varken
çeşitli uygulamaları ex ve vi, herhangi bir uygulamada mevcut değiller
POSIX.1‐2008 tarafından tarihsel uygulama olarak kabul edilmiştir. Bu tür dosyalara sahip uygulamalar
bunları yalnızca gerçek kullanıcı kimliğine veya uygun bir kullanıcıya aitse kullanmalıdır (için
örneğin, UNIX sistemlerinde root) ve kendi kullanıcılarından başka herhangi bir kullanıcı tarafından yazılamazlarsa
sahip. Sistem genelindeki başlangıç ​​dosyaları, çalıştırmadan önce okunmalıdır. ÇIKIŞ Değişken, $HOME/.exrc,
veya yerel .exrc dosyalar değerlendirilir.

Tarihsel olarak, herhangi ex komutu girilebilir ÇIKIŞ değişken veya .exrc dosyası,
düzenleme arabelleğinin zaten metin satırları içermesini gerektirenler genel olarak
editörün tarihsel uygulamalarının düşmesine neden oldu çekirdek. POSIX.1‐2008 bunu gerektirir
herhangi ex komutuna izin verilir ÇIKIŞ değişken ve .exrc dosyaları basitleştirmek için
spesifikasyon ve tutarlılık, ancak birçoğu açıkça başarısız olacaktır.
durumlar.

Düzenleme arabelleğinin içeriğinin başlatılması, "etki
be'' çeşitli ile ilgili olarak ex komutlar. Bu ifadenin amacı, düzenleme arabelleğini
başlatma aşamasında yüklenen içerikler kaybolmaz; yani, düzenleme yükleniyor
arabellek başarısız olmalıdır .exrc dosya bir dosyanın içeriğini okudu ve
ardından düzenleme arabelleğini yazın. Bu ifadenin ek bir amacı da şunu belirtmektir.
ilk geçerli satır ve sütun, birey için belirtildiği şekilde ayarlanır ex emreder.

Tarihsel olarak, -t seçeneği, etiket araması bir +komuta; yani, öyleydi
etiket tarafından belirtilen dosyanın son satırından yürütülür. Bu aramayla sonuçlandı
desen bir ileri arama deseniyse başarısız oluyor ve tarama düzenleme seçeneği değildi
ayarlamak. POSIX.1‐2008, bu davranışa izin vermez, etiket aramasını gerektirir.
desen tüm dosya üzerinde gerçekleştirilecek ve bulunamazsa geçerli satırın ayarlanması
dosyada daha makul bir konuma.

Tarihsel olarak, bir dosya tarafından belirtilmediğinde düzenleme için sunulan boş düzenleme arabelleği
kullanıcı isimsizdi. Buna POSIX.1‐2008 tarafından izin verilir; ancak, uygulamalar
kullanıcılara bu arabellek için geçici bir dosya adı sağlamaya teşvik edilir, çünkü onlara izin verir
bölgesinin kullanımını ex geçici düzenleme oturumları sırasında geçerli yol adını kullanan komutlar.

Tarihsel olarak, dosya kullanılarak belirtilen -t seçenek mevcut argümanın bir parçası değildi
liste. Bu uygulamaya POSIX.1‐2008 tarafından izin verilmektedir; ancak, uygulamalar teşvik edilir
tutarlılık için mevcut argüman listesine adını eklemek için.

Tarihsel olarak, -c komut genellikle zaten var olan bir dosyaya kadar yürütülmedi
düzenlendi. POSIX.1‐2008, bu tarihsel uygulamaya uyumu gerektirir. Şu komutlar
neden olabilir -c yürütülecek komut şunları içerir: ex komutlar düzenleme, sonraki, kurtarmak,
geri sarma, ve etiket, Ve vi komutlar -^ ve -]. Tarihsel olarak, bir okuma
düzenleme arabelleğindeki dosyanın -c yürütülecek komut (olsa bile
geçerli yol adını ayarlayın), istisna olarak -c olmak için emir
yürütülürse: editör içerideydi ex modunda, düzenleme arabelleğinin geçerli bir yol adı yoktu, düzenleme
arabellek boştu ve henüz hiçbir okuma komutu denenmedi. Tutarlılık ve
belirtimin basitliği, POSIX.1‐2008 bu davranışa izin vermez.

Tarihsel olarak, -r kurtarma olmadıysa seçenek normal bir düzenleme oturumuyla aynıydı
dosya için bilgi mevcuttur. Bu, kullanıcıların şunları girmesine izin verdi:

vi -r *.C

ve kurtarılabilir olan dosyaları kurtarın. Bazı uygulamalarda kurtarma
yalnızca adlandırılmış ilk dosya üzerinde denendi ve dosya bağımsız değişkene girilmedi
liste; diğerlerinde, adlı her dosya için kurtarma denendi. Ayrıca bazı tarihi
uygulamalar göz ardı edildi -r if -t belirtildi veya komut satırını desteklemedi dosya
ile argümanlar -t seçenek. Spesifikasyonun tutarlılığı ve basitliği için,
POSIX.1‐2008 bu özel durumlara izin vermez ve kurtarma girişiminin
her dosya ilk kez düzenleniyor.

Tarihsel olarak, vi başlatıldı ` ve ' işaretler, ancak ex yapmadı. Bunun anlamı, eğer
ilk komut ex mod görsel ya da eğer ex önce komut yürütüldü (örneğin,
vi + 10 dosya), vi işaretler başlatılmadan girildi. çünkü standart
geliştiriciler, işaretlerin genel olarak yararlı olduğuna ve tutarlılık ve basitlik için inanıyordu
spesifikasyonuna göre, POSIX.1‐2008, açık veya
görsel modda veya ex modu ve düzenleme arabelleği boş değil. içinde başlatmıyor ex
mod, düzenleme arabelleği boşsa, tarihsel bir uygulamadır; ancak, her zaman olmuştur
açık ve görsel mod düzenlemede boş düzenleme arabelleklerinde işaretleri ayarlamak (ve kullanmak) mümkündür
oturumları.

Adresleme
Tarihsel olarak, ex ve vi ek adresleme formlarını kabul etti '\/' ve '\?'. Onlar
eşdeğerdir "//" ve "??", sırasıyla. POSIX.1‐2008 tarafından zorunlu tutulmazlar, çoğunlukla
çünkü kimse tarihsel olarak farklı bir şey yapıp yapmadığını hatırlamıyor.

Tarihsel olarak, ex ve vi birkaç komut için sıfır adresine izin verilir ve izin verilir
the % başkaları için boş dosyalarda adres. Tutarlılık için POSIX.1‐2008 destek gerektirir
İlki için, mantıklı olduğu birkaç komutta ve aksi halde izin vermiyor. İçinde
ek olarak, çünkü POSIX.1‐2008 bunu gerektirir % mantıksal olarak eşdeğer olmak "1,$", bu
ayrıca mantıklı olduğu durumlarda desteklenir ve aksi halde izin verilmez.

Tarihsel olarak, % adresi başka adresler izleyemez. Tutarlılık için
ve spesifikasyonun basitliği, POSIX.1‐2008 ek adreslerin olmasını gerektirir
destekledi.

Aşağıdakilerin tümü geçerlidir adresleri:

+++ Geçerli satırdan üç satır sonra.

/re/− Bir sonraki oluşumundan bir satır önce re.

-2 Geçerli satırdan iki satır önce.

3 −−−− 2 Birinci satır (ara negatif adrese dikkat edin).

1 2 3 Altıncı satır.

Adres alan komutlara istenilen sayıda adres verilebilir; Örneğin,
"1,2,3,4,5p" 4. ve 5. satırları yazdırır, çünkü iki geçerli adres sayısı en fazladır
tarafından kabul edildi baskı emretmek. Bu, ile kombinasyon halinde sınırlayıcı,
kullanıcıların dosyadaki sıralı kalıplara dayalı olarak komutlar oluşturmasına izin verir. Örneğin,
komuta 3;/foo/;+2baskı deseni içeren satır 3'ten sonraki ilk satırı görüntüler
foo, artı sonraki iki satır. adres olduğunu unutmayın 3; olmadan önce değerlendirilmeli
için arama kökeni nedeniyle atıldı /foo/ komut buna bağlıdır.

Tarihsel olarak, adreslere bir veya daha fazla sayıdan sonra dahil edilerek değerler eklenebilir.
karakterler; Örneğin, 3 - 5p dosyanın yedinci satırını yazdı ve /foo/ 5
aynıydı /foo/+5. Ancak, yalnızca mutlak değerler eklenebilir; Örneğin,
5 /foo/ bir hataydı. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir. Adres
uzaklıklar adreslerden ayrı olarak belirtilir, çünkü tarihsel olarak
görsel mod arama komutlarına sağlanır.

Tarihsel olarak, eksik adresler varsayılan olarak geçerli satıra ayarlanmıştır. Bu doğruydu
önde gelen ve takip eden - sınırlandırılmış adresler ve takip için -sınırlandırılmış
adresler. Tutarlılık için POSIX.1‐2008, liderlik için bunu gerektirir. adresler olarak
iyi.

Tarihsel olarak, ex ve vi kabul etti '^' hem adres hem de bayrak ofseti olarak karakter
komutlar için. Her iki durumda da aynıydı '-' karakter. POSIX.1‐2008 değil
bu davranışı gerektirebilir veya yasaklayabilir.

Tarihsel olarak, temel düzenli ifadelerdeki geliştirmeler adreslemede kullanılabilirdi;
örneğin, '~', '\<', ve '\>'. POSIX.1‐2008, geçmişe uygunluk gerektirir
uygulama; yani, düzenli ifade kullanımının tutarlı olması ve bu düzenli
ifade geliştirmeleri, normal ifadelerin kullanıldığı her yerde desteklenir.

Komuta çizgi ayrıştırma in ex
Tarihsel ex komut ayrıştırma burada açıklanandan bile daha karmaşıktı. POSIX.1-2008
standart geliştiricilerin inandığı ayrıştırma komutunun alt kümesini gerektirir
belgelenmiş ve kullanıcıların makul bir şekilde taşınabilir bir şekilde kullanmalarının beklenebileceği ve
Bu, uygulamalar arasında tarihsel olarak tutarlıydı. (Atılan işlevsellik
en iyi ihtimalle belirsiz.) Tarihsel uygulamalar, uyum sağlamak için değişiklikler gerektirecektir.
POSIX.1‐2008 ile; ancak, kullanıcıların bu değişikliklerden herhangi birini fark etmesi beklenmemektedir. Çoğu
karmaşıklığın ex ayrıştırma, üç özel sonlandırma durumunu ele almaktır:

1. !, global, v, ve filtre sürümleri okumak ve yazmak komutlar sınırlandırılmıştır
ile karakterler (içerebilirler genellikle olan karakterler
kabuk borular).

2. ex, düzenleme, sonraki, ve görsel açık ve görsel modda komutların tümü ex komutlar,
isteğe bağlı olarak içeren karakterler, ilk argümanları olarak.

3. s komut, ilk argümanı olarak bir normal ifade alır ve
komutu sınırlamak için karakterleri sınırlandırmak.

Tarihsel olarak, içindeki karakterler +komuta tartışması ex, düzenleme, sonraki,
vi, ve görsel komutları ve içinde model ve değiştirme parçaları s komut, yaptı
komutu sınırlandırmayın ve filtre durumlarında okumak ve yazmak, Ve !, global,
ve v komutlar, komutu hiç sınırlamadılar. Örneğin, aşağıdakiler
komutların tümü geçerlidir:

:+25 düzenle | s/abc/ABC/ dosya.c
:s/ | /BORU/
:oku !spell % | sütunlu
:global/desen/p | ben
:s/a/b/ | s/c/d | Ayarlamak

Tarihsel olarak boş veya doldurulmuş satırlar .exrc dosyalar ve kaynakd dosyaları (aynı zamanda
ÇIKIŞ değişkenler ve ex komut komut dosyaları) varsayılan komutlar olarak kabul edildi; yani, baskı
komutlar. POSIX.1‐2008, özellikle aşağıdaki durumlarda karşılaşıldığında göz ardı edilmelerini gerektirir.
.exrc ve kaynakd dosyaları, ortak bir yeni kullanıcı hatası kaynağını ortadan kaldırmak için.

Tarihsel olarak, ex çoklu bitişik komutlar (veya -ayrılmış) dikey çizgiler
yürütüldüğünde garip bir şekilde ele alındı ex modu. Örneğin, komut ||| <taşıma-
dönüş>, imleç 1. satırdayken dosyanın 2., 3. ve 5. satırlarını görüntüler. İçinde
ek olarak, komut | yerine yalnızca bir sonraki satırdan sonraki satırı görüntüler.
sonraki iki satır. İlki, yürütüldüğünde daha mantıklı çalıştı vi modu ve görüntülenen
satır 2, 3 ve 4. POSIX.1‐2008 şunları gerektirir: vi davranış; yani, tek bir varsayılan
Her komut ayırıcı için komut ve satır numarası artışı ve sondaki
sonra karakterler ayırıcılar atılır.

Tarihsel olarak, ex tek bir ekstraya izin verildi önde gelen komut karakteri olarak; için
örnek, :g/desen/:p geçerli bir komuttu. POSIX.1‐2008 bunu şunu gerektirecek şekilde genelleştirir:
herhangi bir sayıda lider karakterler soyulsun.

Tarihsel olarak, herhangi bir önek silmek komut müdahale etmeden takip edilebilir
bayrak karakteriyle karakterler çünkü komutta d p, p olarak yorumlanır
tampon p. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Tarihsel olarak, k komutu araya girmeden işaret adı ile takip edilebilir
karakterler. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Tarihsel olarak, s komutun hemen ardından bayrak ve seçenek karakterleri gelebilir;
örneğin, s/e/E/|s|sgc3p geçerli bir komuttu. Ancak, bayrak karakterleri dayanamadı
tek başına; örneğin, komutlar sp ve s l komut başarısız olurken lütfen ve s gl
başarılı olurdu. (Açıkçası, '#' bayrak karakteri, sınırlayıcı karakter olarak kullanıldıysa
komutu takip etti.) Başka bir sorun da seçenek karakterlerinin bayraktan önce gelmesi gerektiğiydi.
komut tam olarak belirtilmiş olsa bile karakterler; örneğin, komut s/e/E/sf
komut başarısız olurken s/e/E/gp başarılı olurdu. POSIX.1‐2008 aşağıdakilere uygunluk gerektirir:
tarihsel pratik.

Tarihsel olarak, kullanıcıdan gelen girdiyle eşleşen bir ön eke sahip ilk komut adı
yürütülen komuttu; Örneğin, ve, ver, ve için hepsi idam edildi versiyon Komut.
Bununla birlikte, komutlar belirli bir sıradaydı, böylece a eşleşti eklemek, değil kısaltmak.
POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir. Komut kısıtlaması
uzantılı uygulamalar için arama sırası, aşağıdaki gibi komutların eklenmesinden kaçınmaktır.
tarihsel öneklerin taşınabilir bir şekilde çalışmayacağını.

Tarihsel uygulamaları ex ve vi birden fazla doğru şekilde işlemedi ex komutlar,
tarafından ayrılmış Görsel moda veya düzenleyiciye giren veya çıkan karakterler.
Çünkü uygulamaları vi bu hata modunu sergilemeyen var, POSIX.1‐2008
buna izin vermiyor.

Alfabetik komut adlarının aşağıdaki tüm alfabetik komutlardan oluşması gerekliliği
bir sonraki alfabetik olmayan karaktere kadar olan karakterler, alfabetik komut adlarının
argümanlarından bir veya daha fazla alfabetik olmayan karakterle ayrılmalıdır, normalde
a veya '!' karakter, istisnalar için belirtilenler dışında, silmek, k, ve s
emreder.

Tarihsel olarak, tekrarlanan yürütme ex varsayılan baskı komutlar ( -D, eof,
, ) herhangi bir komut istemi karakterini sildi ve sonraki satırları görüntüledi
terminali kaydırmadan; yani, daha önce görüntülenen satırların hemen altında.
Bu, kullanıcı için dosyadaki satırların daha temiz bir sunumunu sağladı. POSIX.1-2008
bazı durumlarda imkansız olabileceğinden bu davranışı gerektirmez; ancak,
uygulamaların mümkünse bu anlamı sağlaması şiddetle teşvik edilir.

Tarihsel olarak, bir komutun ortasında dosyaları değiştirmek ve
yeni dosyada yürütülen komutun geri kalanı; Örneğin:

düzenleme: + 25 dosya.c | s/abc/ABC/ | 1

geçerli bir komuttu ve değiştirme, yeni düzenlenen dosyada denendi.
POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir. Aşağıdaki komutlar
uygulayan örnekler ex ayrıştırıcı:

kaçırmak 'foo | Çubuk' > dosya1; kaçırmak 'foo/bar' > dosya2;
vi
düzenleme: +1 | s/|/BORU/ | w file1 | e file2 | 1 | s/\//eğik çizgi/ | wq

Tarihsel olarak, editör uygulamalarında kaçınılması gereken bir koruma yoktu. ex global, v, @,
or * ilişkili komutların yürütülmesi sırasında düzenleme arabelleklerini değiştiren komutlar. Çünkü
bu neredeyse değişmez bir şekilde editörün feci başarısızlığıyla sonuçlanacaktı ve
Bu sorunları sergileyen uygulamalar mevcut olduğundan, POSIX.1‐2008,
sırasında düzenleme arabelleği global or v komut sırasında veya bir @ or * oradaki komut
tek bir yürütmeden daha fazlası olacak, bir hata olacak. Çoklu destekleyen uygulamalar
arabellekleri aynı anda düzenlemenin, aynı semantiği
tamponlar arasında da geçiş yapar.

The ex POSIX.1‐2008'in gerektirdiği komut alıntısı, tarihsel olarak alıntının bir üst kümesidir.
editörün uygulamaları. Örneğin, tarihsel olarak bir kaçıştan kaçmak mümkün değildi.
bir dosya adında; Örneğin, düzenleme: foo\\\ bar çok fazla dosya adını bildirir
edit komutu için girilmişti ve bir içinde
ilk argüman bir düzenleme, ex, sonrakiya da görsel hiç komut. POSIX.1‐2008 uzatılıyor
alıntı yapma davranışının tüm alanlarda tutarlı olmasını gerektiren tarihsel uygulama ex
komutlar hariç, harita, haritayı kaldırmak, kısaltmak, ve kısaltmak hangi komutlar
tarihsel olarak kullanılan -V yerine alıntı için karakterler. Bunlar için
dört komut, POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Ters eğik çizgi alıntı ex sezgisel değildir. -kaçışlar dikkate alınmadıkça dikkate alınmaz.
özel bir karakterden kaçış; örneğin, gerçekleştirirken dosya argüman genişletme,
dizi "\\%" eşdeğerdir '\%', olumsuzluk "\akım yol adı>". Bu, aşağıdakiler için kafa karıştırıcı olabilir:
kullanıcılar çünkü genellikle kabuk genişlemesine neden olan karakterlerden biridir.
gerçekleştirilebilir ve bu nedenle kabuk alıntılama kuralları dikkate alınmalıdır.
Genel olarak, alıntı karakterleri yalnızca özel bir karakterden kaçarlarsa dikkate alınır ve
karakterin olduğu her ayrıştırma katmanı için bir alıntı karakteri sağlanmalıdır.
özel. Başka bir örnek olarak, yalnızca tek bir için gereklidir '\l' dizi
yedek değiştirme modellerinde, çünkü karakter 'l' hiçbirine özel değil
üstündeki ayrıştırma katmanı.

-V alıntı ex ters eğik çizgi alıntısından biraz farklıdır. dörtte
komutlar nerede -V alıntı geçerlidir (kısaltmak, kısaltmak, harita, ve haritayı kaldırmak), herhangi
karakter bir tarafından kaçmış olabilir -V özel bir anlamı olup olmayacağı.
POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Editörün tarihsel uygulamaları, karakter içinde sınırlayıcı gerektirmedi
kaçınılması gereken sınıflar; örneğin, komut :S/[/]// ipte "xxx/yyy" olur
sil '/' diziden. POSIX.1‐2008, bu tarihsel uygulamaya izin vermemektedir.
tutarlılık ve bunu gerektirerek uygulamalara büyük bir yük getirdiği için
düzenli ifadeler bilgisi düzenleyici ayrıştırıcıda yerleşik olarak bulunur.

Tarihsel olarak, alıntı karakterler ex komutlar tutarsız bir şekilde işlendi. İçinde
çoğu durumda, karakter, herhangi birinden bağımsız olarak her zaman komutu sonlandırdı.
önceki kaçış karakteri, çünkü karakterler kaçmadı
çoğu için karakterler ex komutlar. Ancak, bazıları ex komutlar (örneğin, s, harita, ve
kısaltma) izin kaçacak karakterler (gerçi harita
ve kısaltma, -V karakterleri yerine onlardan kaçtı karakterler).
Bu sadece komut satırında değil, aynı zamanda .exrc ve kaynakd dosyaları. Örneğin,
komuta:

harita = ahmak Çubuk

elde etmek bazen zor olsa da başarılı olacaktı. -V ve eklenen
geçti ex ayrıştırıcı. Spesifikasyonun tutarlılığı ve basitliği için,
POSIX.1‐2008, kaçmanın mümkün olmasını gerektirir karakterler ex komutları
kullanarak her zaman çoğu için karakterler ex komutları ve kullanımı -V
için karakterler harita ve kısaltma komutlar. Örneğin, komut
baskıliste tek komut olarak ayrıştırılması gerekiyor baskıliste.
Bu, tarihsel uygulamadan farklı olsa da, POSIX.1‐2008 geliştiricileri bunun pek olası olmadığına inanıyordu.
herhangi bir komut dosyasının veya kullanıcının geçmiş davranışa bağlı olduğunu.

Tarihsel olarak, kullanılarak belirtilen bir komutta bir hata -c seçenek geri kalanına neden olmadı
arasında -c atılacak komutlar. POSIX.1‐2008, tutarlılık için buna izin vermez.
eşlenen tuşlar, @, global, kaynak, ve v komutlar, ÇIKIŞ ortam değişkeni ve
the .exrc dosyaları.

Giriş Kurgu in ex
Tarihin yaygın kullanımlarından biri ex editör yavaş ağ bağlantılarında.
Kurallı modda çalışan düzenleyiciler, çok daha az ve çok daha az trafik gerektirebilir
ana makinede işlemenin yanı sıra blok modu terminallerini daha kolay destekler.
Bu nedenlerle, POSIX.1‐2008 şunları gerektirir: ex kurallı mod girişi kullanılarak uygulanabilir
işleme, tarihsel olarak yapıldığı gibi.

POSIX.1‐2008 tarihi 4 BSD giriş düzenleme karakteri ```kelime silme'' gerektirmez
veya ``bir sonraki ''. Bu nedenle, bunların nasıl ele alındığı belirtilmemiştir. ex,
ancak gerekli etkiye sahip olmaları gerekir. sonrasında bunları çözen uygulamalar
satır kullanılarak sonlandırıldı veya -M karakteri ve uygulamaları
bu işleme için temel sistem terminal desteğine güvenir, ikisi de uyumludur.
Uygulamaların, eğer varsa, temeldeki sistem işlevselliğini kullanması şiddetle tavsiye edilir.
diğer sistem metin giriş arayüzleriyle uyumluluk için mümkündür.

Tarihsel olarak, ne zaman eof azaltmak için karakter kullanıldı otomatik girinti seviye
imleç, yeni sonunu görüntülemek için hareket etti otomatik girinti karakterler, ancak hareket etmedi
imleç yeni bir satıra geçti, ne de - Satırdan D karakteri.
POSIX.1‐2008, imlecin aynı satırda kaldığını veya kalan satırın
çizgi silinir; ancak, uygulamaların en iyiyi sağlaması şiddetle teşvik edilir.
olası kullanıcı arayüzü; yani, imleç aynı satırda kalmalıdır ve herhangi bir
- Satırdaki D karakteri silinmelidir.

POSIX.1‐2008, tarihi 4 BSD giriş düzenleme karakteri ``yeniden yazdır'' gerektirmez,
geleneksel olarak Kullanıcıdan gelen geçerli girişi yeniden görüntüleyen -R. Bunun için
nedeni ve satır tamamlandıktan sonra işlevsellik uygulanamadığı için
kullanıcı tarafından sonlandırılan POSIX.1‐2008, bu işlevsellik için herhangi bir gereklilik getirmez.
Uygulamalardan, aşağıdaki durumlarda bu tarihsel işlevi kullanılabilir hale getirmeleri şiddetle tavsiye edilir:
mümkün.

Tarihsel olarak, -Q, bir sonraki işlevi yerine getirmedi exolduğu gibi vi.
POSIX.1‐2008, tarihin kırılmasını önlemek için tarihsel uygulamaya uyumu gerektirir ex
komut dosyaları ve .exrc dosyaları.

eof
Olup olmadığını eof karakter hemen değiştirir otomatik girinti komut istemindeki karakterler
uygulamaların, bunu yapan sistemlerin mevcudiyetinde uyumlu olabilmesi için belirtilmemiş olarak bırakılmıştır.
bu işlevi desteklemez. Uygulamaların çizgiyi değiştirmesi teşvik edilir ve
mümkünse hemen yeniden görüntüleyin.

İşleme şartnamesi eof karakter tarihsel pratikten farklıdır
sadece bunda eof metindeki normal karakterleri izliyorlarsa karakterler atılmaz
giriş. Tarihsel olarak, her zaman atıldılar.

Komuta açıklamaları in ex
Tarihsel olarak, birkaç komut (örneğin, global, v, görsel, s, yazmak, wq, birden çekme, !, <,
>, &, ve ~) boş dosyalarda yürütülebilirdi (yani, varsayılan adres(ler) 0'dı) veya
0'ın izin verilen açık adresleri (örneğin, 0 geçerli bir adresti veya 0,0 geçerli bir adresti)
Aralık). 0 adresleri veya boş bir dosyada komut yürütme, yalnızca
düzenleme arabelleğine yeni metin ekleyen veya komut yazan komutlar (çünkü kullanıcılar
boş dosyalar yaz). POSIX.1‐2008, bu tür komutlar için bu davranışı gerektirir ve buna izin vermez.
aksi takdirde, spesifikasyonun tutarlılığı ve basitliği için.

bir saymak ex komut tarihsel olarak sonuncudan daha büyük olmayacak şekilde düzeltildi
bir dosyadaki satır; örneğin, beş satırlık bir dosyada komut 1,6baskı başarısız olur, ancak
komuta 1baskı300 başarılı olurdu. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Tarihsel olarak, bayrakların kullanımı ex komutlar belirsiz olabilir. Genel tarihsel
uygulama POSIX.1‐2008 tarafından tarif edildiği gibiydi, ancak bazı özel durumlar vardı. İçin
örnek, liste, numara, ve baskı komutlar, takip eden adres ofsetlerini yok sayar; için
örnek, 3p +++# 3. satırı görüntüler ve 3, yürütmeden sonraki geçerli satır olur
komutun. bu açık ve görsel komutlar hem takip eden ofsetleri hem de
takip eden bayraklar. Ayrıca, belirtilen bayraklar açık ve görsel komutlar kötü etkileşime girdi
ile liste düzenleme seçeneği ve açık/görsel sırasında ayarlama ve ardından ayarı kaldırma
oturum neden olur vi satırları belirtilen biçimde görüntülemeyi durdurmak için. Tutarlılık için
ve spesifikasyonun basitliği, POSIX.1‐2008, bu istisnaların hiçbirine izin vermez.
genel kural.

POSIX.1‐2008 kelimesini kullanır kopya tamponları tartışırken birkaç yerde. Bu değil
uygulanmasını ima etmeye yöneliktir.

Tarihsel olarak, ex kullanıcılar, bu belirsizlik nedeniyle sayısal arabellekleri belirleyemedi.
neden olur; örneğin, komutta 3 silmek 2, 2'nin bir arabellek olup olmadığı belli değil
isim veya bir saymak. POSIX.1‐2008, varsayılan olarak tarihsel uygulamaya uygunluk gerektirir, ancak
uzantıları engellemez.

Tarihsel olarak, adsız arabelleğin içeriği komutlardan sonra sıklıkla atılırdı.
bu onu açıkça etkilemedi; örneğin, kullanırken düzenleme geçiş komutu
Dosyalar. Spesifikasyonun tutarlılığı ve basitliği için POSIX.1‐2008 buna izin vermez.
davranışı.

The ex yardımcı programın tarihsel olarak sayısal arabelleklere erişimi yoktu ve ayrıca,
satırları silme ex içeriğini değiştirmedi. Örneğin, eğer bir silme yaptıktan sonra
in vi, kullanıcı geçiş yaptı ex, başka bir silme işlemi yaptı ve ardından vi,
sayısal arabelleklerin içeriği değişmeyecekti. POSIX.1‐2008 uygunluk gerektirir
tarihsel pratiğe. Sayısal tamponlar şurada açıklanmıştır: ex fayda sağlamak için
arabellek açıklamasını POSIX.1‐2008'de tek bir konumla sınırlayın.

Kabuk genişlemesini tetikleyen meta karakterler dosya argümanlar geçmişe uyuyor
kabuk genişletme yapma yönteminde olduğu gibi pratik yapın. sağlamak isteyen uygulamalar
metakarakter kümesini değiştirme esnekliğine sahip kullanıcılar, bir
kabuk meta dize düzenleme seçeneği.

Tarihsel olarak, ex çalıştırılan komutlar vi kesinlikle yapmadığında ekranı yeniledi
bunu yapmak gerekir; Örneğin, :!tarih > / Dev / null ekran yenileme gerektirmez çünkü
UNIX'in çıktısı tarih komutu, ekranın yalnızca tek bir satırını gerektirir.
POSIX.1‐2008, üzerine yazılmışsa ekranın yenilenmesini gerektirir, ancak
bir uygulamanın bu belirlemeyi nasıl yapması gerektiğine dair hiçbir gereklilik yoktur.
Uygulamalar, ekranı ne olursa olsun sorabilir ve yenileyebilir.

Kısaltmak
Tarihsel uygulama, bir kısaltmanın parçası olarak girilen karakterlerin
değiştirme tabi idi harita genişlemeler, gösteri maçı düzenleme seçeneği, ayrıca
kısaltma açılımları ve benzeri; yani, mantıksal olarak terminale itildiler
giriş kuyruğu ve basit bir değiştirme değildi. POSIX.1‐2008 aşağıdakilere uygunluk gerektirir:
tarihsel pratik. Tarihsel uygulama, ne zaman kelime olmayan bir karakterin (ki
bir kaçamak değil -V) bir kelime karakterinden sonra girildi, vi kontrol ederdim
kısaltmalar. Kontrol, kelimeden önce girilen karakterin türüne dayanıyordu.
kontrolü tetikleyen kelime/kelime olmayan çiftin karakteri. kelime karakteri
denetimi tetikleyen sözcük/kelime olmayan çifti ve tetikleyiciden önce girilen tüm karakterler
dışında, bu türden çiftler çeke dahil edildi.
her zaman kısaltmayı sınırlayan karakterler.

Bu, kısaltmanın çalışması için, ss bir kelime karakteri ile bitmelidir,
kelimeden kelime olmayan karakterlere (veya mengene tersi) ondan başka
içindeki son ve sondan sonraki karakterler arasında ss, ve olamaz
içindeki karakterler ss. Ayrıca, tarihsel alıntı kuralları nedeniyle,
literal girmek imkansız -V de ss. POSIX.1‐2008 uygunluk gerektirir
tarihsel pratiğe. Tarihsel uygulamalar, kısaltmalar kullanıldığında kullanıcıları bilgilendirmedi
asla kullanılamayacak olanlar girildi; uygulamalarının bu yönde yapılması kuvvetle teşvik edilmektedir.

Örneğin, aşağıdaki kısaltmalar işe yarayacaktır:

:ab (p DEĞİŞTİR
:ab p DEĞİŞTİR
:ab ((P DEĞİŞTİR

Aşağıdaki kısaltmalar çalışmayacaktır:

:ab ( DEĞİŞTİR
:ab (s. DEĞİŞTİR

Tarihsel uygulama şudur: vi kolon komut satırı tabi idi
argümanlar da dahil olmak üzere kısaltma genişletme kısaltma (ve daha da ilginci)
kısaltma emretmek. Kısaltma açılımı yapmayan uygulamalar olduğu için
bu komutların ilk argümanı için buna izin verilir, ancak gerekli değildir.
POSIX.1‐2008. Ancak, aşağıdaki sıra:

:ab foo bar
:ab foo baz

kısaltmasının eklenmesiyle sonuçlanmıştır. "baz" dize için "Çubuk" tarihsel olarak
ex/vi, ve sıra:

:ab aptal1 bar
:ab aptal2 bar
:kısaltma aptal2

kısaltmayı sildim "foo1", değil "foo2". Bu davranışlara izin verilmez
POSIX.1‐2008, çünkü kullanıcının beklentilerini açıkça ihlal ediyorlar.

Tarihsel bir uygulamaydı ki -V, değil , karakterler şu şekilde yorumlanabilir:
sonraki karakterlerden kaçan kısaltmak emretmek. POSIX.1‐2008 gerektirir
tarihsel uygulamaya uygunluk; Ancak, bir kısaltmanın olduğu unutulmamalıdır.
içeren bir asla çalışmayacak.

eklemek
Tarihsel olarak, bir metni izleyen herhangi bir metin sonra komut ayırıcı eklemek,
değişiklikya da eklemek komutu, ekleme metninin bir parçası oldu. Örneğin, komutta:

:g/desen/ekleme|malzeme1

metni içeren bir satır "mal1" her satır eşleşen desene eklenecektir. Bilişim Teknoloji
ayrıca girmek için tarihsel olarak geçerliydi:

:ekle|malzeme1
malzeme2
.

ve üzerindeki metin ex komut satırı, sonra eklenen metinle birlikte eklenir.
o. Bununla birlikte, kullanıcının iki sonlandırıcı girmek zorunda kaldığı tarihsel bir hata vardı.
çizgiler ( "." satırlar) bu durumda metin giriş modunu sonlandırmak için. POSIX.1‐2008 gerektirir
tarihsel pratiğe uyum sağlar, ancak tarihsel çoklu gereksinime izin vermez.
bitiş çizgileri.

değişim
için GEREKÇE'ye bakınız. eklemek emretmek. Sonradan imleç konumlandırma için tarihsel uygulama
hiçbir metin girilmediğinde change komutu POSIX.1‐2008'de açıklandığı gibidir. Ancak, bir
System V uygulamasının, imleç konumlandırılacak şekilde değiştirildiği bilinmektedir.
belirtilen ilk adreste ve ilk adresten önceki satırda değil. POSIX.1-2008
tutarlılık için bu değişikliğe izin vermez.

Tarihsel olarak, değişiklik komut, arabellek argümanlarını desteklemedi, ancak bazıları
uygulamalar, isteğe bağlı bir arabellek belirtimine izin verir. Bu davranış ne
POSIX.1‐2008 tarafından gerekli veya izin verilmeyen.

değişim rehber
Ortak bir uzantı ex uygulamalarının öğelerini kullanmaktır. CD yolu seçeneği şu şekilde düzenle
için önek dizinleri yol argümanlar chdir göreli yol adları olan ve olmayan
var "." or ".." ilk bileşenleri olarak. içindeki elemanlar CD yolu düzenleme seçeneği
- ayrılmış. başlangıç ​​değeri CD yolu düzenleme seçeneği kabuğun değeridir
CDPATH Çevre değişkeni. Bu özellik, POSIX.1‐2008'e dahil edilmemiştir çünkü
tarihsel uygulama olarak kabul edilen uygulamaların hiçbirinde mevcut değildir.

kopya
Tarihsel uygulamaları ex belirtilen aralığın içindeki satırlara izin verilen kopyalar;
örneğin, :2,5kopya3 geçerli bir komuttu. POSIX.1‐2008 aşağıdakilere uygunluk gerektirir:
tarihsel pratik.

Sil
POSIX.1‐2008, bir dosyanın tarihsel ayrıştırılması için destek gerektirir. silmek komut ve ardından
bayraklar, herhangi bir müdahale olmaksızın karakterler. Örneğin:

1dp İlk satırı siler ve ikinci satırı yazdırır.

1 derin Gelince 1dp.

1d İlk satırı siler, arabelleğe kaydeder p.

1d p1l (Pee-one-ell.) İlk satırı siler, arabelleğe kaydeder p, ve satırı listeleme
bu ikinciydi.

Düzenle
Tarihsel olarak, herhangi ex komut olarak girilebilir +komuta argüman düzenleme emretmek,
bazılarına rağmen (örneğin, eklemek ve eklemek) tarihi karıştırdığı biliniyordu
uygulamalar. Spesifikasyonun tutarlılığı ve basitliği için POSIX.1‐2008 şunları gerektirir:
herhangi bir komutun argüman olarak desteklenmesi düzenleme Komut.

Tarihsel olarak, komut argümanı, geçerli satır son satıra ayarlanmış olarak yürütülmüştür.
olup olmadığına bakılmaksızın dosyanın düzenleme komut görsel moddan yürütüldü veya yürütülmedi.
POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Tarihsel olarak, +komuta belirtilen düzenleme ve sonraki komutlar tarafından sınırlandırıldı
ilk , ve onlardan alıntı yapmanın bir yolu yoktu. Tutarlılık için POSIX.1‐2008 şunları gerektirir:
her zamanki gibi ex ters eğik çizgi alıntısı sağlanır.

Tarihsel olarak, belirten +komuta edit komutunun argümanı için bir dosya adı gerekliydi.
ayrıca belirtilmelidir; Örneğin, düzenleme: + 100 her zaman başarısız olurdu. Tutarlılık ve
belirtimin basitliği, POSIX.1‐2008 bu kullanımın bunun için başarısız olmasına izin vermez
sebep.

Tarihsel olarak, yalnızca son düzenlenen dosyanın imleç konumu kullanıcı tarafından hatırlanırdı.
editör. POSIX.1‐2008 bunun desteklenmesini gerektirir; ancak, uygulamalar
önceden düzenlenmiş herhangi bir dosya için imleç konumunu hatırlamaya ve geri yüklemeye izin verilir.

fileto
Tarihi versiyonları ex editör dosya komutu geçerli bir satırı ve sayısını görüntüledi
dosya boşken 0 düzenleme arabelleğindeki satırlar, vi -G komutu
aynı anda 1 düzenleme arabelleğinde geçerli bir satır ve satır sayısı görüntülendi
durum. POSIX.1‐2008 bu tutarsızlığa izin vermez, bunun yerine bir mesajın gönderilmesini gerektirir.
dosyanın boş olduğunu gösteren görüntülenecektir.

Küresel
İki geçişli çalışma global ve v komutların ima etmesi amaçlanmamıştır
uygulanması, yalnızca işlemin gerekli sonucu.

Geçerli satır ve sütun, kişi için belirtildiği şekilde ayarlanır. ex komutlar. Bu
gereksinim kümülatiftir; yani, geçerli satır ve sütun, tüm
tarafından yürütülen komutlar global or v emreder.

Ekle
için GEREKÇE'ye bakınız. eklemek Komut.

Tarihsel olarak, eklemek sıfır adresiyle kullanılamaz; yani, düzenleme yapıldığında değil
tampon boştu. POSIX.1‐2008, bu komutun
eklemek Komut.

Kaydol
Eylem kaydol özel karakterlerle ilgili komut yalnızca
POSIX yerel ayarı, çünkü bir noktadan sonra doğru boşluk miktarı değişir; içinde
Japonca'da hiçbiri gerekli değildir, Fransızca'da yalnızca tek boşluk vb.

Liste
Tarihi çıktı liste komut potansiyel olarak belirsizdi. Standart
geliştiriciler, bunu düzeltmenin tarihsel kurallara bağlı kalmaktan daha önemli olduğuna inanıyordu.
uygulama ve POSIX.1‐2008, açık çıktı gerektirir.

Harita
Tarihsel olarak, komut modu eşlemeleri yalnızca komut adlarına uygulanır; örneğin, eğer
karakter 'x' haritalandı 'y', komuta fx arandı 'x' karakter değil,
'y' karakter. POSIX.1‐2008 bu davranışı gerektirir. Tarihsel olarak, giren -V olarak
a'nın ilk karakteri vi komut bir hataydı. Birkaç uygulama uzatıldı
anlambilimi vi öyle ki -V, sonraki komut karakterinin
haritalanmadı. Buna POSIX.1‐2008 tarafından izin verilir, ancak zorunlu değildir. Ne olursa olsun, kullanarak
-V, bir dizi karakterde ikinci veya sonraki karakterden kaçmak için
eşle harita komut veya metin giriş modundaki herhangi bir karakter, tarihsel bir uygulamadır ve
girilen tuşların bir haritayla eşleşmesini durdurur. POSIX.1‐2008 aşağıdakilere uygunluk gerektirir:
tarihsel pratik.

Tarihsel uygulamalar, rakamların bir sayı olarak kullanılmasına izin verdi. harita komuta ss, ama sonra
haritayı görmezden geldi. POSIX.1‐2008, eşlenen rakamların göz ardı edilmemesini gerektirir.

Tarihsel uygulama harita komut izin vermedi harita olan komutlar
ilk karakter yazdırılabilirse, tek bir karakterden daha uzun. Bu davranış
POSIX.1‐2008 tarafından izin verilir, ancak zorunlu değildir.

Tarihsel olarak, eşlenen karakterler, remap düzenleme seçeneği ayarlanmadı veya
eşlenen karakterlerin öneki eşleme karakterleriyle eşleşir; örneğin, içinde
harita:

:harita ab ABCD

karakterler "ab" olduğu gibi kullanılmış ve yeniden eşlenmemiş, ancak karakterler "CD" vardı
uygunsa haritalanır. Bu, sistemde sonsuz döngülere neden olabilir. vi haritalama mekanizmaları
POSIX.1‐2008, tarihsel uygulamaya uyumu gerektirir ve bu tür döngüler
kesilebilir.

Metin giriş haritaları, genişletmeyle aynı sorunları yaşıyordu. ss için ex harita! ve haritasını kaldır!
yaptığı gibi komut ex kısaltmak ve kısaltmak komutlar. için GEREKÇE'ye bakınız. ex
kısaltmak emretmek. POSIX.1‐2008, bazı tarihsel uygulamaların benzer şekilde değiştirilmesini gerektirir
için harita ve haritayı kaldırmak için açıklandığı gibi komutlar kısaltmak ve kısaltmak emreder.

Tarihsel olarak, haritadiğerlerinin alt kümeleri olan s haritabağlı olarak farklı davrandı.
tanımlandıkları sıra. Örneğin:

:harita! ab kısa
:harita! ABC ve kazandırdı

her zaman karakterleri çevirirdi "ab" için "kısa"ne kadar hızlı olursa olsun
karakterler "ABC" girildi. Giriş sırası tersine çevrilmişse:

:harita! ABC ve kazandırdı
:harita! ab kısa

karakterler "ab" editörün tamamlanmasını bekleyerek duraklamasına neden olur 'C'
karakter ve karakterler asla eşlenmeyebilir "kısa". Tutarlılık ve
spesifikasyonun basitliği, POSIX.1‐2008 en kısa eşleşmenin kullanılmasını gerektirir
kez.

Editörün karakterlerin işlemi tamamlamasını beklemek için harcadığı süre. ss is
belirtilmemiş, çünkü sistemlerin zamanlama yetenekleri genellikle kesin değildir ve değişkendir ve
bağlantı hızı gibi diğer faktörlere bağlı olabilir. zaman olmalı
kullanıcının diziyi tamamlayabilmesi için yeterince uzun, ancak
kullanıcı beklemek zorunda. Bazı uygulamaları vi ekledim anahtar zamanı seçenek, hangi
kullanıcıların, editörün tamamlamayı beklediği 0,1 saniye sayısını ayarlamasına izin verir.
karakterler. Eşlenen terminal işlevi ve imleç tuşları bir ile başlama eğiliminde olduğundan
karakter ve anahtar son mu vi metin giriş modu, haritaile başlıyor
karakterler genellikle bu zaman aşımı süresinden muaf tutulur veya en azından zaman aşımına uğrar
farklı.

işaret
Geçmişte, kullanıcılar "önceki bağlam" işaretlerini açıkça belirleyebiliyordu. İçinde
ek olarak, ex komutlar '' ve '` ve vi komutlar '', ``, `', ve '` hepsi anılan
aynı işaret. Ek olarak, komut şu şekildeyse, önceki bağlam işaretleri ayarlanmamıştı:
işaretin ilişkilendirildiği adres ayarı başarısız oldu. POSIX.1‐2008 gerektirir
tarihsel pratiğe uygunluk. Tarihsel olarak, işaretli satırlar silinmişse, işaret
da silindi, ancak değişiklik geri alınırsa yeniden görünecekti. POSIX.1‐2008 gerektirir
tarihsel pratiğe uygunluk.

belirleyen özel olayların açıklaması ` ve ' işaretler geçmişle eşleşir
uygulama. Örneğin, tarihsel olarak komut /a/,/b/ ayarlamadı ` ve ' işaretler, ancak
komuta /a/,/b/sil yaptı.

Sonraki
Tarihsel olarak, herhangi ex komut olarak girilebilir +komuta argüman sonraki emretmek,
bazılarına rağmen (örneğin, eklemek ve eklemek) tarihi karıştırdığı biliniyordu
uygulamalar. POSIX.1‐2008, herhangi bir komuta izin verilmesini ve şu şekilde davranmasını gerektirir:
belirtildi. NS sonraki komutu birden fazla dosyayı kabul edebilir, bu nedenle aşağıdaki gibi kullanım:

sonraki bu [ABC] `

geçerlidir; için geçerli olması gerekmez. düzenleme or okumak komutlar, örneğin, çünkü onlar
yalnızca bir dosya adı bekleyin.

Tarihsel olarak, sonraki komut farklı davrandı :geri sarma bunun içinde komut
kuvvet bayrağını görmezden geldiyse, otomatik yazma bayrak konuldu. Tutarlılık için, POSIX.1‐2008
bu davranışa izin verme.

Tarihsel olarak, sonraki komutu, imleci dosya hiç düzenlenmemiş gibi konumlandırdı
önce, ne olursa olsun. POSIX.1‐2008, tutarlılık için bu davranışa izin vermez.
düzenleme Komut.

Bir muadili sağlamak isteyen uygulamalar sonraki düzenleyen komut
önceki dosya komutu kullandı öncesi], hangi hayır alır dosya argüman. POSIX.1-2008
bu komutu gerektirmez.

Açılış
Tarihsel olarak, açık komut başarısız olur açık düzenleme seçeneği ayarlanmadı.
POSIX.1‐2008, aşağıdakilerden bahsetmiyor: açık düzenleme seçeneği ve bu davranışı gerektirmez.
Bazı tarihsel uygulamalar, açık veya görsel moddan açık moda girilmesine izin vermez,
sadece buradan ex modu. Tutarlılık için POSIX.1‐2008 bu davranışa izin vermez.

Tarihsel olarak, komut satırından açık moda girme (yani, vi +aç) sonuçlandı
anormal davranışlar; örneğin, ex dosya ve set komutları ve vi komuta
-G işe yaramadı. Tutarlılık için POSIX.1‐2008 bu davranışa izin vermez.

Tarihsel olarak, açık sadece komuta izin verilir '/' arama olarak kullanılacak karakterler
desen sınırlayıcı. Tutarlılık için POSIX.1‐2008, kullanılan arama sınırlayıcılarının
tarafından s, global, ve v komutları da kabul edilir.

Korumak
The korumak komutu, tarihsel olarak dosyanın değiştirilmemiş olarak değerlendirilmesine neden olmaz.
editörden çıkabilecek gelecekteki komutların amaçları. POSIX.1‐2008 gerektirir
tarihsel pratiğe uygunluk.

Tarihsel belgeler, koruma yapıldığında kullanıcıya posta gönderilmediğini belirtti.
uygulanmış; ancak, bu durumda geçmiş uygulamalar posta gönderdi. POSIX.1-2008
tarihsel uygulamalara uygunluk gerektirir.

Print
tarafından NUL yazısı baskı komutu özel bir durum olarak belirtilmemiştir çünkü
standart geliştiriciler gerektirmek istemedi ex NUL karakterlerini desteklemek için. Tarihsel olarak,
karakterler, aşağıdaki gibi ARPA standart eşlemeleri kullanılarak görüntülendi:

1. Yazdırılabilir karakterler yalnız bırakılır.

2. \177'den küçük kontrol karakterleri şu şekilde temsil edilir: '^' ardından karakter
ofset '@' ASCII haritasındaki karakter; örneğin, \007 şu şekilde temsil edilir:
'^G'.

3. \177 şu şekilde temsil edilir: '^' ardından '?'.

Sekizinci bit setine sahip karakterlerin gösterimi daha az standarttı. Var olan
uygulamalar onaltılı (0x00), sekizli (\000) ve bir meta-bit ekranı kullanır. (İkincisi
sekizinci biti iki karakter olarak ayarlanmış görüntülenen baytlar "M-" takip eden
Yukarıda açıklandığı gibi yedi bitlik ekran.) İkincisi muhtemelen en iyi iddiaya sahiptir.
için kullanıldığı için tarihsel uygulama -v 4 BSD ve 4 BSD türevi seçeneği
sürümleri kedi 1980'den beri hizmet.

POSIX.1‐2008 tarafından belirli bir görüntüleme formatı gerekli değildir.

ASCII karakter kümesine açık bağımlılıktan mümkün olduğunca kaçınılmıştır, dolayısıyla
gösterim için "uygulama tanımlı çok karakterli dizi" ifadesinin kullanılması
örneğin, tarihsel kullanımına tercihli olarak yazdırılamayan karakterlerin "^ben"
için . Uygulamaların geçmişteki uygulamalara uyması teşvik edilir.
ayrılmak için güçlü bir nedenin olmaması.

Tarihsel olarak, tüm ex harfle başlayan komutlar 'P' kullanılarak girilebilir
komutların büyük harfli sürümleri; Örneğin, Yazdır], Korumak], ve Koymak] hepsi
geçerli komut adları. POSIX.1‐2008, bu tarihsel uygulamaya izin verir, ancak gerektirmez
çünkü komutların sermaye biçimleri bazı uygulamalar tarafından başka amaçlar için kullanılır.

Koymak
Tarihsel olarak, bir ex koymak açık veya görsel moddan yürütülen komut, komutla aynıydı.
açık veya görsel mod P komut, arabellek adlandırılmışsa ve karakter modunda kesilmişse ve
aynı şekilde p arabellek adlandırılmışsa ve satır modunda kesilmişse komut. isimsiz ise
tampon metnin kaynağıydı, metnin alındığı satırın tamamı
genellikle koymak, ve arabellek satır modundaymış gibi işlendi, ancak
son derece anormal davranış. Ek olarak, kullanarak Q geçiş yapmak için komut ex modu ve
sonra bir yapmak koymak metin eklemek gibi hatalarla da sonuçlanıyordu.
arabelleğin (varsayılan) içeriğiyle ilgisiz. Tutarlılık ve basitlik için
spesifikasyonu, POSIX.1‐2008 bu davranışlara izin vermez. Tüm ex koymak komutlar
hat modunda çalışması gerekir ve arabelleklerin içeriği şu şekilde değiştirilmez:
editörün modunu değiştirme.

Okumak
Tarihsel olarak, bir ex okumak açık veya görsel modda yürütülen komut, boş bir modda yürütülür
file, dosyanın ilk satırı olarak boş bir satır bıraktı. Tutarlılık ve basitlik için
spesifikasyonu, POSIX.1‐2008 bu davranışa izin vermez. Tarihsel olarak, bir okumak açıkta
veya bir programdan gelen görsel mod, imleci ilk okunan satırda değil, okunan son satırda bıraktı. İçin
tutarlılık, POSIX.1‐2008 bu davranışa izin vermez.

Tarihsel uygulamaları ex geri alınamadı okumak tarafından okunan komutlar
bir programın çıktısı. Tutarlılık için POSIX.1‐2008 bu davranışa izin vermez.

Tarihsel olarak, ex ve vi başarılı olduktan sonra mesaj okumak or yazmak belirtilen komut
"bayt" değil "karakterler". POSIX.1‐2008, bayt sayısının
görüntülenen karakter sayısı değil, çünkü çok baytlı olarak zor olabilir
Okunan karakter sayısını belirlemek için uygulamalar. Uygulamalar teşvik ediliyor
kullanıcıya görüntülenen mesajı netleştirmek için.

Tarihsel olarak, FIFO dışında, normal tip dışındaki dosyalarda okumalara izin verilmiyordu.
dosyalar okunabilir (muhtemelen yalnızca ex ve vi vardı
orijinal olarak yazılmıştır). Çünkü tarihi ex değerlendirilir okumak! ve okumak ! eşit olarak,
okumaya zorlamanın isteğe bağlı bir yolu olamaz. POSIX.1‐2008 izin verir, ancak vermez
bu davranışı gerektirir.

Kurtarmak
Editörün bazı geçmiş uygulamaları, kullanıcıların düzenleme arabelleğini kurtarmasına izin verdi
önceki bir düzenleme oturumunun içeriğini ve ardından bu içerikleri kaydetmeden çıkın (veya
açıkça onları atmak). POSIX.1‐2008'in düzenleme arabelleğine ihtiyaç duyma amacı
zaten değiştirilmiş olarak ele alınması bu kullanıcı hatasını önlemektir.

Geri sarma
Tarihsel uygulamalar destekledi geri sarma kullanıcı düzenlerken komut
listedeki ilk dosya; yani dosyanın geri sarma komutu düzenler. POSIX.1-2008
tarihsel pratiğe uyum gerektirir.

Vekil
Tarihsel olarak, ex kabul etti r seçeneği s emretmek. etkisi r seçenek şuydu
desen olarak herhangi bir komutta kullanılan son normal ifadeyi kullanın, ~
Komut. r seçenek POSIX.1‐2008 tarafından gerekli değildir. Tarihsel olarak, c ve g seçenekleri
geçiş yapıldı; örneğin, komut :s/abc/def/ aynıydı s/abc/def/ccccgggg.
Belirtimin basitliği için, POSIX.1‐2008 bu davranışa izin vermez.

Tilde komutu genellikle son arama RE'yi değiştirmek için kullanılır. Örneğin,
sıra:

s/kırmızı/mavi/
/yeşil
~

the ~ komut şuna eşdeğerdir:

s/yeşil/mavi/

Tarihsel olarak, ex aşağıdaki formların tümünü kabul etti:

s/abc/def/
s/abc/def
s/abc/
s/abc

POSIX.1‐2008, bu tarihsel uygulamaya uyumu gerektirir.

The s komut varsayar ki '^' karakter yalnızca tek bir sütunu kaplar
Görüntüle. Çoğu ex ve vi şartname sadece bir yer kaplar
Ekranda tek sütun. Bunun olmadığı bilinen bir karakter seti yok
doğru.

Tarihsel olarak, ikame komutlar için son sütun konumu, önceki
kolon hareketleri; bir kalıp araması ve ardından bir ikame sütunu terk eder
pozisyon değişmedi, bir 0 komutu ve ardından bir ikame sütunu değiştirecekti
ilk olmayan konum . Spesifikasyonun tutarlılığı ve basitliği için,
POSIX.1‐2008, son sütun konumunun her zaman birinciye ayarlanmasını gerektirir.
olmayan .

set
Tarihsel uygulamalar, her bir olay için tüm seçenekleri yeniden görüntüledi. herşey
anahtar kelime. POSIX.1‐2008 bu davranışa izin verir, ancak gerektirmez.

Etiket
Nerede olduğu konusunda herhangi bir gereklilik yapılmamaktadır. ex ve vi etiketi tarafından başvurulan dosyayı arayacaktır
giriş. Tarihsel uygulama, içinde bulunan yolu aramak olmuştur. etiketler dosya, dayalı
geçerli dizin. Bazı uygulamalarda bulunan yararlı bir uzantı, temele dayalı bakmaktır.
girişi tutan etiketler dosyasını da içeren dizinde. gereklilik yok
etiketler dosyasındaki etiket için hangi referansın kullanıldığına göre yapılır. Bu kasıtlı olarak,
bir etiket için bir etiket dosyasında birden çok giriş gibi uzantılara izin vermek için.

Kullanıcılar çoğu zaman birçok farklı etiket dosyası belirttiğinden, bunların bazıları ilgili olması gerekmemektedir.
veya herhangi bir zamanda mevcutsa, POSIX.1‐2008, sorunla ilgili hata mesajlarının olmasını gerektirir.
etiket dosyaları yalnızca istenen etiket bulunamazsa ve ardından yalnızca bir kez görüntülenir.
her seferinde etiket düzenleme seçeneği değiştirildi.

Geçerli düzenleme arabelleğinin değiştirilmemiş olması gerekliliği, yalnızca dosya
etiket girişi tarafından belirtilen mevcut dosya ile aynı değil (geçerli dosya tarafından tanımlandığı gibi).
yol adı). Tarihsel olarak, dosya adı da değişmiş olsaydı dosya yeniden yüklenirdi.
dosya adı geçerli yol adından farklıymış gibi. Tutarlılık ve basitlik için
POSIX.1‐2008, bu davranışa izin vermez, adın
karardaki tek faktör.

Tarihsel olarak, vi yalnızca geçerli dosyadaki etiketleri, geçerli imleçten
dosyanın sonu ve bu nedenle, eğer tarama seçenek ayarlanmadı, etiketler daha önce oluşuyor
geçerli imleç bulunamadı. POSIX.1‐2008 bunu bir hata olarak görüyor ve uygulamalar
ne olursa olsun, dosyadaki ilk oluşumu aramak için gereklidir.

geri al
The geri açıklama kasıtlı olarak "değiştirilmiş" kelimesini kullanır. bu geri komut değil
gibi düzenleme arabelleğinin içeriğini değiştiren komutları geri almak için tasarlanmıştır. düzenleme,
sonraki, etiketya da kurtarmak.

sonra imleç konumlandırma geri komut tarihsel olarak tutarsızdı vi, ara sıra
orijinal imleç konumunu geri yüklemeye çalışmak (global, geri, ve v komutları) ve
bazen, haritaların varlığında, imleci eklenen veya değiştirilen son satıra yerleştirme
ilk yerine. POSIX.1‐2008, tutarlılık için basitleştirilmiş bir davranış gerektirir ve
spesifikasyonun basitliği.

Sürümü
The versiyon yaygın olarak kabul edilen bir komut olmadığı için komut tam olarak belirtilemez.
sürüm bilgilerinin neleri içermesi gerektiğinin tanımı. Uygulamalar teşvik ediliyor
makul derecede akıllıca bir şey yapmak için.

Yazmak
Tarihsel olarak, ex ve vi başarılı olduktan sonra mesaj okumak or yazmak belirtilen komut
"bayt" değil "karakterler". POSIX.1‐2008, bayt sayısının
görüntülenen, karakter sayısı değil, çünkü çok baytlı olarak zor olabilir
Yazılan karakter sayısını belirlemek için uygulamalar. Uygulamalar
kullanıcıya görüntülenen mesajı netleştirmeye teşvik edilir.

Uygulamaların ek testler yapabilmesi için uygulama tanımlı testlere izin verilir.
kontroller; örneğin, kilitler veya dosya değiştirme süreleri için.

Geçmişte, var olmayan bir dosyaya ekleme yapmaya çalışmak bir hataya neden oluyordu. kaldı
uygulamaların izin vermesine izin vermek için POSIX.1‐2008'de belirtilmemiş yazmak başarmak, böylece
ekleme semantiği, tarihsel anlambilimine benzer csh.

Tarihsel vi boş düzenleme arabelleklerinin yazılmasına izin verilir. Ancak yoldan beri vi var
``boş'' dosyalarla uğraşmak, düzenleme arabelleğinde her zaman bir satıra sahip olmaktı, hayır
ne olursa olsun, onları tek, boş bir satırın dosyaları olarak yazdı. POSIX.1‐2008 izin vermiyor
bu davranış.

Tarihsel olarak, ex standart çıktı ve standart hatayı ne zaman olduğu gibi değerlerine geri yükledi ex
programlara yazma işlemi gerçekleştirilmeden önce çağrıldı. Bu terminali rahatsız edebilir
yapılandırmanın yanı sıra bazı terminaller için bir güvenlik sorunu olabilir. POSIX.1‐2008 değil
buna izin verin, program çıktısının sanki bilgisayar tarafından yakalanıp görüntülenmesini gerektirir. ex
baskı Komut.

Ayarlamak Pencere
Tarihsel olarak, satır sayısı şu değere ayarlandı: kaydırma tip ise seçenek
karakter dosya sonuydu. Bu özellik, uzun süredir çoğu tarihsel uygulamada bozuldu.
Ancak daha önce ve hiçbir yerde belgelenmemiştir. Bu nedenle, POSIX.1‐2008 kararlı bir şekilde
sessiz.

Tarihsel olarak, z komut -duyarlı ve z + ve z - farklı şeyler yaptı
göre z+ ve z- çünkü tür bir bayraktan ayırt edilemedi. (komutlar z .
ve z = tarihsel olarak geçersizdi.) POSIX.1‐2008, bu tarihsel geçmişe uygunluk gerektirir.
uygulama.

Tarihsel olarak, z komut daha ileriydi -bu konuda duyarlı saymak olamazdı
-sınırlandırılmış; örneğin, komutlar z= 5 ve z- 5 da geçersizdi. Çünkü
saymak tür karakteri veya bayraklar açısından belirsiz değil, bu değil
POSIX.1‐2008 tarafından izin verilir.

Kaçış
Tarihsel olarak, ex filtre komutları yalnızca komutların standart çıktısını okuyarak
standart hata her zamanki gibi terminalde görünüyor. bu vi yardımcı program, ancak, her ikisini de okuyun
standart çıktı ve standart hata. POSIX.1‐2008, her ikisi için de ikinci davranışı gerektirir ex
ve vi, tutarlılık için.

vardiya Sol ve vardiya Sağ
Tarihsel olarak, efekti artırmak için kaydırma karakterleri eklemek mümkündü.
emretmek; Örneğin, << çıkıntılı (veya >>> girintili) satırlar 3 girinti düzeyi
varsayılan yerine 1. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

-D
Tarihsel olarak, -D komutu istemi silerek kullanıcıya bir
düzenleme arabelleğinden satırların kesintisiz sunumu. Bu, POSIX.1‐2008 tarafından gerekli değildir;
uygulamalar mümkünse bunu sağlamaya teşvik edilir. Tarihsel olarak, -D
komut aldı ve sonra yok sayıldı, bir saymak. POSIX.1‐2008 bu davranışa izin vermez.

Yazmak çizgi Numara
Tarihsel olarak, ex = komut, yürütüldüğünde ex boş bir düzenleme arabelleğinde mod, rapor edildi
0 ve açık veya görsel moddan raporlandı 1. Tutarlılık ve basitlik için
spesifikasyonu, POSIX.1‐2008 bu davranışa izin vermez.

Gerçekleştirmek
Tarihsel olarak, ex metin giriş komutlarının eklenmesini doğru şekilde işlemedi (yani,
eklemek, eklemek, ve değişiklik) yürütülen arabelleklerde. POSIX.1‐2008 buna izin vermiyor
tutarlılık için dışlama.

Tarihsel olarak, yürütülmekte olan arabelleğin mantıksal içeriği,
arabelleğin kendisi yürütülen komutlar tarafından değiştirildi; yani, arabellek yürütme yaptı
kendi kendini değiştiren kodu desteklemez. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Tarihsel olarak, @ komut bir dizi satır aldı ve @ arabellek başına bir kez yürütüldü
satır, geçerli satırla (".") belirtilen her satıra ayarlayın. POSIX.1‐2008 gerektirir
tarihsel pratiğe uygunluk.

Bazı geçmiş uygulamalar, arabellek yürütme sırasında hata oluşup oluşmadığını fark etmedi.
Bu, bir dizi satır belirleme yeteneği ile birleştiğinde ex @ komut, yapar
düşmelerine neden olmak için önemsiz çekirdek. POSIX.1‐2008, uygulamaların durdurulmasını gerektirir
arabellek yürütme, herhangi bir hata oluşursa, belirtilen satır yoksa veya
düzenleme arabelleğinin içeriği değiştirilir (örneğin, arabellek, ex
düzenleme: komutu).

Düzenli İfadeler in ex
Tarihsel uygulama, sonuncunun yedek parçasındaki karakterlerin s emretmek-
yani, bir girerek eşleşenler '~' normal ifadede - daha fazla değildi
normal ifade motoru tarafından genişletildi. Yani, karakterler dizeyi içeriyorsa
"a.," eşleşirlerdi 'a' ardından ".," ve yok 'a' ardından herhangi bir karakter.
POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Düzenle Opsiyonlar in ex
Aşağıdaki paragraflar, bazı düzenleme seçeneklerinin geçmişteki davranışlarını açıklamaktadır.
herhangi bir nedenle POSIX.1‐2008'e dahil edilmemiştir. Uygulamalar güçlü
bu adları yalnızca burada açıklanan işlev tam olarak destekleniyorsa kullanmaya teşvik edilir.

genişletilmiş The genişletilmiş düzenleme seçeneği bazı uygulamalarda kullanılmıştır. vi sağlamak için
Temel normal ifadeler yerine genişletilmiş normal ifadeler Bu seçenek
yaygın tarihsel uygulama olmadığı için POSIX.1‐2008'den çıkarılmıştır.

flaş The flaş düzenleme seçeneği geçmişte ekranın bip sesi yerine yanıp sönmesine neden oldu
hata üzerine. Bu seçenek, POSIX.1‐2008'de bulunmadığından çıkarılmıştır.
bazı tarihsel uygulamalar.

sabit sekmeler The sabit sekmeler düzenleme seçeneği, tarihsel olarak, arasındaki sütun sayısını tanımladı
donanım sekmesi ayarları. Bu seçenek, POSIX.1‐2008'den çıkarılmıştır çünkü
artık genel olarak yararlı olmadığına inanılıyor.

modelin The modelin (bazen adlandırılmış modeller) geçmişte neden olduğu seçeneği düzenle ex or
vi editör komutları için dosyanın ilk ve son beş satırını okumak için. Bu
seçenek bir güvenlik sorunudur ve satıcıların bunu silmeleri şiddetle tavsiye edilir.
tarihsel uygulamalardan.

açık The açık düzenleme seçeneğine tarihsel olarak izin verilmedi ex açık ve görsel emreder.
Bu komutlar aşağıdakiler için gerekli olduğundan, bu düzenleme seçeneği atlandı.
POSIX.1-2008.

optimize The optimize seçeneği ayarlayarak tarihsel olarak hızlandırılmış metin çıktısını düzenleme seçeneği
otomatik yapmamak için terminal daha fazla yazdırırken karakterler
birden fazla mantıksal çıktı satırı. Bu seçenek POSIX.1‐2008'den çıkarılmıştır.
adreslenebilir imleçleri olmayan terminaller için tasarlandığından,
nadiren, eğer hala kullanılıyorsa.

cetvel The cetvel düzenleme seçeneği bazı uygulamalarda kullanılmıştır. vi sunmak
kullanıcı için geçerli satır/sütun cetveli. Bu seçenek POSIX.1‐2008'den çıkarılmıştır.
çünkü yaygın bir tarihsel uygulama değildir.

kaynak bilgisi The kaynak bilgisi düzenleme seçeneği tarihsel olarak neden oldu ex or vi başlangıç ​​dosyalarını kaynaklamak için
Düzenleyiciyi çalıştıran kullanıcı dışındaki kullanıcılara ait olanlar. Bu seçenek
bir güvenlik sorunudur ve satıcıların bunu hizmetlerinden kaldırmaları şiddetle tavsiye edilir.
uygulamalar.

zaman aşımı The zaman aşımı düzenleme seçeneği, geçmişte yalnızca (artık standart) özelliği etkinleştirdi
bir makronun parçası olabilecek anahtarları döndürmeden önce kısa bir süre beklemek.
Bu özellik, davranışı artık standart olduğundan, POSIX.1‐2008'den çıkarılmıştır.
yaygın olarak yararlı değildir ve nadiren belgelenmiştir.

gereksiz sözlerle dolu The gereksiz sözlerle dolu düzenleme seçeneği bazı uygulamalarda kullanılmıştır. vi neden olmak vi
yaygın hatalar için hata mesajları vermek; örneğin, hareket ettirmeye çalışmak
imleç yalnızca satırı uyarmak yerine satırın başını veya sonunu
ekran. (tarihi vi sadece terminali uyardı ve mesaj vermedi
bu tür hatalar için. Tarihsel düzenleyici seçeneği kısa ne zaman yapacağını seçmedi
mevcut hata mesajları, sadece mevcut hata mesajlarını az ya da çok yaptı
ayrıntılı.) Bu seçenek, yaygın olmadığı için POSIX.1‐2008'den çıkarılmıştır.
tarihsel uygulama; ancak, uygulayıcıların isterlerse bunu kullanmaları teşvik edilir.
saf kullanıcılar için hata mesajları sağlamak.

sarılmış The sarılmış düzenleme seçeneği bazı uygulamalarda kullanılmıştır. vi belirtmek
sağdan değil sol kenardan ölçülen otomatik bir kenar boşluğu
kenar boşluğu. Bu, bir dosyayı düzenlemek için birden çok ekran boyutu kullanıldığında kullanışlıdır.
tek dosya. Bu seçenek, POSIX.1‐2008'den çıkarılmıştır çünkü
yaygın tarihsel uygulama; ancak, uygulayıcıların bunu kullanmaları teşvik edilir.
bu işlevi eklerlerse.

otomatik girinti, ai
Tarihsel olarak, komut 0a akımdan bağımsız olarak herhangi bir otomatik girinti yapmadı
1. satırın girintisi. POSIX.1‐2008, 1. satırdaki girintilerin
Kullanılmış.

otomatik baskı, ap
Tarihsel olarak, otomatik baskı düzenleme seçeneği tamamen tutarlı değildi veya yalnızca
düzenleme arabelleğindeki değişiklikler. İstisnalar şunlardı: okumak komut (bir
dosyası, ancak bir filtreden değil), eklemek, değişiklik, eklemek, global, ve v komutlar, tüm
hangisi etkilenmedi otomatik baskı, Ve etiket tarafından etkilenen komut
otomatik baskı. POSIX.1‐2008, tarihsel uygulamaya uygunluk gerektirir.

Tarihsel olarak, otomatik baskı seçenek yalnızca girilen birden çok komutun sonuncusuna uygulanır
kullanarak sınırlayıcılar; Örneğin, silmek etkilendi otomatik baskı,
fakat sil|sürüm değildi. POSIX.1‐2008, geçmişe uygunluk gerektirir
uygulama.

otomatik yazma, aw
ekleme '!' karakteri ex sonraki otomatik yazma işlemini önlemek için komut
tarihsel uygulamalarda desteklenmedi. POSIX.1‐2008, davranışın
diğeriyle eşleş ex tutarlılık için komutlar.

göz ardı etmek, ic
Büyük/küçük harfe duyarsız eşleştirmenin tarihsel uygulamaları ( göz ardı etmek düzenleme seçeneği) kurşun
Aralık ifadelerinde büyük harfli karakterlerin kullanıldığı sezgisel durumlara karşı.
Tarihsel olarak, süreç şöyleydi:

1. Düzenleme arabelleğinden bir satır metin alın.

2. Metin satırında büyük harfi küçük harfe dönüştürün.

3. Karakter sınıfı dışında normal ifadelerde büyük harfi küçük harfe dönüştürün
özellikleri.

4. Normal ifadeleri metinle eşleştirin.

Bu, şu anlama gelir: göz ardı etmek aslında, metin:

The kedi oturdu on the mat

tarafından eşleştirilir

/^the/

ama tarafından değil:

/^[A−Z]o/

Normal ifadeleri uygulayan diğer komutlarla tutarlılık için POSIX.1‐2008,
bu davranışa izin verme.

paragraflar, paragraf
ISO POSIX-2:1993 standardı varsayılanı yaptı paragraflar ve bölümler düzenleme seçenekleri
uygulama tanımlı, tarihsel olarak UNIX sistemine yönelik olduklarını savunarak troff
metin biçimlendirici ve bir "taşınabilir kullanıcı" {, }, [[, ]], (, ve ) komutlar
açık veya görsel mod ve imlecin beklenmedik yerlerde durmasını sağlayın. POSIX.1‐2008 belirtir
POSIX yerel ayarındaki değerleri, olağandışı gruplama nedeniyle (yalnızca gruplandıklarında çalışırlar)
aynı anda iki karaktere bölünür), genel amaçlı kullanılamayacakları anlamına gelir.
hareket, ne olursa olsun.

Sadece oku
Uygulamalar, kullanıcıya mümkün olan en iyi bilgiyi sağlamaya teşvik edilir.
dikkate almamaları dışında dosyanın salt okunur durumu
sürecin mevcut özel ayrıcalıkları. Bu, kullanıcılara bir güvenlik ağı sağlar çünkü
ek dosyalarla çalışırken bile salt okunur dosyaların üzerine yazmaya zorlamaları gerekir.
ayrıcalıkları.

The Sadece oku düzenleme seçeneği belirtimi büyük ölçüde tarihsel uygulamaya uygundur. Tek
fark, geçmiş uygulamaların kullanıcının
Sadece oku dosyanın herhangi bir nedenle salt okunur olarak işaretlendiği durumlarda düzenleme seçeneği,
ve bu nedenle Sadece oku içeriğini bir dahaki sefere düzenleme seçeneği
düzenleme arabelleği değiştirildi. Bu davranışa POSIX.1‐2008 tarafından izin verilmemektedir.

rapor
Bir ara belleğe kopyalanan satırların, silinen satırlardan farklı etkileşim kurması gerekliliği,
tarihsel pratik. Örneğin, eğer rapor düzenleme seçeneği 3 olarak ayarlandı, 3 satır silindi
rapor yazılmasına neden olur, ancak rapor yazılmadan önce 4 satırın kopyalanması gerekir.

Gereklilik ex global, v, açık, geri, ve görsel komutlar raporları sunar
komut yürütme sırasında eklenen veya silinen toplam satır sayısına ve bu
tarafından yürütülen komutlar global ve v komutlar rapor sunmuyor, tarihsel
uygulama. POSIX.1‐2008, arabellek yürütmesinin yapılmasını gerektirerek tarihsel uygulamayı genişletir.
benzer şekilde tedavi edilir. Bunun nedenleri iki yönlüdür. Tarihsel olarak, yalnızca
arabellekten yürütülen son komut, her yeni raporda olduğu gibi kullanıcı tarafından görülecektir.
sonuncunun üzerine yaz. Ek olarak, standart geliştiriciler, arabellek yürütmesinin
ile daha çok ortak noktası vardı global ve v diğer komutlarla yaptığından daha fazla komut ex komutlar ve
özelliklerin tutarlılığı ve basitliği için benzer şekilde davranmalıdır.

gösteri maçı, sm
İmlecin eşleşen karakter üzerinde harcadığı süre belirtilmemiş çünkü
sistemlerin zamanlama yetenekleri genellikle kesin değildir ve değişkendir. zaman uzun olmalı
kullanıcının fark etmesi için yeterli, ancak kullanıcının sinirlenmesi için yeterince uzun değil. Biraz
uygulamaları vi ekledim maç zamanı kullanıcıların numarayı ayarlamasına izin veren seçenek
0,1 saniyelik aralıklarla imleç eşleşen karakter üzerinde duraklar.

gösteri modu
The gösteri modu seçeneği, bazı tarihsel uygulamalarda kullanılmıştır. ex ve vi için
açık veya görsel moddayken mevcut düzenleme modunu görüntüleyin. düzenleme modları vardır
genellikle "komut" ve "girdi"yi ve bazen aşağıdaki gibi diğer modları içerir:
"değiştir" ve "değiştir". Dize genellikle ekranın alt satırında görüntülenir.
en sağ köşedeki ekran. Ayrıca, bir önceki '*' karakter genellikle belirtilir
düzenleme arabelleğinin içeriğinin değiştirilip değiştirilmediği. Son ekran var
bazen bir parçası oldu gösteri modu seçenek ve bazen başka bir seçeneğe dayalıdır. Bu
4 BSD tarihsel uygulamasında seçenek mevcut değildi. violarak görüldü ama
özellikle acemi kullanıcılar için genellikle yararlıdır ve POSIX.1‐2008 tarafından gereklidir.

The smd için steno gösteri modu seçenek tüm tarihsel olarak mevcut değildi
editörün uygulamaları. POSIX.1‐2008, tutarlılık için bunu gerektirir.

Editörün tüm geçmiş uygulamaları komut modu için bir mod dizesi göstermedi,
bir mod dizesinin olmamasıyla komut modunu metin giriş modundan ayırt etmek.
POSIX.1‐2008, bu davranışa tarihsel uygulamayla tutarlılık sağlamak için izin verir, ancak
uygulamaların her iki mod için bir görüntüleme dizesi sağlaması teşvik edilir.

yavaş aç
Tarihsel olarak, yavaş aç terminal baud hızı daha düşükse seçenek otomatik olarak ayarlandı
1200 baud'dan fazlaysa veya baud hızı 1200 baud ise ve redraw seçenek ayarlanmadı. bu
yavaş aç seçeneğin iki etkisi oldu. İlk olarak, bir satırın ortasına karakter eklerken,
imleçten sonraki karakterler ileri itilmeyecek, ancak üzerine yazılmış gibi görünecektir.
İkincisi, yeni bir metin satırı oluştururken, mevcut satırdan sonraki satırlar
aşağı kaydırıldı, ancak üzerine yazılmış gibi görünüyor. Her iki durumda da metin giriş modunun sonlandırılması
düzenleme arabelleğinin gerçek içeriğiyle eşleşmesi için ekranın yenilenmesine neden olur.
Son olarak, yeterince akıllı olan uçbirimler, editörün
yavaş aç seçenek. POSIX.1‐2008, çoğu tarihsel davranışa izin verir, tarihsel
gerektiren pratik yavaş aç düzenleme seçeneği kullanıcı tarafından belirlenirse davranışlar.

etiketler
Uygulamaların kendi
etiketler tarihsel olanlara uymayan uygulamalar. Varsayılan etiketler
seçenek değeri muhtemelen en azından dosyayı içermelidir ./etiketler.

dönem
Tarihsel uygulamaları ex ve vi göz ardı edilen değişiklikler dönem seçeneğinden sonra düzenleme
ilk terminal bilgileri yüklendi. Buna POSIX.1‐2008 tarafından izin verilir; fakat,
uygulamaların, kullanıcının herhangi bir zamanda terminal tipini değiştirmesine izin vermesi teşvik edilir.
Zaman.

kısa
Tarihsel olarak, kısa düzenleme seçeneği isteğe bağlı olarak daha kısa, daha az açıklayıcı bir hata sağladı
mesaj, bazı hata mesajları için. Buna POSIX.1‐2008 tarafından izin verilir, ancak zorunlu değildir.
Tarihsel olarak, en yaygın görsel mod hataları (örneğin, imleci geçmişe taşımaya çalışmak)
satırın sonu) bir hata mesajıyla sonuçlanmadı, sadece terminali uyardı.
Acemi kullanıcılar için mesaj sağlamak isteyen uygulamalar, bunu aşağıdakilere dayalı olarak yapmaya teşvik edilir:
the düzenleme seçenek gereksiz sözlerle dolu, ve yok kısa.

pencere
Tarihsel uygulamalarda, varsayılan pencere düzenleme seçeneği şuna dayanıyordu:
baud hızı aşağıdaki gibidir:

1. Baud hızı 1200'den düşükse, düzenleme seçenek w300 pencere değerini ayarlayın; için
örnek, satır:

set w300=12

baud hızı 12'den düşükse pencere seçeneğini 1200'ye ayarlar.

2. Baud hızı 1200'e eşitse, düzenleme seçenek w1200 pencere değerini ayarlayın.

3. Baud hızı 1200'den büyükse, düzenleme seçenek w9600 pencere değerini ayarlayın.

The w300, w1200, ve w9600 seçenekler nedeniyle POSIX.1‐2008'de görünmüyor
belirli baud hızlarına bağımlılık.

Tarihsel uygulamalarda, çeşitli komutlar tarafından görüntülenen pencerenin boyutu,
ile ilgili, ancak bununla aynı olması zorunlu değildir. pencere düzenleme seçeneği. Örneğin, boyut
pencere tarafından ayarlandı ex komuta görsel 10, ancak değerini değiştirmedi.
pencere düzenleme seçeneği. Ancak, değerin değiştirilmesi pencere düzenleme seçeneği değiştirdi
ekran yeniden boyandığında görüntülenen satır sayısı. POSIX.1‐2008 değil
Bu davranışa, spesifikasyonun tutarlılığı ve basitliği açısından izin verin ve
görüntülenen satır sayısını değiştiren tüm komutların bunu şu şekilde yapmasını gerektirir:
değerinin ayarlanması pencere düzenleme seçeneği.

sarma marjı, wm
Tarihsel olarak, sarma marjı seçeneği, aynı zamanda karakterleri ekleyen haritaları etkilemedi.
ilişkili saymaks; örneğin :harita K 5aABC DEF. Ne yazık ki, yaygın olarak kullanılan
bu davranışa bağlı olan haritalar. Spesifikasyonun tutarlılığı ve basitliği için,
POSIX.1‐2008 bu davranışa izin vermez.

Tarihsel olarak, sarma marjı tüm karakterlerin sütun görüntüleme genişliği kullanılarak hesaplandı
ekranda. Örneğin, kullanan bir uygulama "^ben" temsil etmek karakterler
zaman liste düzenleme seçeneği ayarlandı, burada '^' ve 'BEN' her biri tek bir sütun aldı
ekran, hesaplar sarma marjı her biri için 2 değerine göre . bu numara
edit seçeneği de satırın efektif uzunluğunu benzer şekilde değiştirdi. POSIX.1-2008
tarihsel pratiğe uyum gerektirir.

Bu standardın önceki sürümleri, sekizden farklı baytlı uygulamalara izin verdi.
bit, ancak bu, bu sürümde değiştirildi.

GELECEK TARİFİ


Yok.

onworks.net hizmetlerini kullanarak exposix'i çevrimiçi kullanın


Ücretsiz Sunucular ve İş İstasyonları

Windows ve Linux uygulamalarını indirin

  • 1
    Phaser
    Phaser
    Phaser hızlı, ücretsiz ve eğlenceli bir açık
    sunan kaynak HTML5 oyun çerçevesi
    WebGL ve Canvas oluşturma
    masaüstü ve mobil web tarayıcıları. Oyunlar
    ortak olabilir...
    Phaser'ı indirin
  • 2
    VASAL Motor
    VASAL Motor
    VASSAL, oluşturmak için bir oyun motorudur.
    geleneksel tahtanın elektronik versiyonları
    ve kart oyunları. için destek sağlar
    oyun parçası oluşturma ve etkileşim,
    ve ...
    VASSAL Motorunu İndirin
  • 3
    OpenPDF - iText çatalı
    OpenPDF - iText çatalı
    OpenPDF oluşturmak için bir Java kütüphanesidir.
    ve PDF dosyalarını bir LGPL ile düzenlemek ve
    MPL açık kaynak lisansı. OpenPDF
    LGPL/MPL iText'in açık kaynaklı halefi,
    var ...
    OpenPDF'i İndirin - iText Çatalı
  • 4
    SAGA CBS
    SAGA CBS
    SAGA - Otomatik Sistem
    Yerbilimsel Analizler - Bir Coğrafidir
    Bilgi Sistemi (GIS) yazılımı ile
    coğrafi veriler için muazzam yetenekler
    işleme ve ana...
    SAGA GIS'i indirin
  • 5
    Java/JTOpen için Araç Kutusu
    Java/JTOpen için Araç Kutusu
    IBM Toolbox for Java / JTOpen, bir
    destekleyen Java sınıfları kütüphanesi
    istemci/sunucu ve internet programlama
    modelleri OS/400 çalıştıran bir sisteme,
    i5/OS veya...
    Java/JTOpen için Toolbox'ı indirin
  • 6
    d3.js
    d3.js
    D3.js (veya Veriye Dayalı Belgeler için D3)
    sağlayan bir JavaScript kitaplığıdır.
    dinamik, etkileşimli veriler üretmek için
    web tarayıcılarında görselleştirmeler. D3 ile
    sen...
    D3.js'yi indirin
  • Daha fazla »

Linux komutları

Ad