Man

gdb 手冊頁中的 C@t{++} 是什麼意思?

  • October 18, 2018

我正在閱讀 gdb 的手冊頁,但遇到了以下問題:

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

C@t{++} 看起來像一個正則表達式,但我似乎無法解碼它。

這是什麼意思?

GNU 討厭手冊頁,因此他們通常以另一種格式編寫文件並從中生成手冊頁,而不真正關心結果是否可用。

C@t{++}是一些沒有被翻譯的 texinfo 標記。它不打算成為使用者可見文件的一部分。它應該簡單地說C++(可能用一些特殊的字型++讓它看起來不錯)。

該序列@t{...}是使用固定寬度字型排版序列的 texinfo 標記(有關更多詳細資訊和一些範例,請參見 texinfo 手冊的字型部分。)

看起來他們正在嘗試編寫“C++”並讓“++”使用固定寬度的字型(如“ ++”。)也許有人發現在以 PostScript 或 PDF 或某種格式呈現文件時使用特定字型會產生更好的結果預設使用可變寬度字型。

這似乎不起作用並且您看到未處理的序列的原因是info文件系統使用 texinfo,而man使用 nroff 這是具有不同命令的不同語言(例如,切換到常量的命令nroff 中的寬度字型是\f(CW),因此它當然無法辨識未@t{...}更改的序列。

這個問題似乎是在2013 年 4 月的一次送出中引入的,其中手冊頁被轉換為 texinfo 並引入了特定的標記。現在用於生成手冊頁 ( texi2man.pl) 的腳本似乎無法辨識或正確轉換該序列。

引用自:https://unix.stackexchange.com/questions/476167