
對於為我編譯 LaTeX 的腳本,我必須將字串發送\"
到命令行,在以"
.例子:
>pdflatex "\IeC{\" o}"
怎樣才能擺脫"
中間的困境呢?如果我這樣做pdflatex "\IeC{\\" o}"
,“\”將意味著 a\
並且字串仍將在中間終止"
。有什麼辦法可以解決這個問題嗎?
澄清:我想發送到 pdflatex 的文字字串是\IeC{\"o}
.在任何轉義之後,這就是應該作為命令列參數傳遞的內容。
答案1
\\\"
為了轉義第一個字符,它是\\
為了轉義第二個字符,它是\"
所以,只需將它們粘在一起即可。\\\"
所以,長話短說,\\IeC{\\\"o}
我以前從未使用過 pdflatex,但這就是轉義通常的工作原理。
……除非 { 和 } 也需要轉義
答案2
使用克拉作為轉義字符:
pdflatex "\IeC{^" o}"
編輯:
嘗試省略外部引號:
pdflatex \IeC{\" o}
要記住的一件事是 Windows 不像 Linux/Unix shell 那樣處理命令列參數。參數完整地(包括外部引號)傳遞給程序,程式必須決定如何處理它們。所以你可能需要逃離這個空間。這完全取決於 pdflatex 如何看待參數。
答案3
您還需要轉義反斜線:
pdflatex "^\IeC{^\^" o}"
……但我不確定插入符對 LaTeX 是否意味著什麼,我認為它們可能確實如此。
或者,您可以嘗試使用雙引號來包含整個參數,但我懷疑它們是否有效。
不過,肯定有效的方法是修改您的 pdflatex 腳本以連接 %1 和 %2 參數(如果需要,最多 %n),然後您可以將其傳遞給腳本而不帶任何引號。