Ошибка при создании PDF. Неопределенная последовательность управления - PullRequest
0 голосов
/ 18 мая 2019

Я пытался преобразовать свои заметки из школы в PDF, но получаю следующую ошибку:

Error producing pdf.
! Undefined control sequence.
l.55 ...i letters:"; cat dutch | grep -vP '(.).*\1

Я полагаю, что это, вероятно, связано с использованием специального символа, который должен быть экранирован, или что-то в этом роде, но после небольшого поиска я все еще не нашел решения.

Я пробовал pandoc notes.md -o notes.pdf и pandoc notes.md -o notes.pdf --pdf-engine=xelatex в качестве команд. Ниже вы можете найти мои заметки:

# Vraag 1
for i in {14,15,16}; do echo "$i letters:"; cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$" ; done

OF

for i in {14,15,16}; do echo "$i letters:" $(cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$") ; done

UNIEKE LETTERS: grep -vP '(.).*\1'


# Vraag 2
tshark -r bruteforce.pcap -Y 'ftp.request.command == USER' -T fields -e 'ftp.request.arg' | sort -u


# Vraag 3
echo "Time = $(date '+%X (%x)')"

# Vraag 4
openssl enc -d -a -in secret

OF

cat secret | base64 -d 

# Vraag 4
echo | openssl s_client -connect wiki.uclllabs.be:443 2>/dev/null | openssl x509 -noout -pubkey -serial -fingerprint

Как видите, ошибка возникает в первой строке, но я не могу понять, в чем дело.

1 Ответ

1 голос
/ 20 мая 2019

Предположительно, эти команды должны рассматриваться как блоки кода?В этом случае они должны иметь отступ:

# Vraag 1

    for i in {14,15,16}; do echo "$i letters:"; cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$" ; done

или ограждаться:

# Vraag 1

```
for i in {14,15,16}; do echo "$i letters:"; cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$" ; done
```

Оба эти варианта должны соответствовать Pandoc.Я также добавил пустые строки после вашего заголовка.Это может не быть необходимым, но улучшает читаемость источника.

Возможно, это еще лучшая идея разбить ваши исходные блоки на читабельность:

# Vraag 1

```
for i in {14,15,16}; do
  echo "$i letters:";
  cat dutch | grep -vP '(.).*\1' | grep -P "^.{$i}$";
done
```
...