ConTeXt에서 내일 날짜를 어떻게 인쇄하나요?

ConTeXt에서 내일 날짜를 어떻게 인쇄하나요?

나는 종종 ConTeXt에 날짜를 표시해야 하는데, 오늘은 아니고 \date다음 날에 표시합니다. 대신 내일 날짜를 인쇄하는 방법은 무엇입니까?

예: 2019년 8월 7일

답변1

루아에서 하세요. 함수os.time()현재 시간을 POSIX 타임스탬프로 제공합니다. 즉, 1970년 1월 1일 이후의 초 수입니다. 내일 같은 시간을 얻으려면 하루의 초 수를 추가하십시오. 그 결과를os.date. 일반적으로 os.date날짜를 문자열로 형식화하지만 형식 인수가 이면 "*t"적절한 단위로 구분된 타임스탬프가 있는 테이블을 반환합니다. 여기에서 일, 월, 연도를 추출하여 ConTeXt의 date기능에 연결할 수 있습니다.

엄밀히 말하면 이것은 POSIX 시스템에서만 작동하지만 이를 수행하는 시스템은 없습니다.~ 아니다POSIX 타임스탬프를 사용하세요. 이 접근 방식은 월 및 연도 경계와 윤년에도 적용됩니다. 유일한 문제는윤초, 윤초에 정확하게 실행하면 내일이 아닌 같은 날에 종료될 수 있지만 이는 몇 년마다 발생하기 때문입니다.

\starttext

\currentdate

\ctxlua{
    local t = os.date("*t", os.time() + 24*60*60)
    context.date{d = t.day, m = t.month, y = t.year}
}

\stoptext

여기에 이미지 설명을 입력하세요

관련 정보