1+ <!DOCTYPE html>
2+ < html class ="writer-html5 " lang ="en " >
3+ < head >
4+ < meta charset ="utf-8 " />
5+ < meta name ="viewport " content ="width=device-width, initial-scale=1.0 " />
6+ < title > chatgpt.cli.custom_rich — ChatGPT Python SDK documentation</ title >
7+ < link rel ="stylesheet " href ="../../../_static/pygments.css " type ="text/css " />
8+ < link rel ="stylesheet " href ="../../../_static/css/theme.css " type ="text/css " />
9+ <!--[if lt IE 9]>
10+ <script src="../../../_static/js/html5shiv.min.js"></script>
11+ <![endif]-->
12+
13+ < script data-url_root ="../../../ " id ="documentation_options " src ="../../../_static/documentation_options.js "> </ script >
14+ < script src ="../../../_static/jquery.js "> </ script >
15+ < script src ="../../../_static/underscore.js "> </ script >
16+ < script src ="../../../_static/_sphinx_javascript_frameworks_compat.js "> </ script >
17+ < script src ="../../../_static/doctools.js "> </ script >
18+ < script src ="../../../_static/js/theme.js "> </ script >
19+ < link rel ="index " title ="Index " href ="../../../genindex.html " />
20+ < link rel ="search " title ="Search " href ="../../../search.html " />
21+ </ head >
22+
23+ < body class ="wy-body-for-nav ">
24+ < div class ="wy-grid-for-nav ">
25+ < nav data-toggle ="wy-nav-shift " class ="wy-nav-side ">
26+ < div class ="wy-side-scroll ">
27+ < div class ="wy-side-nav-search " >
28+ < a href ="../../../index.html " class ="icon icon-home "> ChatGPT Python SDK
29+ </ a >
30+ < div role ="search ">
31+ < form id ="rtd-search-form " class ="wy-form " action ="../../../search.html " method ="get ">
32+ < input type ="text " name ="q " placeholder ="Search docs " />
33+ < input type ="hidden " name ="check_keywords " value ="yes " />
34+ < input type ="hidden " name ="area " value ="default " />
35+ </ form >
36+ </ div >
37+ </ div > < div class ="wy-menu wy-menu-vertical " data-spy ="affix " role ="navigation " aria-label ="Navigation menu ">
38+ <!-- Local TOC -->
39+ < div class ="local-toc "> </ div >
40+ </ div >
41+ </ div >
42+ </ nav >
43+
44+ < section data-toggle ="wy-nav-shift " class ="wy-nav-content-wrap "> < nav class ="wy-nav-top " aria-label ="Mobile navigation menu " >
45+ < i data-toggle ="wy-nav-top " class ="fa fa-bars "> </ i >
46+ < a href ="../../../index.html "> ChatGPT Python SDK</ a >
47+ </ nav >
48+
49+ < div class ="wy-nav-content ">
50+ < div class ="rst-content ">
51+ < div role ="navigation " aria-label ="Page navigation ">
52+ < ul class ="wy-breadcrumbs ">
53+ < li > < a href ="../../../index.html " class ="icon icon-home "> </ a > </ li >
54+ < li class ="breadcrumb-item "> < a href ="../../index.html "> Module code</ a > </ li >
55+ < li class ="breadcrumb-item active "> chatgpt.cli.custom_rich</ li >
56+ < li class ="wy-breadcrumbs-aside ">
57+ </ li >
58+ </ ul >
59+ < hr />
60+ </ div >
61+ < div role ="main " class ="document " itemscope ="itemscope " itemtype ="http://schema.org/Article ">
62+ < div itemprop ="articleBody ">
63+
64+ < h1 > Source code for chatgpt.cli.custom_rich</ h1 > < div class ="highlight "> < pre >
65+ < span > </ span > < span class ="kn "> from</ span > < span class ="nn "> typing</ span > < span class ="kn "> import</ span > < span class ="n "> Any</ span >
66+ < span class ="kn "> from</ span > < span class ="nn "> rich.markdown</ span > < span class ="kn "> import</ span > < span class ="n "> Markdown</ span >
67+ < span class ="kn "> from</ span > < span class ="nn "> rich.markdown</ span > < span class ="kn "> import</ span > < span class ="n "> CodeBlock</ span >
68+ < span class ="kn "> from</ span > < span class ="nn "> rich.console</ span > < span class ="kn "> import</ span > < span class ="n "> Console</ span > < span class ="p "> ,</ span > < span class ="n "> RenderResult</ span > < span class ="p "> ,</ span > < span class ="n "> ConsoleOptions</ span >
69+ < span class ="kn "> from</ span > < span class ="nn "> rich.syntax</ span > < span class ="kn "> import</ span > < span class ="n "> Syntax</ span >
70+ < span class ="kn "> from</ span > < span class ="nn "> rich.panel</ span > < span class ="kn "> import</ span > < span class ="n "> Panel</ span >
71+ < span class ="kn "> from</ span > < span class ="nn "> rich</ span > < span class ="kn "> import</ span > < span class ="n "> box</ span >
72+
73+
74+ < div class ="viewcode-block " id ="CustomCodeBlock "> < a class ="viewcode-back " href ="../../../chatgpt.cli.html#chatgpt.cli.custom_rich.CustomCodeBlock "> [docs]</ a > < span class ="k "> class</ span > < span class ="nc "> CustomCodeBlock</ span > < span class ="p "> (</ span > < span class ="n "> CodeBlock</ span > < span class ="p "> ):</ span >
75+ < span class ="sd "> """A code block with syntax highlighting."""</ span >
76+
77+ < span class ="n "> style_name</ span > < span class ="o "> =</ span > < span class ="s2 "> "markdown.code_block"</ span >
78+
79+ < div class ="viewcode-block " id ="CustomCodeBlock.create "> < a class ="viewcode-back " href ="../../../chatgpt.cli.html#chatgpt.cli.custom_rich.CustomCodeBlock.create "> [docs]</ a > < span class ="nd "> @classmethod</ span >
80+ < span class ="k "> def</ span > < span class ="nf "> create</ span > < span class ="p "> (</ span > < span class ="bp "> cls</ span > < span class ="p "> ,</ span > < span class ="n "> markdown</ span > < span class ="p "> :</ span > < span class ="s2 "> "Markdown"</ span > < span class ="p "> ,</ span > < span class ="n "> node</ span > < span class ="p "> :</ span > < span class ="n "> Any</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="s2 "> "CodeBlock"</ span > < span class ="p "> :</ span >
81+ < span class ="n "> node_info</ span > < span class ="o "> =</ span > < span class ="n "> node</ span > < span class ="o "> .</ span > < span class ="n "> info</ span > < span class ="ow "> or</ span > < span class ="s2 "> ""</ span >
82+ < span class ="n "> lexer_name</ span > < span class ="o "> =</ span > < span class ="n "> node_info</ span > < span class ="o "> .</ span > < span class ="n "> partition</ span > < span class ="p "> (</ span > < span class ="s2 "> " "</ span > < span class ="p "> )[</ span > < span class ="mi "> 0</ span > < span class ="p "> ]</ span >
83+ < span class ="k "> return</ span > < span class ="bp "> cls</ span > < span class ="p "> (</ span > < span class ="n "> lexer_name</ span > < span class ="ow "> or</ span > < span class ="s2 "> "default"</ span > < span class ="p "> ,</ span > < span class ="n "> markdown</ span > < span class ="o "> .</ span > < span class ="n "> code_theme</ span > < span class ="p "> )</ span > </ div >
84+
85+ < span class ="k "> def</ span > < span class ="fm "> __init__</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="p "> ,</ span > < span class ="n "> lexer_name</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="p "> ,</ span > < span class ="n "> theme</ span > < span class ="p "> :</ span > < span class ="nb "> str</ span > < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="kc "> None</ span > < span class ="p "> :</ span >
86+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> lexer_name</ span > < span class ="o "> =</ span > < span class ="n "> lexer_name</ span >
87+ < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> theme</ span > < span class ="o "> =</ span > < span class ="n "> theme</ span >
88+
89+ < span class ="k "> def</ span > < span class ="nf "> __rich_console__</ span > < span class ="p "> (</ span >
90+ < span class ="bp "> self</ span > < span class ="p "> ,</ span > < span class ="n "> console</ span > < span class ="p "> :</ span > < span class ="n "> Console</ span > < span class ="p "> ,</ span > < span class ="n "> options</ span > < span class ="p "> :</ span > < span class ="n "> ConsoleOptions</ span >
91+ < span class ="p "> )</ span > < span class ="o "> -></ span > < span class ="n "> RenderResult</ span > < span class ="p "> :</ span >
92+ < span class ="n "> code</ span > < span class ="o "> =</ span > < span class ="nb "> str</ span > < span class ="p "> (</ span > < span class ="bp "> self</ span > < span class ="o "> .</ span > < span class ="n "> text</ span > < span class ="p "> )</ span > < span class ="o "> .</ span > < span class ="n "> rstrip</ span > < span class ="p "> ()</ span >
93+ < span class ="n "> syntax</ span > < span class ="o "> =</ span > < span class ="n "> Panel</ span > < span class ="p "> (</ span >
94+ < span class ="n "> Syntax</ span > < span class ="p "> (</ span > < span class ="n "> code</ span > < span class ="p "> ,</ span >
95+ < span class ="s2 "> "python"</ span > < span class ="p "> ,</ span >
96+ < span class ="n "> theme</ span > < span class ="o "> =</ span > < span class ="s2 "> "gruvbox-dark"</ span > < span class ="p "> ,</ span >
97+ < span class ="c1 "> # background_color="default",</ span >
98+ < span class ="n "> word_wrap</ span > < span class ="o "> =</ span > < span class ="kc "> True</ span > < span class ="p "> ,</ span >
99+ < span class ="n "> padding</ span > < span class ="o "> =</ span > < span class ="mi "> 2</ span > < span class ="p "> ),</ span >
100+ < span class ="n "> border_style</ span > < span class ="o "> =</ span > < span class ="s2 "> "none"</ span > < span class ="p "> ,</ span >
101+ < span class ="n "> box</ span > < span class ="o "> =</ span > < span class ="n "> box</ span > < span class ="o "> .</ span > < span class ="n "> SIMPLE</ span > < span class ="p "> ,</ span >
102+ < span class ="n "> padding</ span > < span class ="o "> =</ span > < span class ="mi "> 0</ span >
103+ < span class ="p "> )</ span >
104+ < span class ="k "> yield</ span > < span class ="n "> syntax</ span > </ div >
105+ </ pre > </ div >
106+
107+ </ div >
108+ </ div >
109+ < footer >
110+
111+ < hr />
112+
113+ < div role ="contentinfo ">
114+ < p > © Copyright 2022, Rodrigo Martínez, Alejandro Suárez.</ p >
115+ </ div >
116+
117+ Built with < a href ="https://www.sphinx-doc.org/ "> Sphinx</ a > using a
118+ < a href ="https://github.com/readthedocs/sphinx_rtd_theme "> theme</ a >
119+ provided by < a href ="https://readthedocs.org "> Read the Docs</ a > .
120+
121+
122+ </ footer >
123+ </ div >
124+ </ div >
125+ </ section >
126+ </ div >
127+ < script >
128+ jQuery ( function ( ) {
129+ SphinxRtdTheme . Navigation . enable ( true ) ;
130+ } ) ;
131+ </ script >
132+
133+ </ body >
134+ </ html >
0 commit comments