月が 1 月から 6 月の場合、「Spring」と印刷するにはどうすればよいでしょうか。それ以外の場合は、「Fall」と印刷するにはどうすればよいでしょうか。

月が 1 月から 6 月の場合、「Spring」と印刷するにはどうすればよいでしょうか。それ以外の場合は、「Fall」と印刷するにはどうすればよいでしょうか。

私は授業を教えていますが、私のノートには秋学期には「2015年秋」、春学期には「2016年春」と書かれています。

\the\year

今年は。でも、

\the\season

秋学期と春学期ですか? その場合、どの月を学期と定義するかをカスタマイズするにはどうすればよいですか?

答え1

追加パッケージなしで、northernまたはsouthern半球のサポートを提供します:

\documentclass{article}

\newif\ifnorthernhemisphere
\northernhemispheretrue

\newcommand{\season}{%
  \ifnorthernhemisphere
  \ifcase\month
  \or Winter
  \or Winter
  \or Spring
  \or Spring
  \or Spring
  \or Summer
  \or Summer
  \or Summer
  \or Fall
  \or Fall
  \or Fall
  \or Winter
  \fi
  \else
  \ifcase\month
  \or Summer
  \or Summer
  \or Fall
  \or Fall
  \or Fall
  \or Winter
  \or Winter
  \or Winter
  \or Spring
  \or Spring
  \or Spring
  \or Summer
  \fi
  \fi
}



\begin{document}
Northern hemisphere

\the\month\ \season

\month=5
\the\month\ \season

\month=9
\the\month\ \season

Southern hemisphere

\month=2
\northernhemispherefalse
\the\month\ \season


\month=5
\the\month\ \season

\month=9
\the\month\ \season

\end{document}

ここに画像の説明を入力してください

アップデートオプションの引数を持つバリアントを次に示します。

\documentclass{article}

\newif\ifnorthernhemisphere
\northernhemispheretrue

\newcommand{\season}[1][\month]{%
  \ifnorthernhemisphere
  \ifcase#1
  \or Winter
  \or Winter
  \or Spring
  \or Spring
  \or Spring
  \or Summer
  \or Summer
  \or Summer
  \or Fall
  \or Fall
  \or Fall
  \or Winter
  \fi
  \else
  \ifcase#1
  \or Summer
  \or Summer
  \or Fall
  \or Fall
  \or Fall
  \or Winter
  \or Winter
  \or Winter
  \or Spring
  \or Spring
  \or Spring
  \or Summer
  \fi
  \fi
}



\begin{document}
Northern hemisphere

\season


\season[5]


\season[9]

Southern hemisphere


\northernhemispherefalse
\season

\season[5]

\season[9]

\end{document}

**別のバージョン -xparse機能付きexpl3:

\documentclass{article}


\usepackage{xparse}

\ExplSyntaxOn

\seq_new:N \g_default_spring_semester_seq
\seq_new:N \g_default_fall_semester_seq

\seq_new:N \g_spring_semester_seq
\seq_new:N \g_fall_semester_seq

\seq_set_from_clist:Nn \g_default_spring_semester_seq {1,2,3,4,5,6}

\NewDocumentCommand{\SetSpringSemesterMonths}{m}{%
  \seq_set_from_clist:Nn \g_spring_semester_seq {#1}
}

\NewDocumentCommand{\SetFallSemesterMonths}{m}{%
  \seq_set_from_clist:Nn \g_fall_semester_seq {#1}
}

\SetSpringSemesterMonths{1,2,3,4,5,6}
\SetFallSemesterMonths{7,8,9,10,11,12}

\NewDocumentCommand{\season}{}{%
  \seq_if_empty:NTF \g_spring_semester_seq 
  {\seq_set_eq:NN \l_tmpa_seq \g_default_spring_semester_seq}
  {\seq_set_eq:NN \l_tmpa_seq \g_spring_semester_seq}
  \seq_if_empty:NTF \g_fall_semester_seq {\seq_set_eq:NN \l_tmpb_seq \g_default_fall_semester_seq}
  {\seq_set_eq:NN \l_tmpb_seq \g_fall_semester_seq}
  \seq_if_in:NVTF \l_tmpa_seq {\month} {
    Spring%
  }{%
    \seq_if_in:NVTF \l_tmpb_seq {\month} {%
      Fall%
    }{}
  }
}

\ExplSyntaxOff

\begin{document}

\season

\end{document}

答え2

解決策はここにあります

\documentclass{article}
\begin{document}
\ifnum\month<7
Spring
\else
Fall
\fi

\month=11
\ifnum\month<7
Spring
\else
Fall
\fi
\end{document}

答え3

アップデート:もっとクレイジーなコード、プロパティ リストなし!:)

\documentclass{article}

\usepackage{xparse}

\ExplSyntaxOn
\clist_new:N \g_season_clist
\bool_new:N \g_season_northenhemisphere_bool
\bool_gset_false:N \g_season_northenhemisphere_bool

\NewDocumentCommand { \getseason } { m } {
   \clist_item:Nn \g_season_clist {
    \int_mod:nn {
      \int_div_round:nn { #1 - 1 } { 3 } + \bool_if:NTF \g_season_northenhemisphere_bool { 3 } { 1 } 
    } { 4 } + 1
  }
}

\NewDocumentCommand { \setseasons } { m } {
  \clist_gset:Nn \g_season_clist { #1 }
}

\NewDocumentCommand { \northenhemisphere } { } {
  \bool_gset_true:N \g_season_northenhemisphere_bool
}

\NewDocumentCommand { \southernhemisphere } { } {
  \bool_gset_false:N \g_season_northenhemisphere_bool
}
\ExplSyntaxOff

\begin{document}

\setseasons{Spring,Summer,Fall,Winter}

\northenhemisphere
In the Northen Hemisphere, we have \getseason{\month}.

\southernhemisphere
In the Southern Hemisphere, we have \getseason{\month}.

\end{document}

当初の試み:クレイジーなコードが待っています!:)

\documentclass{article}

\usepackage{xparse}

\ExplSyntaxOn
\clist_new:N \g_season_clist
\prop_new:N \g_season_prop

\prop_gput:Nnn \g_season_prop { 12 } { 4 }
\prop_gput:Nnn \g_season_prop { 1 } { 4 }
\prop_gput:Nnn \g_season_prop { 2 } { 4 }
\prop_gput:Nnn \g_season_prop { 3 } { 1 }
\prop_gput:Nnn \g_season_prop { 4 } { 1 }
\prop_gput:Nnn \g_season_prop { 5 } { 1 }
\prop_gput:Nnn \g_season_prop { 6 } { 2 }
\prop_gput:Nnn \g_season_prop { 7 } { 2 }
\prop_gput:Nnn \g_season_prop { 8 } { 2 }
\prop_gput:Nnn \g_season_prop { 9 } { 3 }
\prop_gput:Nnn \g_season_prop { 10 } { 3 }
\prop_gput:Nnn \g_season_prop { 11 } { 3 }

\bool_new:N \g_season_northenhemisphere_bool
\bool_gset_false:N \g_season_northenhemisphere_bool

\NewDocumentCommand { \getseason } { m } {
   \clist_item:Nn \g_season_clist {
    \int_mod:nn {
      \prop_item:Nn \g_season_prop { #1 } + \bool_if:NTF \g_season_northenhemisphere_bool { 3 } { 1 } 
    } { 4 } + 1
  }
}

\NewDocumentCommand { \setseasons } { m } {
  \clist_gset:Nn \g_season_clist { #1 }
}

\NewDocumentCommand { \northenhemisphere } { } {
  \bool_gset_true:N \g_season_northenhemisphere_bool
}

\NewDocumentCommand { \southernhemisphere } { } {
  \bool_gset_false:N \g_season_northenhemisphere_bool
}
\ExplSyntaxOff

\begin{document}

\setseasons{Spring,Summer,Fall,Winter}

\northenhemisphere
In the Northen Hemisphere, we have \getseason{\month}.

\southernhemisphere
In the Southern Hemisphere, we have \getseason{\month}.

\end{document}

出力:

クワック

babel現在の言語に応じて季節の名前を設定するためのフックを追加したり、datetimeたとえば のように任意の日付をフォーマットするために使用することもできます\season\today。お役に立てば幸いです。:)

答え4

biblatex複数のアイテムやアーカイブアイテムがある場合のソリューション。

季節

シーズンを出版物の(メタデータ)データの一部として扱います。

ローカリゼーションも関係してきます。(すべてのbabel/polyglossia言語がseason(まだ) 関連の文字列を定義しているわけではないことに注意してください。)

ムウェ

\begin{filecontents*}[overwrite]{\jobname.bib}

@misc{notesset1,
  title = {Lecture Notes Set 1}, 
  date = {2020-23},
    }
% season (21=spring, 22=summer, 23=autumn, 24=winter)

@misc{notesset2,
  title = {Lecture Notes Set 2}, 
  date = {2021-21},
    }

@misc{notesset3,
  title = {Lecture Notes Set 3}, 
  date = {2021-22},
    }   

@misc{notesset4,
  title = {Lektur 1}, 
  date = {2021-22},
  langid = {ngerman},
%  language={langgerman},
    }   


@misc{notesset5,
  title = {Διάλεξη 1}, 
  date = {2021-22},
  langid = {greek},
  language={langgreek},
    }   

@misc{notesset5a,
  title = {Conferenza 1}, 
  date = {2021-22},
  langid = {italian},
  language={langitalian},
    }   

\end{filecontents*}




\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage{csquotes}
\usepackage[svgnames]{xcolor}
\usepackage{fontspec}
\babelprovide[import, onchar=ids fonts]{greek}
\babelfont[greek]{rm}
          [Color=DarkGreen ,
          ]{Noto Serif}

\usepackage[style=authoryear,
dateabbrev=false,% full name of season
language=autocite,%pick up the langid language, for citations
autolang=other,%wrap with otherlanguage environment and translate date-related names according to the langid
]{biblatex}

\addbibresource{\jobname.bib}

\DeclareListFormat{language}{\ifbibstring{#1}{\bibstring{#1}\addcolon}{#1}}

\DeclareCiteCommand{\citeseasonall}
{}
{\textmd{\printlist{language}}
\printfield{title}\addcomma\addspace\printdate}
{}
{}

\DeclareCiteCommand{\citeseasontitle}
{}
{\printfield{title}
}
{}
{}

\DeclareCiteCommand{\citeseason}
{}
{\printdate}
{}
{}


\DefineBibliographyStrings{greek}{%
  spring    = {άνοιξη},
  summer  = {καλοκαίρι},
  autumn   = {φθινόπωρο},
  winter     = {χειμώνας},
  langgreek = {Ελληνικά},
}

\DefineBibliographyStrings{italian}{%
  spring    = {primavera},
  summer  = {estate},
  autumn   = {autunno},
  winter     = {inverno},
  langitalian = {italiano},
}




%-----------------------------

\title{\citeseasontitle{notesset1}}
\author{}
\date{\citeseason{notesset1}}
%------------------
\begin{document}
\maketitle

\section*{Overview}
\begin{itemize}
\item \textbf{\citeseasonall{notesset1}} covers introductory material.
\item \textbf{\citeseasonall{notesset2}} advances to the next topic.
\item \textbf{\citeseasonall{notesset3}} covers the extended course.
\item German: \textbf{\citeseasonall{notesset4}} is the xyz version. 
\item Greek: \textbf{\citeseasonall{notesset5}} is the abc version. 
\item Italian: \textbf{\citeseasonall{notesset5a}} is the abc version. 
\end{itemize}
\end{document}

自動化

カスタム コード番号を使用した、より一般的なソリューション。

Biberdate月を特定の値に設定すると、フィールドを使用して四季を表現できます。

  my %
    seasons = ( 21 => 'spring',
                  22 => 'summer',
                  23 => 'autumn',
                  24 => 'winter' );
                  
...\texlive\2020
\texmf-dist
\source
\bibtex
\biber
\biblatex-biber.tar
\biblatex-biber
\biblatex-biber-2.15
\lib
\Biber
\Date                  
format.pm

このアイデアを拡張し、代わりに/レベルtermでマクロを介して処理されるカスタム フィールド ( )を使用すると、大学の規約と裁判所の規約を実行できます。BiblatexLatex

サンプルフォーマット

xsvフィールド タイプと関連コマンドの使用方法を示し\forcsvfield、bibentry ごとにフィールドの順序をカスタマイズできるようにします (および expl3 分割関数)。また、引用コマンド内の書式設定フックにより、ドキュメントの途中で引用形式を変更できるようになります。さらに、ローカリゼーション用の bibstrings もあります。さらに、フィールドを任意のコードへの入力引数として使用する例\usefield(ここでは画像名) もあります。

何ができるかについての演習。

使用例: セット、概要、またはその他のバルク ボリューム?

用語が少数の場合は、常に手動で入力するか、フィールドissue@article使用することもできます。

ムウェ



\begin{filecontents*}[overwrite]{\jobname.bib}

@misc{notesset1,
  title = {Lecture Notes Set 1}, 
  date = {2020-23},
    }
% season (21=spring, 22=summer, 23=autumn, 24=winter)

@misc{notesset2,
  title = {Lecture Notes Set 2}, 
  date = {2021-21},
    }

@misc{notesset3,
  title = {Lecture Notes Set 3}, 
  date = {2021-22},
    }   

@misc{notesset4,
  title = {Lektur 1}, 
  date = {2021-22},
  langid = {ngerman},
%  language={langgerman},
    }   


@misc{notesset5,
  title = {Διάλεξη 1}, 
  date = {2021-22},
  langid = {greek},
  language={langgreek},
    }   

@misc{notesset5a,
  title = {Conferenza 1}, 
  date = {2021-22},
  langid = {italian},
  language={langitalian},
    }   
@misc{testutag,
  title = {Test Titleuta Greek 31}, 
  term = {2021-31},
  langid = {greek},
%  language={langgreek},
    }   

@misc{testutha,
  title = {Test Titleut hilary}, 
  term = {2021-hilaryterm},
    }   
@misc{testuta,
  title = {Test Titleuta 31}, 
  term = {2021-31},
  author = {A Author},
  authorposition = {Adjunct Professor of Theoretics},
  university = {University of U},
  college = {College of C},
  school = {School of S},
  faculty = {Faculty of F},
  department = {Department of D},
  location = {Mars and The Moon and Mimas},
  image={example-image-a},
  sequence = {department,faculty,university,location,image},
  sequenceta = {title,term,author,authorposition},
    }   


@misc{testutb,
  title = {Test Titleutb 32}, 
  term = {2021-32},
  author = {zz},
  authorposition = {zz},
  university = {University of V},
  college = {College of D},
  school = {School of T},
  faculty = {Faculty of G},
  department = {Department of E},
  sequence = {department,college,university},
    }   
@misc{testutc,
  title = {Test Titleutc 33}, 
  term = {2021-33},
  courtlist = {Civil List},
  courtdivision = {Commercial Division},
  courtcourt = {Court of Appeal},
%  courtbench = {},
  courtname = {Supreme Court of XYZ},
  sequence = {courtlist,courtdivision,courtname},
    }   
@misc{testutd,
  title = {Test Titleutd 34}, 
  term = {2021-34},
%  courtlist = {},
%  courtdivision = {},
%  courtcourt = {},
  courtbench = {Full Court},
  courtname = {Supreme Court of XYZ},
  sequence = {courtbench,courtname},
    }   
@misc{testute,
  title = {Test Titleute 35}, 
  term = {2021-35},
    }   
@misc{testutf,
  title = {Test Titleutf 36}, 
  term = {2021-36},
    }   
@misc{testutg,
  title = {Test Titleutg 37}, 
  term = {2021-37},
    }   
    

@misc{testta,
  title = {Test Titleta 41}, 
  term = {2021-41},
    }   
@misc{testtb,
  title = {Test Titletb 42}, 
  term = {2021-42},
    }   
@misc{testtc,
  title = {Test Titletc 43}, 
  term = {2021-43},
    }   


@misc{testsa,
  title = {Test Titlesema 51}, 
  term = {2021-51},
    }   
@misc{testsb,
  title = {Test Titlesemb 52}, 
  term = {2021-52},
    }   
@misc{tests1,
  title = {Test Titlesem1 53}, 
  term = {2021-53},
    }   
@misc{tests2,
  title = {Test Titlesem2 54}, 
  term = {2021-54},
    }   


@misc{testsp,
  title = {Test Titlesp 61}, 
  term = {2021-61},
    }   
@misc{testsu,
  title = {Test Titlesu 62}, 
  term = {2021/2022-62},
    }   
@misc{testau,
  title = {Test Titleau 63}, 
  term = {2022-63},
    }   
@misc{testwi,
  title = {Test Titlewi 64}, 
  term = {2022-64},
    }   
\end{filecontents*}



\begin{filecontents*}[overwrite]{term.dbx}

\DeclareDatamodelFields[type=field, datatype=literal]{term,
  authorposition,
  university,
  college,
  school,
  faculty,
  department,
  courtlist,
  courtdivision,
  courtcourt,
  courtname,
  courtbench,  
  image,
}

\DeclareDatamodelFields[type=field, format=xsv, datatype=literal]{sequence,
sequenceta,
}

%\DeclareDatamodelFields[type=list, datatype=literal]{location,
%}

\DeclareDatamodelEntryfields{term,
  authorposition,
  university,
  college,
  school,
  faculty,
  department,
  sequence,
  courtlist,
  courtdivision,
  courtcourt,
  courtname,
  courtbench,
  sequenceta,
%  location,
 image,
  }

\end{filecontents*}


\documentclass[12pt]{article}
\usepackage[english]{babel}
\usepackage{csquotes}
\usepackage[svgnames]{xcolor}
\usepackage{fontspec}
\babelprovide[import, onchar=ids fonts]{greek}
\babelfont[greek]{rm}
          [Color=DarkGreen ,
          ]{Noto Serif}

\usepackage{xparse}
\usepackage{graphicx}


\ExplSyntaxOn




%term
\DeclareDocumentCommand { \fcompareb } { m } 
{
\tl_set:Nn \l_my_tl { #1 }
\seq_set_split:NnV \l_tmpa_seq { - }  \l_my_tl 
\seq_get_right:NN \l_tmpa_seq \l_myright_tlv
\int_compare:nNnT { \l_myright_tlv } = { 31 } { \bibstring{hilaryterm} }
\int_compare:nNnT { \l_myright_tlv } = { 32 } { \bibstring{epiphanyterm} }
\int_compare:nNnT { \l_myright_tlv } = { 33 } { \bibstring{lentterm} }
\int_compare:nNnT { \l_myright_tlv } = { 34 } { \bibstring{candlemasterm} }
\int_compare:nNnT { \l_myright_tlv } = { 35 } { \bibstring{easterterm} }
\int_compare:nNnT { \l_myright_tlv } = { 36 } { \bibstring{trinityterm} }
\int_compare:nNnT { \l_myright_tlv } = { 37 } { \bibstring{michaelmasterm} }
\int_compare:nNnT { \l_myright_tlv } = { 41 } { \bibstring{firstterm} }
\int_compare:nNnT { \l_myright_tlv } = { 42 } { \bibstring{secondterm} }
\int_compare:nNnT { \l_myright_tlv } = { 43 } { \bibstring{thirdterm} }
\int_compare:nNnT { \l_myright_tlv } = { 51 } { \bibstring{firstsemester} }
\int_compare:nNnT { \l_myright_tlv } = { 52 } { \bibstring{secondsemester} }
\int_compare:nNnT { \l_myright_tlv } = { 53 } { \bibstring{semesterone} }
\int_compare:nNnT { \l_myright_tlv } = { 54 } { \bibstring{semestertwo} }
\int_compare:nNnT { \l_myright_tlv } = { 61 } { \bibstring{springterm} }
\int_compare:nNnT { \l_myright_tlv } = { 62 } { \bibstring{summerterm} }
\int_compare:nNnT { \l_myright_tlv } = { 63 } { \bibstring{autumnterm} }
\int_compare:nNnT { \l_myright_tlv } = { 64 } { \bibstring{winterterm} }
}

%year
\DeclareDocumentCommand { \fcomparec } { m } 
{
\tl_set:Nn \l_my_tl { #1 }
\seq_set_split:NnV \l_tmpa_seq { - }  \l_my_tl 
\seq_get_left:NN \l_tmpa_seq \l_myleft_tlv
\tl_use:N \l_myleft_tlv 

}




\ExplSyntaxOff


\usepackage[style=authoryear,
dateabbrev=false,% full name of season
language=autocite,%pick up the langid language, for citations
autolang=other,%wrap with otherlanguage environment and translate date-related names according to the langid
datamodel=term,
]{biblatex}


\NewBibliographyString{hilaryterm,
  epiphanyterm,
  lentterm,
  candlemasterm,
  easterterm,
  trinityterm,
  michaelmasterm,
  firstterm,
  secondterm,
  thirdterm,
  firstsemester,
  secondsemester,
  semesterone,
  semestertwo,
  springterm,
  summerterm,
  autumnterm,
  winterterm,
}

\DefineBibliographyStrings{english}{%
% 30
  hilaryterm = {Hilary Term},% jan-mar/apr
  epiphanyterm = {Epiphany Term},
  lentterm    = {Lent Term},%feb-apr
  candlemasterm = {Candlemas Term},
  easterterm = {Easter Term},%apr-may
  trinityterm = {Trinity Term},% apr-jun/jun-jul
  michaelmasterm = {Michaelmas Term},% oct-dec
%  40
  firstterm  = {First Term},
  secondterm  = {Second Term},
  thirdterm  = {Third Term},
% 50
  firstsemester   = {First Semester},
  secondsemester   = {Second Semester},
  semesterone   = {Semester One},
  semestertwo   = {Semester Two},
% 60
  springterm = {Spring Term},
  summerterm = {Summer Term},
  autumnterm = {Autumn Term},
  winterterm = {Winter Term},
}


\addbibresource{\jobname.bib}

\newcommand\insertpic[1]{\includegraphics[width=1cm]{#1}}

%==============================
\newcommand\seqsep{\addcomma\addspace}
\newcommand\myseq[1]{\seqsep%
\ifstrequal{#1}{location}{\printlist{location}}{%
\ifstrequal{#1}{author}{\printnames[authorrev]{#1}}{%
\ifstrequal{#1}{image}{\usefield{\insertpic}{image}}{%\usefield{\includegraphics[scale=0.1]}{image}
\ifstrequal{#1}{term}{\printterm}{\printfield{#1}}%
}}}%
}



\DeclareFieldFormat{sequence}{
    \forcsvfield{\myseq}{sequence}
}   
%
\newcounter{seqtacounter}
\newcommand\seqtazero{\setcounter{seqtacounter}{0}}
\newcommand\seqtastep{\stepcounter{seqtacounter}}

%title author
\newcommand\seqsepta{\addcomma\addspace}

\newcommand\myseqta[1]{%
\seqtastep%
\ifnum\value{seqtacounter}=1\relax\else\seqsepta\fi%
\ifstrequal{#1}{location}{\printlist{location}}{}%
\ifstrequal{#1}{author}{\printnames[authorrev]{#1}}{}%
\ifstrequal{#1}{term}{\printterm}{\printfield{#1}}%
}

\DeclareFieldFormat{sequenceta}{
    \seqtazero
    \forcsvfield{\myseqta}{sequenceta}
}

%
\DeclareListFormat{language}{\ifbibstring{#1}{\bibstring{#1}\addcolon}{#1}}



\DeclareCiteCommand{\citeseasonall}
{}
{\textmd{\printlist{language}}
\printfield{title}\addcomma\addspace
\printdate}
{}
{}

\newcommand\uuformat[1]{#1}
\newcommand\cuformat[1]{#1}
\newcommand\suformat[1]{#1}
\newcommand\fuformat[1]{#1}
\newcommand\duformat[1]{#1}

\newcommand\postuuformat{}
\newcommand\postcuformat{}
\newcommand\postsuformat{}
\newcommand\postfuformat{}
\newcommand\postduformat{}


%  courtlist,
%  courtdivision,
%  courtcourt,
%  courtname,
%  courtbench,
\newcommand\lcformat[1]{#1}
\newcommand\dcformat[1]{#1}
\newcommand\ccformat[1]{#1}
\newcommand\ncformat[1]{#1}
\newcommand\bcformat[1]{#1}

\newcommand\postlcformat[1]{#1}
\newcommand\postdcformat[1]{#1}
\newcommand\postccformat[1]{#1}
\newcommand\postncformat[1]{#1}
\newcommand\postbcformat[1]{#1}



\DeclareFieldFormat{plain}{#1}
\DeclareFieldFormat{plainb}{\fcompareb{#1}}
\DeclareFieldFormat{plainc}{\fcomparec{#1}}
\DeclareFieldFormat{authorposition}{#1}

\DeclareFieldFormat{university}{\uuformat{#1}\postuuformat}
\DeclareFieldFormat{college}{\cuformat{#1}\postcuformat}
\DeclareFieldFormat{school}{\suformat{#1}\postsuformat}
\DeclareFieldFormat{faculty}{\fuformat{#1}\postfuformat}
\DeclareFieldFormat{department}{\duformat{#1}\postduformat}

%
%  courtlist,
%  courtdivision,
%  courtcourt,
%  courtname,
%  courtbench,
\DeclareFieldFormat{courtlist}{\lcformat{#1}\postlcformat}
\DeclareFieldFormat{courtdivision}{\dcformat{#1}\postdcformat}
\DeclareFieldFormat{courtcourt}{\ccformat{#1}\postccformat}
\DeclareFieldFormat{courtname}{\ncformat{#1}\postncformat}
\DeclareFieldFormat{courtbench}{\bcformat{#1}\postbcformat}


\newcommand\printterm{\seqsepta\printfield[plainb]{term}
\addcomma\addspace\printfield[plainc]{term}}


\DeclareNameFormat{authorrev}{%
\ifthenelse{\value{listcount}=1}
{\ifdefvoid{\namepartgiven}{}{%
 \namepartgiven\space}\namepartfamily}%
{\ifdefvoid{\namepartgiven}{}{\namepartgiven\space
 }%
\namepartfamily}%
\ifthenelse{\value{listcount}<\value{liststop}}
{\addcomma\space}
{}}



\DeclareCiteCommand{\citeseasonallx}
{}
{\textmd{\printlist{language}}%
\iffieldundef{sequenceta}{%true
   \printfield{title}%
   \iffieldundef{term}{}{%
        \printterm}}{%false
   \printfield{sequenceta}%
   }%
\iffieldundef{sequence}{}{\printfield{sequence}}
}
{}
{}


\DeclareCiteCommand{\citeseasontitle}
{}
{\printfield{title}
}
{}
{}

\DeclareCiteCommand{\citeseason}
{}
{\printdate}
{}
{}

\DeclareCiteCommand{\citeseasonterm}
{}
{\printfield[plainb]{term}}
{}
{}

\DeclareCiteCommand{\citeseasontermyear}
{}
{\printfield[plainc]{term}}
{}
{}

\DefineBibliographyStrings{greek}{%
  spring    = {άνοιξη},
  summer  = {καλοκαίρι},
  autumn   = {φθινόπωρο},
  winter     = {χειμώνας},
  langgreek = {Ελληνικά},
  hilaryterm = {Ελληνικά Greek Hilary},
}

\DefineBibliographyStrings{italian}{%
  spring    = {primavera},
  summer  = {estate},
  autumn   = {autunno},
  winter     = {inverno},
  langitalian = {italiano},
}




%-----------------------------

\title{\citeseasontitle{notesset1}}
\author{}
\date{\citeseason{notesset1}}
%------------------
\begin{document}
\maketitle

\section*{Overview}
\begin{itemize}
\item \textbf{\citeseasonall{notesset1}} covers introductory material.
\item \textbf{\citeseasonall{notesset2}} advances to the next topic.
\item \textbf{\citeseasonall{notesset3}} covers the extended course.
\item German: \textbf{\citeseasonall{notesset4}} is the xyz version. 
\item Greek: \textbf{\citeseasonall{notesset5}} is the abc version. 
\item Italian: \textbf{\citeseasonall{notesset5a}} is the abc version. 
\end{itemize}


\section*{Season Extended}
\subsection*{University Terms and Court Terms}
%\citeseasonallx{testutha}\par
\citeseasonallx{testuta}.  \citeseasonterm{testuta} of \citeseasontermyear{testuta} will see a new\ldots\par
%
\renewcommand\seqsep{\ \\ \makebox[2em]{\ }}
\renewcommand\uuformat[1]{\textsc{#1}}
\renewcommand\postuuformat{$\leftarrow$\par}
\noindent\citeseasonallx{testutb} xxx\par
\citeseasonallx{testutc}\par
\citeseasonallx{testutd}\par
\citeseasonallx{testute}\par
\citeseasonallx{testutf}\par\ 
\citeseasonallx{testutg}\par
\subsection*{Semesters}
\ \par
\citeseasonallx{testsa}\par
\citeseasonallx{testsb}\par
\citeseasonallx{tests1}\par
\citeseasonallx{tests2}\par
\subsection*{School Terms}
\ \par
\citeseasonallx{testta}, the \citeseasonterm{testta} of \citeseasontermyear{testta}\par
\citeseasonallx{testtb}\par
\citeseasonallx{testtc}\par
\ \par
\citeseasonallx{testsp}\par
\citeseasonallx{testsu}\par
\citeseasonallx{testau}\par
\citeseasonallx{testwi}\par

\section*{Languages}
\citeseasonallx{testutag}\par


%biber
%
%format.pm
%
%\begin{verbatim}
%  my %
%    seasons = ( 21 => 'spring',
%                  22 => 'summer',
%                  23 => 'autumn',
%                  24 => 'winter' );
%                  
%...\texlive\2020
%\texmf-dist
%\source
%\bibtex
%\biber
%\biblatex-biber.tar
%\biblatex-biber
%\biblatex-biber-2.15
%\lib
%\Biber
%\Date                  
%\end{verbatim}

\renewcommand\seqsepta{\par}
\renewcommand\seqsep{\par}
\renewcommand\uuformat[1]{$\rightarrow$\begin{tabular}{|l|}\hline\textsc{#1}\\ \hline \end{tabular}}
\renewcommand\postuuformat{}

\citeseasonallx{testuta}\par\bigskip 
\renewcommand\seqsepta{\addcomma\addspace}
\renewcommand\seqsep{\addcomma\addspace}
\renewcommand\uuformat[1]{#1}
\citeseasonallx{testutb}

\end{document}

babel言語/スクリプト処理に lua コードを使用するため、最近の TexLive では lualatex を使用してコンパイルします。

関連情報