Gdb man sayfasında C @ t {++} ne anlama geliyor?


16

GDB için manpage okuyordum ve çizginin karşısına çıktım:

You can use GDB to debug programs written in C, C@t{++}, Fortran and Modula-2.

C @ t {++} bir normal ifadeye benziyor ama kodunu çözemiyorum.

Bu ne demek?


hangi versiyon için? C ++ gibi görünüyor sadece bir ++şekilde özel kodlama bodged
18:02 thrig

@thrig Bunu Ubuntu 16.04, gdb 7.11.1-0ubuntu1 ~ 16.5'te onaylayabilirim.
Melebius

Bunun sizin için normal ifade gibi görünmesini sağlayan nedir?
Monica'nın Davası

FWIW, bu geçersiz bir normal ifade olurdu.
Monica ile Hafiflik Yarışları

Açıkça yazmayı unuttularC\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
tchrist

Yanıtlar:


28

GNU, man sayfalarından nefret eder, bu nedenle sonuçların kullanılabilir olup olmadığını gerçekten umursamadan genellikle belgeleri başka bir biçimde yazar ve bundan bir man sayfası oluştururlar.

C@t{++}çevrilmemiş bazı texinfo biçimlendirmedir. Kullanıcı tarafından görülebilir belgelerin bir parçası olması amaçlanmamıştır. Basitçe söylemek gerekir C++(muhtemelen ++güzel görünmesi için bazı özel yazı ile ).



6
İlk cümledeki görüşlere atıf yapabilir miyiz?
thosphor


3
@Kusalananda Bağlantı / bilgi için teşekkürler. Bu kaynak cevaptaki görüşü desteklemiyor.
thosphor

2
@thosphor "nefret" biraz abartıdır, ancak RMS ve FSF'nin tercih ettikleri formatı dikkate almadığı açıktır.
Barmar

18

Sıra @t{...}, sabit genişlikli yazı tipi kullanarak bir sıra ayarlamak için texinfo işaretlemesidir ( daha fazla ayrıntı ve bazı örnekler için texinfo kılavuzunun Yazı Tipleri bölümüne bakın.)

Görünüşe göre "C ++" yazmaya çalışıyorlar ve "++" sabit genişlikli bir yazı tipi kullanıyorlar (" ++" gibi .) Belki de birisi PostScript veya PDF veya bazı formatlarda dokümantasyon yaparken belirli yazı tipleriyle daha iyi sonuçlar veren bulmuştu. varsayılan olarak değişken genişlikli yazı tipleri kullanır.

Bunun işe yaramadığının ve işlenmemiş diziyi görmenizin nedeni , texinfo'nun infodokümantasyon sistemi tarafından kullanılması man, farklı komutlarla farklı bir dil olan nroff'u kullanmasıdır (örneğin, bir sabite geçme komutu) nroff'daki width font \f(CW), bu yüzden tabii ki @t{...}diziyi değişmeden tanımadı .

Bu konu , 2013 yılının Nisan ayından itibaren , man sayfalarının texinfo'ya dönüştürüldüğü ve bu özel işaretlemenin tanıtıldığı bir taahhütte ortaya çıkmış gibi görünüyor . Artık man sayfalarını ( texi2man.pl) oluşturmak için kullanılan komut dosyasının bu diziyi tanımadığı veya düzgün bir şekilde dönüştürmediği anlaşılıyor.



6
İroni, pod2man"daha güzel bir C ++" için kullanılmayan bir roff makrosu sağlamasıdır çünkü tanıma kodu sadece "C ++" dizesi için devreye girer.
JdeBP

2
@JdeBP Burada cevapları var gibi görünüyor, neden bir cevap yazmıyorsunuz?
boru

3
İşbirliği, boru. Yanıt yorumları, yanıtlarda iyileştirmeler önermek içindir . İşte bazı geliştirmeler. Bakalım buradaki iki cevaplayıcı onları dahil etmek isteyip istemediğini. Eğer yaparlarsa ayak parmaklarına basmamak istiyorum.
JdeBP

3
@JdeBP Çağrı için teşekkürler. Benim hatırlamam, C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'C ++ dilinin ilk evanjelizmi sırasında Murray Hill'deki bir labbie'den troff genişlemesini, bu erken C ++ olayları için USENIX işlemlerini yazarken aldım . Labbiler troffları konusunda oldukça ciddiydiler. :)
tchrist
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.