Bu, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen komut notasıdır.
Program:
ADI
notangle, noweave, nountangle - noweb, okuryazar bir programlama aracı
SİNOPSİS
notaçı [-Rkök adı ...] [süzgeç emretmek] [-L[biçim]] [dosya] ...
isim düğümü [-ml|-m3|-c|-c++|-awk|-teks|f77|f90|-peltek|-matlab] [-Rkök adı ...] [süzgeç
emretmek] [-wgenişlik] [dosya] ...
şimdi [seçenekler] [dosya] ...
AÇIKLAMA
Nevşehir Knuth'unki gibi okuryazar bir programlama aracıdır AĞ, sadece daha basit. A Noweb dosya
belgelerle serpiştirilmiş program kaynak kodunu içerir. Ne zaman notaçı verildi
Noweb dosyası, programı standart çıktıya yazar. Ne zaman şimdi verildi Noweb dosyası,
okur Noweb standart çıktıda kaynak ve üretir, Lateks, TeX, troffya da HTML
dizgi belgeleri için kaynak. isim düğümü okuryazar bir programı sıradan bir programa dönüştürür
serpiştirilmiş belgeleri yorumlara dönüştürerek programlayın. `-' dosya adı şu anlama gelir:
standart girdi.
FORMAT OF ŞİMDİ DOSYALAR
A Noweb dosya bir dizidir parçaları, herhangi bir sırada görünebilir. Bir yığın içerebilir
kod veya belgeler. Belge parçaları, at işaretiyle başlayan bir satırla başlar
(@) ardından bir boşluk veya yeni satır. İsimleri yok. Kod parçaları şununla başlar:
<<yığın isim>> =
kendi başına bir satırda. Çift sol açılı ayraç (<<) ilk sütunda olmalıdır.
Parçalar, başka bir yığının başlangıcında veya dosyanın sonunda sonlandırılır. eğer ilk
dosyadaki satır bir yığının başlangıcını işaretlemez, ilk olduğu varsayılır.
bir dokümantasyon yığınının satırı.
Belge parçaları, tarafından yoksayılan metinler içerir. notaçı ve kelimesi kelimesine kopyalandı
standart çıktı şimdi (alıntılanan kod hariç). şimdi ile çalışabilir Lateks, sade
TeX, troff or HTML. Sade TeX, bir referans ekler TeX makro paketi, nwmac,
hangi gibi komutları tanımlar \bölüm ve \Bölüm.
Kod parçaları, program kaynak kodunu ve diğer kod parçalarına referansları içerir. Birkaç kod
parçalar aynı ada sahip olabilir; notaçı tek bir üretmek için tanımlarını birleştirir
parça, tıpkı yaptığı gibi arapsaçı(1). Kod parçası tanımları, makro tanımları gibidir;
notaçı bir parçayı genişleterek bir programı çıkarır (varsayılan olarak, <<*>>).
Bu yığının tanımı, kendileri olan diğer parçalara referanslar içerir.
genişletildi, vb. notaçıçıktısı okunabilir; girintisini korur
göründükleri parçalara göre genişletilmiş parçalar.
Kod, çift köşeli parantezler ([[Kendi ID’n ile mağazalarını oluştur]])
etrafında. Bu çift köşeli parantezler notaçı, ama onlar tarafından kullanılabilir
şimdi koda özel tipografik işlem vermek için, örneğin hiper metin bağlantıları. Alıntı yapılırsa
kod üç veya daha fazla köşeli parantez ile biter, şimdi en sağdaki çifti seçer, böylece,
örneğin, [[bir[i]]] doğru şekilde ayrıştırılır. Kod parçalarının adları içinde görünebilir.
alıntılanan kodun kendisi bir kod öbeği adının parçası olmadığı sürece.
Kodda, noweb eşleştirilmemiş çift sol veya sağ açılı ayraçları değişmez olarak kabul eder << ve >>.
Bu tür parantezleri, hatta belgelerdeki eşleştirilmiş parantezleri veya parantezleri
değişmez olarak kabul edilirse, bir önceki işaretini kullanın (örn. @<).
Bazı programlama veya biçimlendirme dilleri tek bir @ ilk sütunda oturum açın.
Noweb kullanıcıları bu etkiyi iki katına koyarak elde edebilirler. @@ ilk sütunda; bunda
sadece pozisyon, tek bir @ işaret.
karışıklık
notaçı ve isim düğümü bazı seçeneklerin etkileri olmasına rağmen aynı seçenek grubunu kabul edin
sadece birinde veya diğerinde. Seçenekler şunlardır:
-Risim genişletmek <<isim>> kod parçası. NS -R seçenek tekrarlanabilir, bu durumda her
yığın çıktıya yazılır. Eğer hayırsa -R seçenek verildi, adlı öbeği genişletin
<<*>>.
-Lbiçim
Yığın sınırlarında satır numarası göstergeleri yayar. Bir satır numarası göstergesi
onu takip eden satırın kaynağını tanımlar. İçinde biçim, %F gösterir
kaynak dosyanın adı, %L kaynak dosyanın satır numarasını gösterir, %N
yeni satırı gösterir ve %% yüzde işareti gösterir. Bir işaret ve rakam olabilir
yüzde işareti ile ` işareti arasına eklenirL', bu durumda satır numarası
bu miktara göre ayarlanabilir. Eğer biçim atlanır, varsayılan biçim şudur:
C önişlemcisi tarafından kabul edilir: `#hat %L "%F"%N'. kullanırken -Lbiçim seçeneği
notaçı tüm metnin giriş ve çıkışta aynı sütunda görünmesini sağlar.
isim düğümü bu seçeneği yok sayar.
Yaygın biçim dizeleri şunları içerir:
C -L'#çizgi %L "%F"%N'
Güneş FORTRAN -L'\# %L "%F"%N'
Simge -L'#çizgi %-1 litre "%F"%N'
Modula-3 -L'<*LINE %L "%F" *>%N'
SML / NJ -L'(*#satır %L "%F"*)'
Converse problemini çözmek için, yani şu anda mantıklı bir şey yapmak için
#hat girişinde, bkz. keskin hat örnekler dizininde filtreleyin.
-tk Girişten çıkışa dokunulmadan sekmeleri kopyalayın ve varsayarak girinti için sekmeleri kullanın
her birini durdurur k sütunlar. Varsayılan olarak, sekmeler her 8'de bir duraklı boşluklara genişletilir
sütunlar.
süzgeç cmd
Filtrele Noweb kaynak yoluyla cmd alet formuna dönüştürdükten sonra ve önce
karışıklık. notaçı arar cmd kullanıcının ilk PATH, daha sonra /usr/lib/noweb.
Bu tür filtreler, özellikler eklemek için kullanılabilir. notaçı; bir örnek için bkz.
/usr/lib/noweb/emptydefn. Sadece uzmanlar için.
-işaretleme ayrıştırıcı
Kullanım ayrıştırıcı giriş dosyasını ayrıştırmak için. Noweb araçlarının diğer dosyalarda kullanılmasını sağlar.
formatlar; örneğin, numaralandırma ayrıştırıcı anlar nuweb(1) biçimi. Görmek
Nowebfiltreler(7) daha fazla bilgi için. Sadece uzmanlar için.
-awk | -c | -icn | -Icon | -ml | -m3 | -paskal | f77 | f90 | -teks
Ne zaman isim düğümü dokümantasyon parçalarını yorumlara dönüştürür, yorumu kullanın
adlı dilin biçimi. -c varsayılandır. notaçı bu seçenekleri yok sayar.
-wn Ne zaman isim düğümü dokümantasyon parçalarını yorumlara dönüştürür, üzerinde yorumlar oluşturur
genişlik çizgileri n. notaçı bu seçeneği yok sayar.
DOKUMA
Çıkış şimdi -ebilmek var olmak kullanılmış TeX belgeler \giriş nwmac, in Lateks evraklar
kullananlar Noweb paket (bkz. şimdiebstyle(1)), ve HTML taranacak belgeler
mozaik(1). Şimdi kod parçalarına biraz benzer davranır Lateks liste ortamlar. Eğer ``@
Bir kod parçasını sonlandıran '', hemen ardından metin gelir, bu metin
paragraf sonu olmadan kod yığını. Satırın geri kalanı boşsa, şimdi koyar TeX
"dikey moda" geçer ve daha sonra metin yeni, girintili bir paragraf başlatır.
Aşırı doluluktan kaçınmak için gerekmedikçe kod parçalarının ortasında sayfa sonu olmaz
vbox. Kod öbeğinden hemen önceki belge öbeği aynı sayfada görünür
bu kod parçası olarak, aksi takdirde önceki kuralı ihlal eder.
Şimdi içine fazladan yeni satır eklemez TeX çıktı, bu nedenle verilen satır numaraları TeX
hata mesajları, girdi dosyasındakilerle aynıdır.
şimdi biçimlendirici seçimini belirleyen ve farklı biçimlendirmeyi destekleyen seçeneklere sahiptir
deyimler ve araçlar. Temel seçenekler burada açıklanmıştır; indeks ve çapraz ile ilgili seçenekler
referans bilgileri İNDEKSLEME VE ÇAPRAZ REFERANS bölümünde açıklanmıştır.
-lateks Sarıcı dahil olmak üzere LaTeX yayar göre ile stil Noweb paket ve sayfa
stil. (Varsayılan)
-teks ile sarıcı dahil olmak üzere düz TeX yayar. nwmac makrolar.
-html HTML sarmalayıcı kullanarak HTML yayınlayın. Çıktı ilginç değil dizin or -x.
Etiketler ve , satırlarda kendi başlarına bir liste oluştururlar.
sırasıyla parçalar ve bir tanımlayıcı dizini. Bu etiketler yoksa,
liste ve dizin dosyanın sonuna yerleştirilir.
-lateks+html
Belge parçalarının LaTeX olduğunu varsayın, ancak uygun şekilde kod parçaları için HTML oluşturun
işaretli yani dönüşüm ile lateks2html(1) makul çıktı sağlar. Bir LaTeX sarmalayıcı
ima edilir, ancak ile kapatılabilir -n. Kullanım of Re-Tweet seçenek is kullanımdan kaldırıldı; kullanım
-html ile süzgeç 2 saat yerine.
- troff Yaymak troff(1) işaretleme (sarmalayıcı olmadan). Sonuç ile işlenmelidir
normal(1). için hata raporları - troff Aharon Robbins'e <[e-posta korumalı]>.
-n Herhangi bir sarmalayıcı (başlık veya fragman) kullanmayın. Bu seçenek şu durumlarda kullanışlıdır: şimdi's
çıktı daha büyük bir belgenin parçası olacaktır. Ayrıca bakınız -gecikme.
süzgeç cmd
filtreler Noweb kaynak yoluyla cmd alet formuna dönüştürdükten sonra ve önce
dönüştürmek TeX. şimdi arar cmd kullanıcının ilk YOL, daha sonra
/usr/lib/noweb.dll Bu tür filtreler, özellikler eklemek için kullanılabilir. şimdi örgü; bir ... için
örnek, bkz. /usr/lib/noweb/noxref.krom. Şimdi dört filtreye kadar destekler; bir
örneğin, kabuk hilesiyle daha fazlasını elde edebilir, süzgeç "simge.filtre | noidx".
-otomatik tanımlamalar, -x, dizin, ve -index from seçenekler filtreler olarak uygulanır. filtreler
kabuğun ile yürütülür değerlendirme komut, yani cmd buna göre alıntı yapılmalıdır.
-işaretleme ayrıştırıcı
Kullanım ayrıştırıcı giriş dosyasını ayrıştırmak için. Noweb araçlarının diğer dosyalarda kullanılmasını sağlar.
formatlar; örneğin, numaralandırma ayrıştırıcı anlar nuweb(1) biçimi. Görmek
Nowebfiltreler(7) daha fazla bilgi için. Sadece uzmanlar için.
-Seçeneği yeğlemek
Ekler \nowebseçenekler{yeğlemek} için Lateks başlık. Görmek şimdiebstyle(1) değerleri için opt.
Normalde yalnızca aşağıdakilerle kullanışlıdır: -lateks seçenek, ancak -Seçeneği uzunxref kara büyü yapar
ile -html.
-gecikme Varsayılan olarak, şimdi dosya adını ve diğer bilgileri çıktıya önce
programın ilk parçası. -gecikme bu bilgiyi ilkinden sonraya kadar geciktirir
dokümantasyon yığını, hareket etmeyi biraz WEB ``limbo.'' Seçenek
tipik olarak bir kullanıcının özel bir Lateks \ documentclass komuta
ve ilk belge öbeğindeki diğer giriş materyalleri (örn. önce the
ilk @ işareti). Bu seçenek ayrıca, takip eden çapraz referans bilgilerini
belgenin sonunda değil, son öbekten hemen önce yayınlanacak; NS
son parçanın içermesi bekleniyor \end{belge}. The -gecikme seçenek anlamına gelir
-n seçeneği.
-tk Her durakta sekmeleri genişletin k sütunlar. (Varsayılan, her 8 sütunda bir genişletmektir.)
-t Sekmeleri çıktıya kopyalayın.
-v Standart hatada işlem hattını ve RCS bilgilerini yazdırın.
İNDEKSLEME VE ÇAPRAZ REFERANS
Ile kullanıldığında Lateks, troffya da Html, şimdi indeksleme ve çapraz referans sağlayabilir
parçalar ve programlama dili tanımlayıcıları için bilgi. tanımlayıcı tanımları
ters tırnaklar (`) kullanılarak elle işaretlenebilir; NS süzgeç bdefn seçenek bunları tanır
işaretler. Bazı diller için tanımlar, aşağıdakiler kullanılarak otomatik olarak bulunabilir: -otomatik tanımlamalar
seçenek. Bu bölüm indeksleme ve çapraz referans seçeneklerini açıklar; iyi olabilir
ilk okumada atlandı
-x Her Ticaretçi İçin Mükemmellik Lateks, yerini tanımlayan her bir yığın adına bir sayfa numarası ekleyin
yığının tanımı ve tanımlarla ilgili çapraz referans bilgileri yayar ve
kullanır. İçin Html, parçaların kullanımları ve tanımları arasında köprü metni bağlantıları oluşturun.
Ne zaman şimdi -x ile kullanılır Lateks, kontrol sırası \noweb yığınları genişler
tüm kod parçalarının sıralanmış listesi.
dizin Tanımlanmış tanımlayıcılar için çapraz referans bilgileri (veya köprü metni bağlantıları) oluşturun.
Tanımlar, girdi dosyalarında bulunan tanımlamalardır. -otomatik tanımlamalar dil ya da
süzgeçbtdefn. Gereklilikler Lateks or Html. dizin ima -X; her ikisi de dahil olmak üzere
garip görünümlü çıktılar üretir. şimdi için çapraz referanslar oluşturmaz
alıntılanan kodda görünen tanımlayıcılar (@[[Kendi ID’n ile mağazalarını oluştur@]]), ancak köprü metni oluşturur
bağlantılar. Ne zaman şimdi dizin ile kullanılır Lateks, kontrol sırası \nowebindex
tanımlayıcıların bir dizinine genişler.
-index from indeks
Facebok sayfasını beğenin : -indeks, ancak dizine eklenecek tanımlayıcılar dosyadan alınır indeks. Görmek
noindex(1).
-otomatik tanımlamalar lang
Tanımlayıcı tanımlarını otomatik olarak keşfedin. Parçalar halindeki kod dilde olmalıdır
lang. İzin verilebilir langs değişebilir ama içerebilir Teksas or simgesi. olmadan işe yaramaz -indeks,
hangisinden önce gelmesi gerekir.
-showautodef'ler
değerlerini göster lang ile kullanılabilir -otomatik tanımlamalar.
HATA MESAJLARI
If notaçı or şimdi belgelerde bir yığın adıyla karşılaşırsa, bunun olduğunu varsayar.
bir hatayı belirtir, genellikle ``< >=''. Diğer hata mesajları şu şekilde olmalıdır:
kendini açıklayıcı.
Hiçbir zaman tanımlanmayan bir yığına atıfta bulunmak yanlıştır, ancak yığınların olması sorun değildir.
tanımlanmış ve kullanılmamıştır.
ÖRNEKLER
Bu kılavuz sayfasını sindirmekte zorlanıyorsanız, yalnız değilsiniz. İşte size birkaç örnek
sen başla. sahip olduğunuzu varsayacağım foo.nw yığın halinde bir C programı ile dosya < >
ve yığın halinde bir başlık dosyası < >ve belgelerinizin kullanılarak işaretlendiğini
lateks(1). Size en yaygın seçenekleri kullanarak nasıl bir şeyler inşa edeceğinizi göstereceğim.
C kaynağınızı yeniden oluşturmak için deneyin
notaçı -L -Rfoo.c foo.nw > foo.c
Başlık dosyanızı yeniden oluşturmak için deneyin
notaçı -Rfoo.h foo.nw | cpif foo.h
Burada iki uzlaşma var. atlamak -L tutar #hat başlık dosyanızın dışında ve
kullanma cpif komutun yeniden yazılmasını engeller foo.h İçerik değişmediyse.
Bu nedenle, bu bir Makefile kuralı koymak için iyi bir koddur.
Basılı bir belge oluşturmak için şunu çalıştırın:
şimdi -otomatik tanımlamalar c dizin foo.nw > foo.tex
içeren kendi önsözünüz varsa, \ documentclass ve hepsi, ayrıca ihtiyacınız olacak
-gecikme seçeneği.
Bir web sayfası oluşturmak için çalıştırın
şimdi süzgeç 2 saat -otomatik tanımlamalar c dizin -html foo.nw | HTMLtoc > foo.html
İyi eğlenceler!
onworks.net hizmetlerini kullanarak notangle'ı çevrimiçi kullanın