Tôi hiện đang sử dụng Beamer và gói danh sách để in mã đẹp vào các khối Beamer. Vì vậy, những gì tôi đang làm trông giống như:Sự cố khi tạo môi trường lstnewen môi trường bắt đầu/kết thúc một môi trường khác
\begin{block}{}
\begin{lstlisting}
int foobar(void) { return 0; }
\end{lstlisting}
\end{block}
Bây giờ, tôi thấy nó rườm rà để bắt đầu block
và lstlisting
môi trường mọi lúc. Tôi muốn có một môi trường đơn giản codeblock
mà chỉ làm nó:
\begin{codeblock}
int foobar(void) { return 0; }
\end{codeblock}
Vì vậy, tôi đã cố gắng một cái gì đó như:
\lstnewenvironment{codeblock}
{\begin{block}{}}
{\end{block}}
Nhưng thật không may, các tài liệu Beamer không còn biên dịch, với các lỗi sau :
! Missing } inserted.
<inserted text>
}
l.178 \end{frame}
?
Có cách nào để thực hiện việc này không?
Trong Problem with creating a newenvironment in LaTeX, Andreas Grech có cùng một vấn đề, nhưng nó có thể giải quyết được vì có một cách khác để vào/thoát môi trường kèm theo. Nhưng trong trường hợp của môi trường Beamer block
, có vẻ như không có cách nào khác ngoài việc thực hiện \begin{block}...\end{block}
.
Sự cố này đã được giải quyết chưa? – Werner