Yeteneklerin Yazılması
Önceki Veritabanının Biçimi Sonraki
Yeteneklerin Yazılması
Yetenekler aldıkları değere göre üç çeşittir: dizgeler, sayılar ve seçimlikler. Her birinin tanım içindeki sözdizimleri kendilerine özeldir ve her yeteneğin uzlaşımla belirlenmiş belli değer çeşidi vardır. Örneğin, li yeteneği daima sayısal bir değere sahipken, cm'nin değeri daima bir dizgedir.
Bir seçimlik yetenek bir mantıksal değer içerir: eğer bu yetenek mevcutsa değeri doğru, değilse yanlış'tır. Yetenek mevcutsa sadece ismi yazılır, yoksa yazılmaz (yani bu yetenekler aslında bir değer almaz, sadece isimlerinin uçbirim tanımında var olup olmadıklarına bakılır).
Sayısal değerli bir yetenek daima negatif olmayan bir değere sahiptir. Yetenek isminden sonra bir # konup sayısal değer yazılır. Örneğin, li yeteneği …:li#48:… şeklinde yazılmışsa ekranda 48 satır gösterme yeteneğinde bir uçbirim sözkonusudur.
Dizge değerli bir yetenek daima bir karakter dizisi içerir. Genellikle bunlarda ekranda bazı işlemler gerçekleştiren karakterler kullanılır. Yetenek isminden sonra bir = konup karakterler yazılır. Örneğin, cm yeteneği …:cm=\E[%i%d;%dH:… şeklinde bir komut ve bu komutun biçim dizgesi olarak yazılır ve aldığı parametreler imlecin ekranda konumlanacağı yeri belirler.
Bir dizge değerindeki özel karakterler C dilindeki gibi \ ile öncelenerek yazılırlar. \E dizgesi <ESC>'e karşılıktır. ^ karakteri bir tuşun Ctrl tuşu ile birlikte basıldığı durumu ifade etmek için kullanılır. Örneğin, ^a dizgesi Ctrl-a demektir ve \001 ile aynıdır. \ ve ^ karakterleri sıradan birer karakter olarak yazılmak istenirse \\ ve \^ şeklinde yazılırlar.
Bir dizge içinde bir iki nokta üstüste karakteri kullanmak isterseniz onu \072 biçiminde yazmalısınız. Diyeceksiniz ki, "neden onu da \: biçiminde yazmayalım?"; sebebi, bir yeteneği uçbirim tanımında ararken sorgulama işlevlerinin tersbölü karakterlerini görmezden gelmeleridir. :ce=ab\:cd: biçiminde yazılmış bir ce yeteneğinin ab:cd değerine sahip olacağını düşünürseniz yanılırsınız, cd bir seçimlik yetenek olarak ele alınacaktır.
Dizge değerlerin çoğu geciktirme miktarını ifade eden bir takım rakamlarla başlar ve dizge içinde % karakteri ile başlayan ve parametrelerin nasıl kodlanacağını belirten alt dizgeler içerirler. Bunlar uçbirime doğrudan çıktılanmazlar, yeteneğin değerinin bir parçası olarak tputs, tparam veya tgoto işlevleri tarafından özel olarak ele alınırlar. Daha özel olarak, \ ve ^ dizgedeki karakterleri belirtmek için sözdiziminin parçaları olarak yorumlanırlar.
VT52 örneğine tekrar bakalım:
dw|vt52|DEC vt52:\
        :cr=^M:do=^J:nl=^J:bl=^G:\
        :le=^H:bs:cd=\EJ:ce=\EK:cl=\EH\EJ:\
        :cm=\EY%+ %+ :co#80:li#24:\
        :nd=\EC:ta=^I:pt:sr=\EI:up=\EA:\
        :ku=\EA:kd=\EB:kr=\EC:kl=\ED:kb=^H:
Buradaki yeteneklerden co ve li sayısal değerli, bs ve pt ise seçimlik yeteneklerdir. Diğerleri dizge değerli yeteneklerdir. Dizgelerin çoğu <ESC>'i ifade eden \E ile başlarken, kalanı denetim karakterlerini ifade eden ^ karakterini içeriyor. Tek tek yeteneklerin anlamları bu tanımda yer almaz, onlar başka yerdedir (bkz. Uçbirim Yeteneklerinin Tanımları).
Önceki Üst Ana Başlık Sonraki
Uçbirim Tanımının Biçimi Başlangıç Uçbirim Türü İsimlendirme Uzlaşımları
Bir Linux Kitaplığı Sayfası