겐시(템플링어)
Genshi (templating language)개발자 | 에지월 소프트웨어 |
---|---|
초기 릴리즈 | 2006년 8월 3일 | 전 )
안정적 해제 | 0.7 / 2013년 1월 27일; 전 |
리포지토리 | |
운영 체제 | 크로스 플랫폼 |
유형 | 템플릿 엔진 |
웹사이트 | genshi |
겐시는 파이톤으로 작성된 XML 기반 어휘를 위한 템플릿 엔진이다.겐시는 생성된 출력을 XML 기반 언어, 보통 HTML로 쉽게 삽입하고 문서 사이에 재사용 요소를 넣는 데 사용된다.겐시의 구문은 키드에 기반을 두고 있지만, 구조는 다르다.겐시는 Python 코드에 템플릿을 컴파일하는 대신 스트림 기반 API를 사용하여 템플릿을 동적으로 처리함으로써 템플릿을 더 빠르게 처리하면서 일부 기능을 구현하는 것을 목표로 한다.[1]
겐시는 체리피,[2][3] 터보지어,[4] 필론[5], 웹투피와 같은 여러 파이톤 웹 프레임워크와 함께 사용할 수 있다.[6]Genshi는 TurboGears 2.x 웹 프레임워크에서 Kid를 대체했다.[7]
겐시 마크업
겐시는 네임스페이스를 사용하여 HTML에 지시사항을 삽입한다. 일반적인 지시사항은 인용문 안에 파이썬 표현이 있는 속성으로 주어진다.예를 들어, 다음은 4를 표시하는 단락을 렌더링한다.
<<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://genshi.edgewall.org/"><body> <py:content="2 + 2">>이것은 4</p </body> </html>로 대체될 것이다.
네임스페이스를 사용하기 때문에, 겐시는 WYSIWYG HTML 편집기에서 사용될 수 있다.[8][9]
키드와 겐시의 차이점
- 겐시는 템플릿을 직접 해석한다(Python 코드를 생성하는 키드와 달리)[10]
- Genshi는 템플릿 재사용을[10] 위해 XInclude를 사용한다.
- 겐시는 키드가 가지고 있지 않은 속성을 덧붙인다.
py:choose
[10] - 겐시 템플릿은 템플릿 소스 파일 이름과 라인 번호를 추적하기 때문에 디버깅이 더 쉬우며, 겐시의 통역기에서 나온 오류는 키드가 생성한 코드보다 더 이해할 수 있는 스택 추적을 생성한다.[10]
참조
- ^ "What is Genshi?". Retrieved 2008-01-20.
- ^ "CherryPy – Genshi". Retrieved 2009-09-26.
- ^ "Genshi - CherryPy Tools - Trac". Archived from the original on 2012-07-04. Retrieved 2009-09-26.
- ^ "Genshi Templating". Archived from the original on 2012-07-04. Retrieved 2008-01-20.
- ^ "Genshi Templates - Pylons Cookbook". Archived from the original on 2012-07-04. Retrieved 2008-01-20.
- ^ "web2py: Enterprise Web Framework". Retrieved 2009-09-26.
- ^ Ramm, Mark. "TurboGears 1.1 and Beyond". Archived from the original on 2012-07-04. Retrieved 2008-01-20.
- ^ "Choosing a templating language". Archived from the original on 2010-06-16. Retrieved 2010-05-30.
- ^ "Choosing a templating language". Archived from the original on 2008-01-17. Retrieved 2008-01-20.
- ^ a b c d "Comparing Genshi to Kid". Retrieved 2008-01-20.