man/text
man · Metin İşleme

$ perldoc

Bölüm 1 · Metin İşleme

Perl belgelerini Pod formatında arar.

Özet

perldoc [-h] [-D] [-t] [-u] [-m] [-l] [-U] [-F] [-i] [-V] [-T] [-r]
        [-d destination_file] [-o formatname] [-M FormatterClassName]
        [-w formatteroption:value] [-n nroff-replacement] [-X]
        [-L language_code] PageName|ModuleName|ProgramName|URL

Açıklama

perldoc, Perl kurulum ağacında veya bir Perl betiğinde gömülü olan .pod formatındaki belgeleri arar ve çeşitli biçimlendiriciler kullanarak görüntüler. Bu, öncelikle Perl kütüphane modüllerinin belgeleri için kullanılır.

Sisteminizde bu modüller için kılavuz (man) sayfaları da yüklü olabilir, bu durumda muhtemelen sadece man(1) komutunu kullanabilirsiniz.

Perl kütüphane modülleri belgelerinin bir içindekiler tablosunu arıyorsanız, perltoc sayfasına bakın.

Seçenekler

  • -h: Kısa bir yardım mesajı yazdırır.

  • -D: Öğenin aranmasını ayrıntılı olarak açıklar.

  • -t: Belgeleri nroff yerine düz metin dönüştürücü kullanarak görüntüler. Bu daha hızlı olabilir, ancak muhtemelen o kadar iyi görünmeyecektir.

  • -u: Gerçek Pod biçimlendirmesini atlar ve yalnızca ham Pod kaynağını gösterir (biçimlendirilmemiş).

  • -m modül: Modülün tamamını görüntüler: hem kod hem de biçimlendirilmemiş pod belgeleri. Belgeler bir işlevi ihtiyacınız olan ayrıntıda açıklamıyorsa ve kodu doğrudan incelemek istiyorsanız bu yararlı olabilir; perldoc dosyayı sizin için bulacak ve görüntülenmesi için doğrudan teslim edecektir.

  • -l: Yalnızca bulunan modülün dosya adını görüntüler.

  • -U: Süper kullanıcı (superuser) olarak çalışırken, güvenlik için ayrıcalıkları bırakmaya çalışmaz. Bu seçenek -F ile birlikte varsayılır.

    Not: Daha fazla bilgi için Güvenlik bölümüne bakın.

  • -F: Bağımsız değişkenleri dosya adları olarak kabul eder; dizinlerde arama yapılmaz. Süper kullanıcı olarak çalıştırıldığında -U seçeneğini de etkinleştirir.

  • -f perlfunc: Ardından bir Perl yerleşik işlevinin adı gelen -f seçeneği, bu işlevin belgelerini perlfunc dosyasından çıkaracaktır.

    Örnek:

    perldoc -f sprintf
  • -q perlfaq-arama-düzenli-ifadesi: Bağımsız değişken olarak bir düzenli ifade (regular expression) alır. perlfaq[1-9] içindeki soru başlıklarını arayacak ve düzenli ifadeyle eşleşen girdileri yazdıracaktır.

    Örnek:

    perldoc -q shuffle
  • -a perlapifunc: Ardından bir Perl API işlevinin adı gelen -a seçeneği, bu işlevin belgelerini perlapi dosyasından çıkaracaktır.

    Örnek:

    perldoc -a newHV
  • -v perlvar: Ardından bir Perl önceden tanımlanmış değişkeninin adı gelen -v seçeneği, bu değişkenin belgelerini perlvar dosyasından çıkaracaktır.

    Örnekler:

    perldoc -v '$"'
    perldoc -v @+
    perldoc -v DATA
  • -T: Çıktının bir sayfalayıcıya (pager) gönderilmeyeceğini, doğrudan STDOUT'a gönderileceğini belirtir.

  • -d hedef-dosya-adı: Çıktının ne bir sayfalayıcıya ne de STDOUT'a gönderileceğini, bunun yerine belirtilen dosya adına kaydedileceğini belirtir.

    Örnek:

    perldoc -oLaTeX -dtextwrapdocs.tex Text::Wrap
  • -o çıktı-format-adı: perldoc'un belirttiğiniz çıktı formatı için bir Pod biçimlendirme sınıfı kullanmayı denemesini istediğinizi belirtir. Örneğin: -oman. Bu aslında sadece -M seçeneğinin bir sarmalayıcısıdır; -obiçimadı kullanmak, bu format adını (farklı büyük/küçük harf kullanımlarıyla) farklı sınıf adı öneklerinin sonuna ekleyerek yüklenebilir bir sınıf arar.

    Örneğin, -oLaTeX şu anda aşağıdaki sınıfların tümünü dener:

    Pod::Perldoc::ToLaTeX Pod::Perldoc::Tolatex Pod::Perldoc::ToLatex Pod::Perldoc::ToLATEX
    Pod::Simple::LaTeX Pod::Simple::latex Pod::Simple::Latex Pod::Simple::LATEX Pod::LaTeX
    Pod::latex Pod::Latex Pod::LATEX.
  • -M modül-adı: Pod'u biçimlendirmek için kullanmayı denemek istediğiniz modülü belirtir. Sınıfın en azından bir parse_from_file yöntemi sağlaması gerekir.

    Örnek:

    perldoc -MPod::Perldoc::ToChecker

    Denecek birkaç sınıfı virgül veya noktalı virgülle birleştirerek belirtebilirsiniz:

    perldoc -MTk::SuperPod;Tk::Pod
  • -w seçenek:değer veya -w seçenek: Biçimlendiriciyi çağırmak için bir seçenek belirtir. Örneğin, -w textsize:15, nesneyi biçimlendirmek için kullanılmadan önce biçimlendirici nesnesi üzerinde $formatter->textsize(15) çağrısı yapacaktır. Bunun geçerli olabilmesi için biçimlendirici sınıfının böyle bir yöntem sağlaması ve ilettiğiniz değerin geçerli olması gerekir. Dolayısıyla, textsize bir tamsayı bekliyorsa ve siz -w textsize:big yaparsanız, sorun çıkmasını bekleyin.

    Değeri olmayan -w seçenekadı ifadesini, -w seçenekadı:TRUE ifadesinin kısayolu olarak kullanabilirsiniz. Bu, muhtemelen -w page_numbering gibi açma/kapama özellikleri durumunda yararlıdır.

    Sanal iki nokta üst üste : yerine = kullanabilirsiniz; örneğin -w textsize=15. Hangi kabuğu kullandığınıza bağlı olarak bu daha fazla veya daha az uygun olabilir.

  • -X: Varsa bir dizin (index) kullanır. -X seçeneği, $Config{archlib}/pod.idx dosyasında temel adı komut satırında verilen adla eşleşen bir girdi arar. pod.idx dosyası, her satırda bir tane olmak üzere tam nitelikli dosya adları içermelidir.

  • -L dil_kodu: İstenen dil çevirisi için dil kodunun belirtilmesine olanak tanır. Sisteminizde POD2::<dil_kodu> paketi yüklü değilse, bu seçenek yoksayılır. Mevcut tüm çeviri paketleri POD2:: ad alanı altında bulunur. Yeni yerelleştirilmiş POD2::* belge paketlerinin nasıl oluşturulacağını ve bunları Pod::Perldoc içine nasıl entegre edeceğinizi görmek için POD2::IT veya POD2::FR belgelerine bakın.

  • SayfaAdı|ModülAdı|ProgramAdı|URL: Aramak istediğiniz öge. İç içe geçmiş modüller (File::Basename gibi) File::Basename veya File/Basename olarak belirtilir. Ayrıca perlfunc gibi bir sayfanın açıklayıcı adını da verebilirsiniz. URL'ler için şu anda yalnızca HTTP ve HTTPS desteklenmektedir.

    foo gibi basit adlar için, normal arama eşleşen bir sayfa bulamadığında perl önekiyle bir arama da denenir. Dolayısıyla, perldoc intro, perlintro.pod dosyasını bulmak/işlemek için yeterlidir.

  • -n bazı-biçimlendiriciler: groff için alternatif belirtir.

  • -r: Özyinelemeli (recursive) arama.

  • -i: Büyük/küçük harfe duyarsız arama.

  • -V: Çalıştırdığınız perldoc sürümünü görüntüler.

Örnekler

perldoc -f BuiltinFunction
perldoc -L it -f BuiltinFunction
perldoc -q FAQ Keyword
perldoc -L fr -q FAQ Keyword
perldoc -v PerlVariable
perldoc -a PerlAPI

Güvenlik

perldoc düzgün bir şekilde kirletilmiş (tainted) modda çalışmadığından ve güvenlik sorunları olduğu bilindiğinden, süper kullanıcı olarak çalıştırıldığında, etkin ve gerçek kimlikleri nobody veya nouser hesabına ya da mevcut değilse -2'ye ayarlayarak ayrıcalıkları bırakmaya çalışacaktır. Ayrıcalıklarından vazgeçemezse çalışmayacaktır.

Bu davranışı istemiyorsanız -U seçeneğine bakın ancak -U seçeneğini kullanmayı seçerseniz önemli güvenlik risklerinin olduğunu unutmayın.

3.26 sürümünden bu yana, süper kullanıcı olarak -F kullanılması, çoğu dosyanın açılması ve dizinlerde gezinilmesi nobody/nogroup düzeyinin üzerinde ayrıcalıklar gerektirdiğinden -U seçeneğini de etkinleştirir.

Çevre Değişkenleri

  • PERLDOC: Bu değişkendeki tüm seçenekler, komut satırı bağımsız değişkenlerinden önce kullanılacaktır. Kullanışlı değerler arasında -oterm, -otext, -ortf, -oxml vb. yer alır; biçimlendirici sınıfı doğrudan -MPod::Perldoc::ToTerm vb. ile de belirtilebilir.

  • PERL5LIB, PERLLIB, PATH: perldoc, PERL5LIB (veya PERL5LIB tanımlı değilse PERLLIB) ve PATH çevre değişkenleri tarafından belirtilen dizinleri de arar. İkincisi, perldoc'un kendisi gibi yürütülebilir dosyalar için gömülü pod'ların mevcut olmasını sağlamak içindir.

  • PERLDOC_PAGER, MANPAGER, PAGER: perldoc, kendi başına bir sayfalayıcı bulmaya çalışmadan önce, tercih sırasına göre bu değişkenlerde tanımlanan sayfalayıcıyı kullanacaktır. perldoc'a düz metin veya biçimlendirilmemiş pod görüntülemesi söylendiyse MANPAGER kullanılmaz.

  • PERLDOC_SRC_PAGER: perldoc'u -m modunda (modül kaynak kodunu görüntüleme) kullanırken kullanılacak sayfalayıcıyı belirtir. Bu komut için kullanışlı bir ayar, /usr/bin/nano gibi en sevdiğiniz düzenleyicidir.

  • PERLDOCDEBUG: Pozitif bir tamsayıya ayarlanması, perldoc'un -D seçeneğinin yaptığından daha da açıklayıcı çıktılar üretmesini sağlayacaktır; sayı ne kadar yüksek olursa, o kadar fazla çıktı üretir.

Makefile.PL veya Build.PL dosyalarının bulunduğu dizinlerde perldoc, arama yoluna önce . ve lib dizinlerini ekleyecek ve süper kullanıcı olmadığınız sürece blib dizinini de ekleyecektir. Bir derleme dizini içinde çalışıyorsanız ve bir modülün daha önce yüklenmiş bir sürümüne sahip olsanız bile belgeleri okumak istiyorsanız bu gerçekten yararlıdır.

PERLDOC_PAGER için kullanışlı bir değer less -+C -E seçeneğidir.

Değişiklikler

3.14_05 sürümüne kadar, perldoc işleminin ayrıntılı mesajlarını üretmek için -v seçeneği kullanılıyordu; bu artık -D seçeneği ile etkinleştirilmektedir.

Ayrıca Bakınız

perlpod, Pod::Perldoc

Yazar

Mevcut sürdürücü: Mark Allen <mallen@cpan.org>

Geçmişte katkıda bulunanlar: brian d foy <bdfoy@cpan.org>, Adriano R. Ferreira <ferreira@cpan.org>, Sean M. Burke <sburke@cpan.org>, Kenneth Albanowski <kjahds@kjahds.com>, Andy Dougherty <doughera@lafcol.lafayette.edu> ve diğerleri.