【问题标题】:Problem with embedding a Bash code in LaTeX在 LaTeX 中嵌入 Bash 代码的问题
【发布时间】:2021-04-03 17:05:47
【问题描述】:

我正在尝试使用 listings 包来将此 bash sn-p 嵌入到我的 LaTeX 报告中。

┌──(kali㉿kali)-[~]
└─$ passwd kali
Changing password for kali.
Current password:
New password:
Retype new password:
passwd: password updated successfully

┌──(kali㉿kali)-[~]
└─$

1- 看来我不能使用下面的特殊字符:

    ┌──(kali㉿kali)-[~]
    └─$

我收到以下错误:! Package inputenc Error: Invalid UTF-8 byte sequence. 虽然我使用过:extendedchars=true

2- 我不能加粗提示行,虽然我使用:\%*\textbf{$ passwd kali}*)

这是我的代码简介:

\usepackage{color}
\definecolor{verylightgray}{rgb}{0.9,0.9,0.9}
\usepackage{listings}
\lstset{
    basicstyle=\footnotesize,
    frame=single,
    backgroundcolor=\color{verylightgray},
    extendedchars=true
}
...

\begin{lstlisting}[numbers=left]

\%*\textbf{$ passwd kali}*)
Changing password for kali.
Current password:
New password:
Retype new password:
passwd: password updated successfully

\end{lstlisting}

【问题讨论】:

    标签: latex report documentation pdflatex listings


    【解决方案1】:
    • 如果您想使用像\textbf{...} 这样的格式化命令,您必须在转义字符中使用它,例如选择@ 作为转义字符,escapechar={@}

    • listings 本身不支持 unicode,但如果您将所有特殊字符也放在转义字符中,您可以使用 unicode 感知引擎,如 lualatex 或 xelatex 来编译您的文档。

    • 您还需要找到一种支持外来字符的字体,例如。您可以为此使用命令行工具albatross。如果您致电albatross ㉿,它将为您提供支持该字符的所有字体的列表:

            __ __           __
    .---.-.|  |  |--.---.-.|  |_.----.-----.-----.-----.
    |  _  ||  |  _  |  _  ||   _|   _|  _  |__ --|__ --|
    |___._||__|_____|___._||____|__| |_____|_____|_____|
    
                         Unicode code point 327F mapping to ㉿                     
    ┌─────────────────────────────────────────────────────────────────────────────┐
    │ Font name                                                                          │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Adobe Myungjo Std,Adobe 명조 Std,Adobe Myungjo Std M,Adobe 명조 Std M                │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Apple SD Gothic Neo,Apple SD 산돌고딕 Neo                                            │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ AppleGothic                                                                        │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ AppleMyungjo                                                                       │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Arial Unicode MS                                                                   │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Batang,바탕                                                                         │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Gulim,굴림                                                                          │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ GungSeo                                                                            │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ LastResort                                                                         │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Nanum Brush Script,나눔손글씨 붓                                                      │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Nanum Gothic,나눔고딕                                                                │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Nanum Gothic,나눔고딕,NanumGothic ExtraBold,나눔고딕 ExtraBold                         │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Nanum Myeongjo,나눔명조                                                              │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Nanum Myeongjo,나눔명조,NanumMyeongjoExtraBold,나눔명조 ExtraBold                      │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ Nanum Pen Script,나눔손글씨 펜                                                        │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ PCMyungjo                                                                          │
    ├─────────────────────────────────────────────────────────────────────────────┤
    │ PilGi                                                                              │
    

    % !TeX TS-program = lualatex
    
    \documentclass{article}
    
    \usepackage{fontspec}
    
    \setmonofont{Arial Unicode MS}
    
    \usepackage{color}
    \definecolor{verylightgray}{rgb}{0.9,0.9,0.9}
    \usepackage{listings}
    
    \lstset{
        basicstyle=\footnotesize\ttfamily,
        frame=single,
        backgroundcolor=\color{verylightgray},
        extendedchars=true,
        escapechar={@},
    }
    
    
    \begin{document}
    
    \begin{lstlisting}
    @\fontspec{Arial}\selectfont\textbf{\$ passwd kali}@
    
    @┌──@(kali@㉿@kali)-[~]
    @└─@$ passwd kali
    Changing password for kali.
    Current password:
    New password:
    Retype new password:
    passwd: password updated successfully
    
    @┌──@(kali@㉿@kali)-[~]
    @└─@$
    \end{lstlisting}
    
    \end{document}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-02-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多