forked from mirrors/akkoma
Merge branch 'feature/auto-shortcodes' into 'develop'
Feature: automatic shortcodes for emoji See merge request pleroma/pleroma!245
This commit is contained in:
commit
14054dd582
2 changed files with 24 additions and 1 deletions
|
@ -12,6 +12,8 @@ config :pleroma, Pleroma.Repo, types: Pleroma.PostgresTypes
|
||||||
|
|
||||||
config :pleroma, Pleroma.Upload, uploads: "uploads"
|
config :pleroma, Pleroma.Upload, uploads: "uploads"
|
||||||
|
|
||||||
|
config :pleroma, :emoji, shortcode_globs: ["/emoji/custom/**/*.png"]
|
||||||
|
|
||||||
# Configures the endpoint
|
# Configures the endpoint
|
||||||
config :pleroma, Pleroma.Web.Endpoint,
|
config :pleroma, Pleroma.Web.Endpoint,
|
||||||
url: [host: "localhost"],
|
url: [host: "localhost"],
|
||||||
|
|
|
@ -116,7 +116,28 @@ defmodule Pleroma.Formatter do
|
||||||
_ -> []
|
_ -> []
|
||||||
end)
|
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, emoji \\ @emoji)
|
||||||
def emojify(text, nil), do: text
|
def emojify(text, nil), do: text
|
||||||
|
|
Loading…
Reference in a new issue