# Maintainer: Gavin Luo <lunt.luo@gmail.com>

pkgbase="maple-font"

pkgver=7.9
pkgrel=1
pkgdesc="Open source monospace font with round corner, ligatures and Nerd-Font icons for IDE and terminal. 带连字和控制台图标的圆角等宽字体，中英文宽度完美2:1。"
url="https://github.com/subframe7536/maple-font"
arch=("any")
license=("OFL-1.1")
makedepends=("unzip")

pkgname=()
source=()
noextract=()
sha256sums=('d41cb72721e99cfe4fbd1a7b0f182a013457de46aa612018f924dd024699d3b9'
            'cb1e79b2c23dff772ae351784ef2b84454a61b3920e9b20bd5db4bf207e4472d'
            'ab88522932cf4015dffeaef6dedc59a22a5fefecdcc6e583d9fcd997da5b7cac'
            'af913b6322905348b3f50e4397fedc35b3a880db5effcce7969003051dcd3e94'
            '8248d6260660be1066b5ebe90d25131582df8383f38db1c284dd1f2dc9d2b46e'
            '59098b87c895d871635d37680e88000ae2b2b25b55428195b228ec589e35fb89'
            'ecf47b851ae4001b00564399511af8dc9615339d3ae9ded54e8547d6d1ad3da1'
            '3a35f8f0669bef3dded9df208cc4526a6f7573210e134816e9084a8981271d75'
            'b9e57677cc4ec069ce178bd965d66cd14bd26c12e37d89d786ff959339bf8c93'
            '5e38e83b007e7157c253c3f57c0a6f80415378f4859d43eb3cf4b1d858001681'
            '80bf6db8920b2999d900e08f9e5031f7686baeb72dbdb80891f2c1ae9cec606f'
            'fd5a5c9a0dcc04b356b5ada97b922669cec09d47f32c7886abe3cb2da9b43643'
            '6d30ac6942726a5b53117c82e6b378144ac02a62a8e6b28702b961db86390ac9'
            '6103d3a73d0095de6b34e709f3ecaf1147e35ab7717c03068e07c0bb0a8efa2e'
            '6b71f2b698715c199d607fa729bbc472a298c1072f5b5c515f7ca4057fce6009'
            'f6b2c6d1981ca338729449dba0caf07ba05751edd1d4b474b46d7b316b3c0db3'
            '059e205604eaaefc66f040aec18f70ed62dac18e45ab4d60e03847214643ef05'
            '2f7f702a121cd910751849dde76f431d81a5be1618507f5724606d3147028b88'
            'bfc2d8a46050e8d73da7c09a59badac1ec6ebd2cff6783548f9005ce5425b84f'
            'ee68eea2553fb2b5fffba69b57ecb5e5ba5dd6132785485c900e3e680ed7d221'
            '4b0db76d17fd103d654862287a07f83b7c547991728b145122ada4201fd9aa8d'
            '0ee9557b3f4c94564b667a45ee9fb22818f880d87bf170687c7b3d0151c584cb'
            'a4ff81ab62ec4bebb0a7ebcd035289fedc5518a4f2f63dc978141f67d19f181c'
            '24aeb14ed756d78b112e6692ea02c669e16afaa0f01e7bfdbb37d2e63fa45fa7'
            '6e301f72472856e1b2f2f91d2522a46b41b6ae0c14c98ec82032dbfc1d820bc9'
            'df1c1a5ee784c28a1ad228ae1335d3bb8239ac483db9db7f3ba986104e069772'
            '695482b1a9840d87e1fb25367bb478cdc50b1566105fbab5402d4aa00f3bb0fa'
            '394bb22b577e2fe3d098778d4b17bbee5cbb73cdf715363250bb847bd71b877f'
            'd6e77dcce1c5d68636392fd4d77a422e74602c31f465de63d5e222301fc5f637'
            '3197324b7e25d6bc3e77dc0d5978f19a6d649a3b2f4cb8308ac3c60cb911e43c'
            'a543f01a798d6b3f0367b122101b9cefb1690a007e980dee7995e5d08e729d45'
            '20e31f4c2188e2da8519048a92b3cc0413eb02e3bb960c5f94ac7c65ad0a9e2d'
            '1bd6b4be3062e6ef2b4aaa44e044d05efa4501afd3c42367842154bdb0367d0b'
            'af8082c484cb1103da6c2efa4b76f403fe342f9a3ac81ff665b8c6c66c2f8863'
            'df41f7ef14c8aab8c73618f3c8471f7dd94efb2b1b0289423d54e3246dd022eb'
            '3a66478c969ad37df8b47cf67c064fc4d43afdad376cc71b49c09d18c0d719e4'
            '59db4d19fa7f914648523b04a2f55ce135c02ce6c31626d237fb6184395c2df5'
            '5db24a284d2d04e527a775a47d418169eb1d1165818ff54659534bc06b7d61e7'
            'fa7423c5377a587d2008209431ae16afaa49cee7dd75ca70c6c7f8632ca484b9'
            '6fd6c8668657d4b55f108a115e59fa7a081757f29f599ebfc30a8558b85725bf')
_variant=("MapleMono-CN-unhinted"
          "MapleMono-CN"
          "MapleMono-NF-CN-unhinted"
          "MapleMono-NF-CN"
          "MapleMono-NF-unhinted"
          "MapleMono-NF"
          "MapleMono-OTF"
          "MapleMono-TTF"
          "MapleMono-Variable"
          "MapleMono-Woff2"
          "MapleMonoNL-CN-unhinted"
          "MapleMonoNL-CN"
          "MapleMonoNL-NF-CN-unhinted"
          "MapleMonoNL-NF-CN"
          "MapleMonoNL-NF-unhinted"
          "MapleMonoNL-NF"
          "MapleMonoNL-OTF"
          "MapleMonoNL-TTF"
          "MapleMonoNL-Variable"
          "MapleMonoNL-Woff2"
          "MapleMonoNormal-CN-unhinted"
          "MapleMonoNormal-CN"
          "MapleMonoNormal-NF-CN-unhinted"
          "MapleMonoNormal-NF-CN"
          "MapleMonoNormal-NF-unhinted"
          "MapleMonoNormal-NF"
          "MapleMonoNormal-OTF"
          "MapleMonoNormal-TTF"
          "MapleMonoNormal-Variable"
          "MapleMonoNormal-Woff2"
          "MapleMonoNormalNL-CN-unhinted"
          "MapleMonoNormalNL-CN"
          "MapleMonoNormalNL-NF-CN-unhinted"
          "MapleMonoNormalNL-NF-CN"
          "MapleMonoNormalNL-NF-unhinted"
          "MapleMonoNormalNL-NF"
          "MapleMonoNormalNL-OTF"
          "MapleMonoNormalNL-TTF"
          "MapleMonoNormalNL-Variable"
          "MapleMonoNormalNL-Woff2")

for _var in "${_variant[@]}"; do
  _filename="${_var}.zip"
  noextract+=("${_filename}")
  source+=("${url}/releases/download/v${pkgver}/${_filename}")

  if [[ "${_var}" == *"OTF"* ]]; then
    _pkgname="otf-${_var//-OTF/}"
  elif [[ "${_var}" == *"Woff2"* ]]; then
    _pkgname="woff2-${_var//-Woff2/}"
  else
    _pkgname="ttf-${_var//-TTF/}"
  fi
  _pkgname=${_pkgname,,}
  pkgname+=("${_pkgname}")

  if [[ "${_var}" == "MapleMono-TTF" ]]; then
    _replaces="ttf-maple"
  elif [[ "${_var}" == "MapleMonoNL-TTF" ]]; then
    _replaces="ttf-maple-autohint"
  elif [[ "${_var}" == "MapleMono-OTF" ]]; then
    _replaces="otf-maple"
  elif [[ "${_var}" == "MapleMono-Woff2" ]]; then
    _replaces="woff2-maple"
  elif [[ "${_var}" == "MapleMono-NF" ]]; then
    _replaces="ttf-maple-nerd"
  elif [[ "${_var}" == "MapleMono-NF-CN" ]]; then
    _replaces="ttf-maple-sc-nerd"
  else
    _replaces=""
  fi

  _features=()
  if [[ "${_var}" == *"Normal"* ]]; then _features+=("使用normal预设"); fi
  if [[ "${_var}" == *"NL"* ]]; then _features+=("无连字"); fi
  if [[ "${_var}" == *"NF"* ]]; then _features+=("内嵌Nerd-Font"); fi
  if [[ "${_var}" == *"CN"* ]]; then _features+=("含中文"); fi
  if [[ "${_var}" == *"unhinted"* ]]; then _features+=("无微调"); fi
  if [[ "${_var}" == *"Variable"* ]]; then _features+=("可变"); fi

  if (( ${#_features[@]} > 0 )); then
    old_ifs="$IFS"
    IFS='，'
    _pkg_desc="${pkgdesc//。/}（${_features[*]}版本）"
    IFS=${old_ifs}
  fi

  _conflicts=""
  if [[ "${_pkgname}" == *"-unhinted" ]]; then
    _conflicts="${_pkgname//-unhinted/}"
  fi

  eval "package_${_pkgname}() {
  replaces=(${_replaces})
  conflicts=(${_conflicts})
  pkgdesc='${_pkg_desc}'

  _package '${_pkgname}' '${_filename}'
}"
done

_package() {
  local _pkg_name=$1
  local _filename=$2

  unzip "${_filename}" -d "${_pkg_name}"

  install -d "${pkgdir}/usr/share/fonts/maple"
  install -Dm644 -t "${pkgdir}/usr/share/fonts/maple" "${_pkg_name}"/Maple*

  install -d "${pkgdir}/usr/share/licenses/${_pkg_name}"
  install -Dm644 -t "${pkgdir}/usr/share/licenses/${_pkg_name}" "${_pkg_name}"/LICENSE.txt
}
