質問 LuaLaTeX + luatexja-fontspec: 利用されるフォントを、直接プロジェクトフォルダから利用出来ますか?において、プロジェクト内からフォントを取得するには、下記の解決が提案されました:

\edef\currfileabsdir{\directlua{tex.sprint(lfs.currentdir())}/}

残念ながら、これはエラーを起こします:

! Undefined control sequence.
l.1 C:\Users
          \i\Documents\TeX\LuaLaTeX_Development
l.6 ...sdir{\directlua{tex.sprint(lfs.currentdir())}
                                                  /}

色々調べて、不明コントロールシーケンスは\Usersでの\だと分かりました。解決するには、下記の解決が提案されました

\edef\currfileabsdir{\directlua{tex.sprint(-2, lfs.currentdir())}/}

でも、この解決は正しいパス区切りに差し替える事ではなく、これを削除する事をしています。このように、

C:Users/i/Documents/TeX/LuaLaTeX_Development/fonts/HGS_Mincho/HGRMB.ttc

C:UsersiDocumentsTeXLuaLaTeX_Development/fonts/HGS_Mincho/HGRMB.ttc

になります。どうすればよろしいでしょうか。


再現

\documentclass[a4paper, twoside]{ltjsarticle}

\usepackage{luatexja-fontspec}

# 以前解決
# \edef\currfileabsdir{\directlua{tex.sprint(lfs.currentdir())}/}

\edef\currfileabsdir{\directlua{tex.sprint(lfs.currentdir():gsub('\string\\', '/'))}/}

\setmainjfont[
    Path          = \currfileabsdir,
    UprightFont   = fonts/HGS_Mincho/HGRMB.ttc,
    BoldFont      = fonts/HGS_Mincho/HGRME.ttc
]{HGS Mincho}

\setsansjfont[
    Path          = \currfileabsdir,
    UprightFont   = fonts/HGS_Gothic/HGRGM.ttc,
    BoldFont      = fonts/HGS_Gothic/HGRGE.ttc,
]{HGS Gothic}


\begin{document}
  日本語 Latin letters Кириллица
\end{document}