# 如何在 app.yml 中转义单引号

**URL:** https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575
**Category:** Self-hosting
**Created:** [2020年六月22日 14:52 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575 "2020-06-22T14:52:51Z")
**Posts on this page:** 11
**Page:** 1

<div class="post-metadata">

### Author: ![nap](https://avatars.discourse-cdn.com/v4/letter/n/a87d85/32.png) [@nap](https://meta.discourse.org/u/nap)
#### Post date: [2020年六月22日 14:52 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/1 "2020-06-22T14:52:51Z")

</div>

我想在论坛标题中使用单引号字符，以显示为 `Pilot's Lounge`。当我在 UI 中指定时，一切正常。然而，当我尝试在 `app.yml` 中将 `DISCOURSE_TITLE` 变量设置为 `Pilot's Lounge` 时，标题会在单引号处被截断。  
我已经查阅了 [https://yaml.org/spec/current.html#id2534365，但使用](https://yaml.org/spec/current.html#id2534365%EF%BC%8C%E4%BD%86%E4%BD%BF%E7%94%A8) `''`（两个连续的单引号）不起作用。  
我也尝试了 `"Pilot's Lounge"`、`"Pilot''s Lounge"` 以及其他变体，但都没有成功。

该如何实现？

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [2020年六月22日 16:51 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/2 "2020-06-22T16:51:44Z")

</div>

尝试：

```plaintext
  DISCOURSE_TITLE: "飞行员休息室"

```

---

<div class="post-metadata">

### Author: ![nap](https://avatars.discourse-cdn.com/v4/letter/n/a87d85/32.png) [@nap](https://meta.discourse.org/u/nap)
#### Post date: [2020年六月22日 17:01 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/3 "2020-06-22T17:01:44Z")

</div>

很遗憾，这会导致一个错误：

```
(<unknown>): 在解析带引号的标量时，第 69 行第 20 列发现了未知的转义字符 -e LANG=en_US.UTF-8
YAML 语法错误。请检查您的 containers/*.yml 配置文件。

```

---

<div class="post-metadata">

### Author: ![nap](https://avatars.discourse-cdn.com/v4/letter/n/a87d85/32.png) [@nap](https://meta.discourse.org/u/nap)
#### Post date: [2020年六月22日 17:07 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/4 "2020-06-22T17:07:09Z")

</div>

以下是我目前尝试过的所有方法：

```
DISCOURSE_TITLE: "Pilot\'s Lounge" <== 生成错误
DISCOURSE_TITLE: 'Pilot\'s Lounge' <== 生成错误
DISCOURSE_TITLE: Pilot\'s Lounge <== 斜杠转义
DISCOURSE_TITLE: "Pilot's Lounge" <== 双引号包裹，单引号撇号
DISCOURSE_TITLE: "Pilot''s Lounge" <== 双引号包裹，双撇号
DISCOURSE_TITLE: Pilot''s Lounge <== 双撇号
DISCOURSE_TITLE: 'Pilot''s Lounge' <== 单引号包裹，双撇号
DISCOURSE_TITLE: 'Pilot's Lounge' <== 生成错误

```

---

<div class="post-metadata">

### Author: ![codinghorror](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/codinghorror/32/110067_2.png) [@codinghorror](https://meta.discourse.org/u/codinghorror)
#### Post date: [2020年六月22日 19:00 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/5 "2020-06-22T19:00:16Z")

</div>

哇，这真是一份详尽的列表。真没想到其中没有一个能行！

---

<div class="post-metadata">

### Author: ![nap](https://avatars.discourse-cdn.com/v4/letter/n/a87d85/32.png) [@nap](https://meta.discourse.org/u/nap)
#### Post date: [2020年六月22日 19:12 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/6 "2020-06-22T19:12:05Z")

</div>

是的，我想不出其他可以尝试的形式了。我先休息一下，稍后再回来处理这个问题。

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [2020年六月22日 19:29 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/7 "2020-06-22T19:29:06Z")

</div>

您试过用 `’` 这个撇号，而不是打字机风格的撇号 `'` 吗？我之前在 app.yml 中用它来设置站点标题。将标题用双引号 `" "` 括起来，就能正常工作。

---

<div class="post-metadata">

### Author: ![nap](https://avatars.discourse-cdn.com/v4/letter/n/a87d85/32.png) [@nap](https://meta.discourse.org/u/nap)
#### Post date: [2020年六月22日 19:31 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/8 "2020-06-22T19:31:00Z")

</div>

@Stephen：我会试试。我会从你的帖子中复制/粘贴该字符到我的文件中。

---

<div class="post-metadata">

### Author: ![Stephen](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/stephen/32/95011_2.png) [@Stephen](https://meta.discourse.org/u/Stephen)
#### Post date: [2020年六月22日 19:33 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/9 "2020-06-22T19:33:47Z")

</div>

我刚刚在测试网站上又试了一次，运行正常，应该能解决您的问题。

---

<div class="post-metadata">

### Author: ![nap](https://avatars.discourse-cdn.com/v4/letter/n/a87d85/32.png) [@nap](https://meta.discourse.org/u/nap)
#### Post date: [2020年六月22日 19:34 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/10 "2020-06-22T19:34:10Z")

</div>

哈哈，我还在重建我的网站。  
是的，那有效了。🥳  
不需要外层的引号。

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [2020年七月22日 19:34 UTC](https://meta.discourse.org/t/how-to-escape-apostrophe-in-app-yml/155575/11 "2020-07-22T19:34:17Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
