Skip to content

Commit

Permalink
Merge branch 'develop'
Browse files Browse the repository at this point in the history
  • Loading branch information
marihachi committed Jan 10, 2023
2 parents 2ca0100 + 8915998 commit d5e0f65
Show file tree
Hide file tree
Showing 6 changed files with 27 additions and 9 deletions.
6 changes: 4 additions & 2 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,10 @@
-->

## 0.23.1
### Improvements
- improve emoji code parsing

## 0.23.0

### Features
Expand All @@ -35,8 +39,6 @@

## 0.22.0

npm: https://www.npmjs.com/package/mfm-js/v/0.22.0

### Features
- Unicode emoji supports Unicode 14.0 emoji (#109)

Expand Down
2 changes: 1 addition & 1 deletion docs/syntax.md
Original file line number Diff line number Diff line change
Expand Up @@ -546,7 +546,7 @@ silent=true
```

## 詳細
- リンクラベルには再度InlineParserを適用する。ただし、リンクラベルではURL、リンク、メンションは使用できない。
- 表示テキストには再度InlineParserを適用する。ただし、表示テキストではURL、リンク、メンションは使用できない。

## ノード
```js
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

5 changes: 3 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "mfm-js",
"version": "0.23.0",
"version": "0.23.1",
"description": "An MFM parser implementation with TypeScript",
"main": "./built/index.js",
"types": "./built/index.d.ts",
Expand Down Expand Up @@ -39,6 +39,7 @@
"twemoji-parser": "14.0.0"
},
"files": [
"built"
"built",
"CHANGELOG.md"
]
}
5 changes: 4 additions & 1 deletion src/internal/parser.ts
Original file line number Diff line number Diff line change
Expand Up @@ -626,12 +626,15 @@ export const language = P.createLanguage({
},

emojiCode: r => {
const side = P.notMatch(P.regexp(/[a-z0-9]/i));
const mark = P.str(':');
return P.seq([
P.alt([P.lineBegin, side]),
mark,
P.regexp(/[a-z0-9_+-]+/i),
mark,
], 1).map(name => M.EMOJI_CODE(name as string));
P.alt([P.lineEnd, side]),
], 2).map(name => M.EMOJI_CODE(name as string));
},

link: r => {
Expand Down
14 changes: 13 additions & 1 deletion test/parser.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,19 @@ describe('SimpleParser', () => {

it('between texts', () => {
const input = 'foo:bar:baz';
const output = [TEXT('foo'), EMOJI_CODE('bar'), TEXT('baz')];
const output = [TEXT('foo:bar:baz')];
assert.deepStrictEqual(mfm.parseSimple(input), output);
});

it('between texts 2', () => {
const input = '12:34:56';
const output = [TEXT('12:34:56')];
assert.deepStrictEqual(mfm.parseSimple(input), output);
});

it('between texts 3', () => {
const input = 'あ:bar:い';
const output = [TEXT('あ'), EMOJI_CODE('bar'), TEXT('い')];
assert.deepStrictEqual(mfm.parseSimple(input), output);
});
});
Expand Down

0 comments on commit d5e0f65

Please sign in to comment.