Browse Source

Merge branch 'feature/auto-shortcodes' into 'develop'

Feature: automatic shortcodes for emoji

See merge request pleroma/pleroma!245
tags/v0.9.9
lambda 6 years ago
parent
commit
14054dd582
2 changed files with 24 additions and 1 deletions
  1. +2
    -0
      config/config.exs
  2. +22
    -1
      lib/pleroma/formatter.ex

+ 2
- 0
config/config.exs View File

@@ -12,6 +12,8 @@ config :pleroma, Pleroma.Repo, types: Pleroma.PostgresTypes

config :pleroma, Pleroma.Upload, uploads: "uploads"

config :pleroma, :emoji, shortcode_globs: ["/emoji/custom/**/*.png"]

# Configures the endpoint
config :pleroma, Pleroma.Web.Endpoint,
url: [host: "localhost"],


+ 22
- 1
lib/pleroma/formatter.ex View File

@@ -116,7 +116,28 @@ defmodule Pleroma.Formatter do
_ -> []
end)

@emoji @finmoji_with_filenames ++ @emoji_from_file
@emoji_from_globs (
static_path = Path.join(:code.priv_dir(:pleroma), "static")

globs =
Application.get_env(:pleroma, :emoji, [])
|> Keyword.get(:shortcode_globs, [])

paths =
Enum.map(globs, fn glob ->
Path.join(static_path, glob)
|> Path.wildcard()
end)
|> Enum.concat()

Enum.map(paths, fn path ->
shortcode = Path.basename(path, Path.extname(path))
external_path = Path.join("/", Path.relative_to(path, static_path))
{shortcode, external_path}
end)
)

@emoji @finmoji_with_filenames ++ @emoji_from_globs ++ @emoji_from_file

def emojify(text, emoji \\ @emoji)
def emojify(text, nil), do: text


Loading…
Cancel
Save