Postar uma saída desejada sem especificar as regras / lógicas a serem aplicadas para que ela seja obtida realmente não ajuda a resolver seu problema. Alguém poderia apenas ecoar / imprimir a saída sem relação com a entrada. Supondo que você queira as linhas entre \begin{code} e \end{code} excluindo qualquer uma delas, tente
sed -n '/\begin/,/\end/ {/{code}/!p}' file
code1
-- comment1
code1A
-- comment2
code1B
codeB
Se você precisar de linhas vazias, anexe /^ *$/p ao script sed .
EDITAR: assim:
$ sed -n '/\begin/,/\end/ {/{code}/!p}; /^ *$/p' file
code1
-- comment1
code1A
-- comment2
code1B
codeB