小编Ada*_*yer的帖子

删除字符中的重音符号,同时保留其他变音符号

在一些用拉丁语和西里尔语书写的斯拉夫语言中,上升和下降重音标记仅用于消除上下文歧义,即仅在元音上不一致。

\n\n

我想要一个Python代码或lib删除元音中的锐音和重音,同时保留其他变音符号。

\n\n

例如:
\n \xd0\xb6\xd1\x9d\xd0\xb7\xd0\xbd\xd0\xb5\xd1\x81\xd0\xbf\xd0\xbe\xd1\x81\xd0\xbe\xcc\x81\ xd0\xb1\xd0\xbd\xd1\x8b\xd0\xb9 -> \xd0\xb6\xd0\xb8\xd0\xb7\xd0\xbd\xd0\xb5\xd1\x81\xd0\xbf\xd0\xbe\ xd1\x81\xd0\xbe\xd0\xb1\xd0\xbd\xd1\x8b\xd0\xb9
\n \xd1\x81\xc3\xa8\xd1\x81\xd0\xb5\xd1\x84\xd0\xb0\ xd1\x9c\xd0\xb0 -> \xd1\x81\xd0\xb5 \xd1\x81\xd0\xb5 \xd1\x84\xd0\xb0\xd1\x9c\xd0\xb0 \
n k\xc8\x95\xc4 \x87ica -> ku\xc4\x87ica

\n\n

如果有任何帮助,这里是斯拉夫语言西里尔字母中所有实际(即无重音)字母的完整列表,包括带有变音符号的字母:

\n\n
\xd0\xb0\xd0\xb1\xd0\xb2\xd0\xb3\xd0\xb4\xd0\xb5\xd0\xb6\xd0\xb7\xd0\xb8\xd0\xba\xd0\xbb\xd0\xbc\xd0\xbd\xd0\xbf\xd0\xbe\xd1\x80\xd1\x81\xd1\x82\xd1\x83\xd1\x84\xd1\x85\xd1\x86\xd1\x88\xd1\x94\xd2\x91\xd1\x96\xd1\x97\xd1\x91\xd1\x8b\xd1\x96\xd1\x9e\xd1\x89\xd1\x8a\xd1\x8c\xd1\x8e\xd1\x8f\xd0\xb9\xd1\x98\xd1\x9a\xd1\x99\xd1\x9f\xd1\x92\xd1\x9b\xd0\xb7\xcc\x81\xd1\x81\xcc\x81\xd1\x9c\xd1\x93\xd1\x95\n
Run Code Online (Sandbox Code Playgroud)\n\n

笔记:

\n\n
    \n
  1. \xd1\x97\xd1\x91\xd1\x8b\xd1\x96\xd1\x9e\xd0\xb9是元音,即使锐音和重音符号被去除,也应保留其变音符号。但这种情况非常罕见,或者说是不可能的,我们可以忽略这种情况。

  2. \n
  3. \xd0\xb7\xcc\x81\xd1\x81\xcc\x81\xd1\x9c\xd1\x93是辅音,如拉丁语\xc4\x87\xc7\xb5\xc5\x9b\xc5\xba。他们应该保留尖锐的重音标记 - 他们不会出于发音或消歧目的而添加任何标记。

  4. \n
  5. 在精确正式映射为官方的字母表中,具有锐音重音的拉丁辅音的西里尔语等效项不一定具有锐音。(也许这很有帮助。)

  6. \n
  7. 双锐音和双重音的优先级较低。

  8. \n
\n\n

这些字符的背景阅读:
\n https://en.wikipedia.org/wiki/I_with_grave_(Cyrillic)#East_Slavic_languages \n https://en.wikipedia.org/wiki/Shtokavian#Accentuation
\n https://en .wikipedia.org/wiki/Pitch_accent#塞尔维亚-克罗地亚语
\n https://en.wikipedia.org/wiki/Bulgarian_alphabet#.D0.8D
\n https://en.wikipedia.org/wiki/Macedonian_alphabet#Accented_letters

\n\n

类似的问题:
\n 从字符串中删除重音/变音符号,同时保留其他特殊字符(尝试过 mb_chars.normalize 和 iconv)
\n 如何在 Python 3.5 中删除重音并使用 unicodedata 或其他解决方案获取字符串?

\n

python unicode nlp internationalization cyrillic

5
推荐指数
1
解决办法
1789
查看次数

Slack API:仅接收特定通道中的事件?

我构建了一个接收事件的应用程序。

默认情况下,作用域channels:history允许其接收添加应用程序的用户的所有公共渠道中的所有消息的事件。

理想情况下,用户可以在应用程序设置中将其限制为仅某些频道。(应用程序收到的任何事件都将变得可读。)

现在我看到两个选择:

  1. 消息事件包含通道 ID(而不是名称)。因此,代码可以对通道进行过滤,假设有一种方法可以设置它并且用户信任它。

  2. 创建一个机器人用户(即使该应用程序是只读的),用户可以将其添加到特定频道。

有没有更好的办法?

slack-api

5
推荐指数
1
解决办法
2345
查看次数

可折叠部分的内容 (<details><summary>...) 在 GitHub 存储库中呈现降价,但不在 GitHub 页面上呈现

在 GitHub 存储库的自述文件中,可折叠部分内的降价按需要呈现。

在此处输入图片说明

但是在 GitHub Pages 上,markdown 没有呈现,只是字面意思。

在此处输入图片说明

_config.yml本质上是空的。

在问题中提到Markdown inside 而 not being processing,建议的修复是:

markdown: kramdown
kramdown:
  parse_block_html: true
Run Code Online (Sandbox Code Playgroud)

这确实修复了内容的渲染,我可以切换到 kramdown,但它破坏了<details><summary>和 twirl-down的渲染。(所以我把它回滚了。)

相关的 HTML 和 Markdown 是:

<details><summary><strong>About transliteration</strong></summary>

About half of the billions of internet users speak languages written in non-Latin alphabets, like Russian, Arabic, Hebrew, Chinese, Greek, Armenian and Hindi.  Very often, they haphazardly use the Latin alphabet to write those languages.

`??????`: `Privet`, `Privyet`, `Priwjet`, ...  
`??? ????`: …
Run Code Online (Sandbox Code Playgroud)

markdown jekyll github-pages kramdown

2
推荐指数
1
解决办法
2828
查看次数