# Working on first plugin; does not work. Using the pirate-speak plugin as a base

**URL:** https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171
**Category:** Development
**Created:** [September 1, 2018, 10:56pm UTC](https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171 "2018-09-01T22:56:24Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![purldator](https://avatars.discourse-cdn.com/v4/letter/p/bcef8e/32.png) [@purldator](https://meta.discourse.org/u/purldator)
#### Post date: [September 1, 2018, 10:56pm UTC](https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171/1 "2018-09-01T22:56:24Z")

</div>

[Here is the repository for it](https://github.com/mountain555/discourse-tarot). My wife tried using it to no avail. It does not convert the text to an image. Either that, or this plugin I based it off from cannot change some text e.g. [m08] (meaning, major arcana number 8) into an image:

 ![08-Strength](https://global.discourse-cdn.com/meta/original/3X/8/b/8b24f85a57bc2b82993671b682e31b9f10d700c7.gif)

I would have her use the built-in custom emoji uploader but it shrinks the image; undesired. Any helps are appreciated.

---

<div class="post-metadata">

### Author: ![purldator](https://avatars.discourse-cdn.com/v4/letter/p/bcef8e/32.png) [@purldator](https://meta.discourse.org/u/purldator)
#### Post date: [September 2, 2018, 12:13am UTC](https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171/2 "2018-09-02T00:13:57Z")

</div>

Just edited the regex rules and it still does not work. The regex was wrong for this usage case. Left out the word boundaries.

---

<div class="post-metadata">

### Author: ![purldator](https://avatars.discourse-cdn.com/v4/letter/p/bcef8e/32.png) [@purldator](https://meta.discourse.org/u/purldator)
#### Post date: [September 2, 2018, 10:33pm UTC](https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171/3 "2018-09-02T22:33:14Z")

</div>

I installed the pirate speak plugin to see if I screwed up anywhere. _That_ plugin does _not_ work either.

Is anyone willing to update the pirate speak plugin. According to a google search, it shall be relevant on the 19th. Arrrh. 🏴‍☠️

[https://github.com/discourse/discourse-pirate-speak](https://github.com/discourse/discourse-pirate-speak)

---

<div class="post-metadata">

### Author: ![gdpelican](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/gdpelican/32/81308_2.png) [@gdpelican](https://meta.discourse.org/u/gdpelican)
#### Post date: [September 2, 2018, 11:42pm UTC](https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171/4 "2018-09-02T23:42:52Z")

</div>

I’d guess that today that would rather get turned into a theme component; it doesn’t actually need to be a plugin, because it has no server-side logic. Likely same for your tarot project; I don’t think it needs to actually be a plugin.

> [@Developing Discourse Themes & Theme Components](https://meta.discourse.org/t/developer-s-guide-to-discourse-themes/93648):
>
> Discourse Themes and Theme Components can be used to customize the look, feel and functionality of Discourse’s frontend. This section of the developer guides aims to provide all the reference materials you need to develop simple themes for a single site, right up to complex open-source theme components. This introduction aims to provide a map of all the tools and APIs for theme development. If you prefer a step-by-step tutorial for theme development, jump straight to: Themes vs. Theme Compon…

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [September 2, 2018, 11:45pm UTC](https://meta.discourse.org/t/working-on-first-plugin-does-not-work-using-the-pirate-speak-plugin-as-a-base/96171/5 "2018-09-02T23:45:02Z")

</div>

> [@gdpelican](#):
>
> because it has no server-side logic

This particular example still requires a plugin, cause it is a markdown dialect and processed server side.

Pirate speak though is in “broken plugin” state at the moment as it still needs to be updated to markdown.it … adding a note.
