diff options
| author | syuilo <syuilotan@yahoo.co.jp> | 2020-11-08 15:24:46 +0900 |
|---|---|---|
| committer | syuilo <syuilotan@yahoo.co.jp> | 2020-11-08 15:24:46 +0900 |
| commit | 77db016866b7bab2cf4cfc71c0019d841b906ff0 (patch) | |
| tree | 971cec8fc2615b3efde819274525ac688b136565 /src | |
| parent | 最近使用した絵文字からリアクションピッカーに設定し... (diff) | |
| download | sharkey-77db016866b7bab2cf4cfc71c0019d841b906ff0.tar.gz sharkey-77db016866b7bab2cf4cfc71c0019d841b906ff0.tar.bz2 sharkey-77db016866b7bab2cf4cfc71c0019d841b906ff0.zip | |
MFMチートシート
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/pages/mfm-cheat-sheet.vue | 247 | ||||
| -rw-r--r-- | src/client/router.ts | 3 | ||||
| -rw-r--r-- | src/client/style.scss | 1 |
3 files changed, 249 insertions, 2 deletions
diff --git a/src/client/pages/mfm-cheat-sheet.vue b/src/client/pages/mfm-cheat-sheet.vue new file mode 100644 index 0000000000..5164251696 --- /dev/null +++ b/src/client/pages/mfm-cheat-sheet.vue @@ -0,0 +1,247 @@ +<template> +<div class="mwysmxbg"> + <div class="_section"> + <div class="_content"> + <p>{{ $t('_mfm.intro') }}</p> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.mention') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.mentionDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_mention"/> + <MkTextarea v-model:value="preview_mention"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.hashtag') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.hashtagDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_hashtag"/> + <MkTextarea v-model:value="preview_hashtag"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.url') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.urlDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_url"/> + <MkTextarea v-model:value="preview_url"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.link') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.linkDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_link"/> + <MkTextarea v-model:value="preview_link"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.emoji') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.emojiDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_emoji"/> + <MkTextarea v-model:value="preview_emoji"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.bold') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.boldDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_bold"/> + <MkTextarea v-model:value="preview_bold"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.small') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.smallDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_small"/> + <MkTextarea v-model:value="preview_small"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.center') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.centerDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_center"/> + <MkTextarea v-model:value="preview_center"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.inlineCode') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.inlineCodeDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_inlineCode"/> + <MkTextarea v-model:value="preview_inlineCode"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.blockCode') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.blockCodeDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_blockCode"/> + <MkTextarea v-model:value="preview_blockCode"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.quote') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.quoteDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_quote"/> + <MkTextarea v-model:value="preview_quote"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.search') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.searchDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_search"/> + <MkTextarea v-model:value="preview_search"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.flip') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.flipDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_flip"/> + <MkTextarea v-model:value="preview_flip"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.jelly') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.jellyDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_jelly"/> + <MkTextarea v-model:value="preview_jelly"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.tada') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.tadaDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_tada"/> + <MkTextarea v-model:value="preview_tada"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.jump') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.jumpDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_jump"/> + <MkTextarea v-model:value="preview_jump"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.spin') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.spinDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_spin"/> + <MkTextarea v-model:value="preview_spin"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.shake') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.shakeDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_shake"/> + <MkTextarea v-model:value="preview_shake"><span>MFM</span></MkTextarea> + </div> + </div> + </div> + <div class="_section"> + <div class="_title">{{ $t('_mfm.twitch') }}</div> + <div class="_content"> + <p>{{ $t('_mfm.twitchDescription') }}</p> + <div class="preview _panel"> + <Mfm :text="preview_twitch"/> + <MkTextarea v-model:value="preview_twitch"><span>MFM</span></MkTextarea> + </div> + </div> + </div> +</div> +</template> + +<script lang="ts"> +import { defineComponent } from 'vue'; +import { faQuestionCircle } from '@fortawesome/free-regular-svg-icons'; +import MkTextarea from '@/components/ui/textarea.vue'; + +export default defineComponent({ + components: { + MkTextarea + }, + + data() { + return { + INFO: { + title: this.$t('_mfm.cheatSheet'), + icon: faQuestionCircle, + }, + preview_mention: '@example', + preview_hashtag: '#test', + preview_url: `https://example.com`, + preview_link: `[${this.$t('_mfm.dummy')}](https://example.com)`, + preview_emoji: `:${this.$store.state.instance.meta.emojis[0].name}:`, + preview_bold: `**${this.$t('_mfm.dummy')}**`, + preview_small: `<small>${this.$t('_mfm.dummy')}</small>`, + preview_center: `<center>${this.$t('_mfm.dummy')}</center>`, + preview_inlineCode: '`<: "Hello, world!"`', + preview_blockCode: '```\n~ (#i, 100) {\n\t<: ? ((i % 15) = 0) "FizzBuzz"\n\t\t.? ((i % 3) = 0) "Fizz"\n\t\t.? ((i % 5) = 0) "Buzz"\n\t\t. i\n}\n```', + preview_quote: `> ${this.$t('_mfm.dummy')}`, + preview_search: `${this.$t('_mfm.dummy')} 検索`, + preview_jelly: `[jelly 🍮]`, + preview_tada: `[tada 🍮]`, + preview_jump: `[jump 🍮]`, + preview_shake: `[shake 🍮]`, + preview_twitch: `[twitch 🍮]`, + preview_spin: `[spin 🍮] [spin.left 🍮] [spin.alternate 🍮]\n[spin.x 🍮] [spin.x,left 🍮] [spin.x,alternate 🍮]\n[spin.y 🍮] [spin.y,left 🍮] [spin.y,alternate 🍮]`, + preview_flip: `[flip ${this.$t('_mfm.dummy')}]\n[flip.v ${this.$t('_mfm.dummy')}]\n[flip.h,v ${this.$t('_mfm.dummy')}]`, + } + }, +}); +</script> + +<style lang="scss" scoped> +.mwysmxbg { + .preview { + padding: 16px; + } +} +</style> diff --git a/src/client/router.ts b/src/client/router.ts index 5068eccfea..575aed416d 100644 --- a/src/client/router.ts +++ b/src/client/router.ts @@ -72,7 +72,8 @@ export const router = createRouter({ { path: '/tags/:tag', component: page('tag'), props: route => ({ tag: route.params.tag }) }, { path: '/games/reversi', component: page('reversi/index') }, { path: '/games/reversi/:gameId', component: page('reversi/game'), props: route => ({ gameId: route.params.gameId }) }, - { path: '/api-console', component: page('api-console') }, + { path: '/mfm-cheat-sheet', component: page('mfm-cheat-sheet') }, + { path: '/test', component: page('test') }, { path: '/auth/:token', component: page('auth') }, { path: '/miauth/:session', component: page('miauth') }, { path: '/authorize-follow', component: page('follow') }, diff --git a/src/client/style.scss b/src/client/style.scss index 9715bde10b..75a2e825c1 100644 --- a/src/client/style.scss +++ b/src/client/style.scss @@ -346,7 +346,6 @@ hr { > ._title { margin-bottom: 24px; - font-size: 1.25em; font-weight: bold; } |