모듈:Yesno
보이기
이 문서는 일반 사용자의 편집이 제한되어 있습니다. 더 자세한 설명은 보호 정책과 보호 기록을 살펴보세요. 고칠 내용이 있다면 우선 토론 문서에 의견을 남겨주세요. 토론을 거쳐 총의가 모아졌다면, 관리자에게 보호 편집 요청을 해주세요. 보호 이유가 사라졌다면 보호 해제 요청을 남겨주세요. |
이 모듈은 보호대상 등급이 매겨졌습니다. 이것은 매우 많은 문서에 사용되는 가시성이 높은 모듈이거나 매우 자주 문서 풀어넣기됩니다. 반달이나 실수가 많은 페이지에 영향을 미칠 수 있고 사소한 편집이 서버의 대량 로드가 일어날 수 있기 때문에, 이것은 편집 보호되었습니다. |
이 모듈은 불리언 또는 불리언 스타일 문자열 입력을 처리하기 위한 일관된 인터페이스를 제공합니다. 루아가 true
와 false
불리언 값을 허용하지만 위키코드 틀들은 "yes", "no" 등의 문자열을 통해서만 불리언 값을 표현할 수 있습니다. 이 모듈은 이러한 종류의 문자열을 처리하여 루아가 처리할 수 있게 불리언 입력으로 변환해 줍니다. nil
값의 경우 nil
로 반환하여 nil
과 false
를 구별합니다. 이 모듈은 다른 루아 구조를 입력으로 받기도 합니다. (예: 불리언, 숫자, 테이블, 함수)
자세한 설명은 en:Module:Yesno를 참고하십시오.
-- Function allowing for consistent treatment of boolean-like wikitext input.
-- It works similarly to the template {{yesno}}.
return function (val, default)
-- If your wiki uses non-ascii characters for any of "yes", "no", etc., you
-- should replace "val:lower()" with "mw.ustring.lower(val)" in the
-- following line.
val = type(val) == 'string' and val:lower() or val
if val == nil then
return nil
elseif val == true
or val == 'yes'
or val == 'y'
or val == 'true'
or val == 't'
or val == 'on'
or val == '예'
or val == '참'
or tonumber(val) == 1
then
return true
elseif val == false
or val == 'no'
or val == 'n'
or val == 'false'
or val == 'f'
or val == 'off'
or val == '아니요'
or val == '거짓'
or tonumber(val) == 0
then
return false
else
return default
end
end