Latest posts on Gtk, TextView и строки. Как вывести? topichttps://python.su/forum/topic/39288/2020-08-04T04:17:35+03:00Общий :: GUI :: Gtk, TextView и строки. Как вывести?
2020-08-04T04:17:35+03:00delvin-fil211530Вопрос решен!<br/>Изменил строку 23. Убрал <strong>is_detail_result=True,</strong> и все заработало.<br/><div class="code"><pre> <span class="kn">import</span> <span class="nn">translators</span> <span class="kn">as</span> <span class="nn">ts</span>
<span class="kn">from</span> <span class="nn">langdetect</span> <span class="kn">import</span> <span class="n">detect</span>
<span class="kn">from</span> <span class="nn">textblob</span> <span class="kn">import</span> <span class="n">TextBlob</span>
<span class="kn">import</span> <span class="nn">os</span>
<span class="kn">import</span> <span class="nn">gi</span>
<span class="n">gi</span><span class="o">.</span><span class="n">require_version</span><span class="p">(</span><span class="s1">'Gtk'</span><span class="p">,</span> <span class="s1">'3.0'</span><span class="p">)</span>
<span class="kn">from</span> <span class="nn">gi.repository</span> <span class="kn">import</span> <span class="n">Gtk</span>
<span class="kn">from</span> <span class="nn">gi.repository</span> <span class="kn">import</span> <span class="n">Gdk</span>
<span class="kn">from</span> <span class="nn">gi.repository</span> <span class="kn">import</span> <span class="n">Pango</span>
<span class="n">CURRDIR</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">abspath</span><span class="p">(</span><span class="vm">__file__</span><span class="p">))</span>
<span class="n">ICON</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">CURRDIR</span><span class="p">,</span> <span class="s1">'unnamed.png'</span><span class="p">)</span>
<span class="k">print</span><span class="p">(</span><span class="n">ICON</span><span class="p">)</span>
<span class="n">intext</span> <span class="o">=</span> <span class="s2">"A comma-separated list of keyboard layouts. A layout may be enclosed in double quotes. Each layout is a name with optional arguments, which is to be parsed by the setxkbmap program. To support changing keyboard layouts, the setxkbmap program must be installed. The first in the list is the default layout. Programs may have their own keyboard layout defined in the winoptions file. The first two letters of a layout are used to locate an icon image file."</span>
<span class="n">dettext</span> <span class="o">=</span> <span class="n">detect</span><span class="p">(</span><span class="n">intext</span><span class="p">)</span>
<span class="k">if</span> <span class="n">dettext</span> <span class="o">==</span> <span class="s1">'ru'</span><span class="p">:</span>
<span class="n">langout</span> <span class="o">=</span> <span class="s1">'en'</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">langout</span> <span class="o">=</span> <span class="s1">'ru'</span>
<span class="n">blob</span> <span class="o">=</span> <span class="n">TextBlob</span><span class="p">(</span><span class="n">intext</span><span class="p">)</span>
<span class="n">number</span> <span class="o">=</span> <span class="nb">len</span><span class="p">((</span><span class="n">blob</span><span class="o">.</span><span class="n">sentences</span><span class="p">))</span>
<span class="k">print</span><span class="p">(</span><span class="n">number</span><span class="p">)</span>
<span class="n">outtext</span> <span class="o">=</span> <span class="n">ts</span><span class="o">.</span><span class="n">google</span><span class="p">(</span><span class="n">intext</span><span class="p">,</span>
<span class="n">to_language</span><span class="o">=</span><span class="n">langout</span><span class="p">,</span>
<span class="n">if_use_cn_host</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
<span class="k">print</span><span class="p">(</span><span class="n">f</span><span class="s2">"{dettext}-{langout}</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span>
<span class="k">print</span> <span class="p">(</span><span class="n">outtext</span><span class="p">)</span>
<span class="k">class</span> <span class="nc">TextViewWindow</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">Window</span><span class="p">):</span>
<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">Gtk</span><span class="o">.</span><span class="n">Window</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">title</span><span class="o">=</span><span class="n">f</span><span class="s2">"Translate {dettext}-{langout}"</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">set_default_size</span><span class="p">(</span><span class="mi">1000</span><span class="p">,</span> <span class="mi">350</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">set_position</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">WindowPosition</span><span class="o">.</span><span class="n">CENTER_ALWAYS</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">grid</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">Grid</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">create_textview</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">create_toolbar</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">key_Esc</span> <span class="o">=</span> <span class="n">Gdk</span><span class="o">.</span><span class="n">keyval_from_name</span><span class="p">(</span><span class="s2">"Escape"</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"key-press-event"</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_key</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">create_toolbar</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="n">toolbar</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">Toolbar</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">grid</span><span class="o">.</span><span class="n">attach</span><span class="p">(</span><span class="n">toolbar</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="n">new_button</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">ToolButton</span><span class="o">.</span><span class="n">new_from_stock</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">STOCK_CLOSE</span><span class="p">)</span>
<span class="n">new_button</span><span class="o">.</span><span class="n">set_is_important</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
<span class="n">toolbar</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span><span class="n">new_button</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">new_button</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"clicked"</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_button_clicked</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">tag_bold</span><span class="p">)</span>
<span class="n">new_button</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
<span class="k">def</span> <span class="nf">on_button_clicked</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">widget</span><span class="p">,</span> <span class="n">tag</span><span class="p">):</span>
<span class="n">Gtk</span><span class="o">.</span><span class="n">main_quit</span><span class="p">()</span>
<span class="k">def</span> <span class="nf">create_textview</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="n">scrolledwindow</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">ScrolledWindow</span><span class="p">()</span>
<span class="n">scrolledwindow</span><span class="o">.</span><span class="n">set_hexpand</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
<span class="n">scrolledwindow</span><span class="o">.</span><span class="n">set_vexpand</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">grid</span><span class="o">.</span><span class="n">attach</span><span class="p">(</span><span class="n">scrolledwindow</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textview</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">TextView</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textbuffer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="o">.</span><span class="n">get_buffer</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textbuffer</span><span class="o">.</span><span class="n">set_text</span><span class="p">(</span><span class="n">f</span><span class="s2">"{outtext}"</span><span class="p">)</span>
<span class="n">scrolledwindow</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="o">.</span><span class="n">set_wrap_mode</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">WrapMode</span><span class="o">.</span><span class="n">WORD</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">tag_bold</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">textbuffer</span><span class="o">.</span><span class="n">create_tag</span><span class="p">(</span><span class="s2">"bold"</span><span class="p">,</span>
<span class="n">weight</span><span class="o">=</span><span class="n">Pango</span><span class="o">.</span><span class="n">Weight</span><span class="o">.</span><span class="n">BOLD</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="o">.</span><span class="n">modify_font</span><span class="p">(</span><span class="n">Pango</span><span class="o">.</span><span class="n">FontDescription</span><span class="p">(</span><span class="s1">'Menlo Regular 24'</span><span class="p">))</span>
<span class="k">def</span> <span class="nf">_key</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">widg</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
<span class="k">if</span> <span class="n">event</span><span class="o">.</span><span class="n">keyval</span> <span class="o">==</span> <span class="bp">self</span><span class="o">.</span><span class="n">key_Esc</span><span class="p">:</span>
<span class="n">Gtk</span><span class="o">.</span><span class="n">main_quit</span><span class="p">()</span>
<span class="n">win</span> <span class="o">=</span> <span class="n">TextViewWindow</span><span class="p">()</span>
<span class="n">win</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"destroy"</span><span class="p">,</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">main_quit</span><span class="p">)</span>
<span class="n">win</span><span class="o">.</span><span class="n">set_icon_from_file</span><span class="p">(</span><span class="n">ICON</span><span class="p">)</span>
<span class="n">win</span><span class="o">.</span><span class="n">show_all</span><span class="p">()</span>
<span class="n">Gtk</span><span class="o">.</span><span class="n">main</span><span class="p">()</span>
</pre></div><br/><img src="https://www.cyberforum.ru/attachments/1170631d1596503650"></img>
Общий :: GUI :: Gtk, TextView и строки. Как вывести?
2020-08-01T03:53:51+03:00delvin-fil211486Приветствую всех.<br/>Есть код<br/><div class="code"><pre> <span class="kn">import</span> <span class="nn">os</span>
<span class="kn">import</span> <span class="nn">translators</span> <span class="kn">as</span> <span class="nn">ts</span>
<span class="kn">from</span> <span class="nn">langdetect</span> <span class="kn">import</span> <span class="n">detect</span>
<span class="kn">from</span> <span class="nn">textblob</span> <span class="kn">import</span> <span class="n">TextBlob</span>
<span class="kn">import</span> <span class="nn">gi</span>
<span class="n">gi</span><span class="o">.</span><span class="n">require_version</span><span class="p">(</span><span class="s1">'Gtk'</span><span class="p">,</span> <span class="s1">'3.0'</span><span class="p">)</span>
<span class="kn">from</span> <span class="nn">gi.repository</span> <span class="kn">import</span> <span class="n">Gtk</span>
<span class="kn">from</span> <span class="nn">gi.repository</span> <span class="kn">import</span> <span class="n">Gdk</span>
<span class="kn">from</span> <span class="nn">gi.repository</span> <span class="kn">import</span> <span class="n">Pango</span>
<span class="n">CURRDIR</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">dirname</span><span class="p">(</span><span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">abspath</span><span class="p">(</span><span class="vm">__file__</span><span class="p">))</span>
<span class="n">ICON</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">path</span><span class="o">.</span><span class="n">join</span><span class="p">(</span><span class="n">CURRDIR</span><span class="p">,</span> <span class="s1">'icon.xpm'</span><span class="p">)</span>
<span class="n">intext</span> <span class="o">=</span> <span class="s2">"A Gtk.TextView displays the text stored in a Gtk.TextBuffer. However, most text manipulation is accomplished with iterators, represented by a Gtk.TextIter - a position between two characters in the text buffer. Iterators are not valid indefinitely; whenever the buffer is modified in a way that affects the contents of the buffer, all outstanding iterators become invalid. Because of this, iterators can’t be used to preserve positions across buffer modifications. To preserve a position, we use a Gtk.TextMark, that can be set visible with visible(True). A text buffer contains two built-in marks; an </span><span class="se">\"</span><span class="s2">insert</span><span class="se">\"</span><span class="s2"> mark (the position of the cursor) and the </span><span class="se">\"</span><span class="s2">selection_bound</span><span class="se">\"</span><span class="s2"> mark."</span>
<span class="n">dettext</span> <span class="o">=</span> <span class="n">detect</span><span class="p">(</span><span class="n">intext</span><span class="p">)</span>
<span class="k">if</span> <span class="n">dettext</span> <span class="o">==</span> <span class="s1">'ru'</span><span class="p">:</span>
<span class="n">langout</span> <span class="o">=</span> <span class="s1">'en'</span>
<span class="k">else</span><span class="p">:</span>
<span class="n">langout</span> <span class="o">=</span> <span class="s1">'ru'</span>
<span class="n">blob</span> <span class="o">=</span> <span class="n">TextBlob</span><span class="p">(</span><span class="n">intext</span><span class="p">)</span>
<span class="n">number</span> <span class="o">=</span> <span class="nb">len</span><span class="p">((</span><span class="n">blob</span><span class="o">.</span><span class="n">sentences</span><span class="p">))</span>
<span class="k">print</span><span class="p">(</span><span class="n">number</span><span class="p">)</span>
<span class="n">outtext</span> <span class="o">=</span> <span class="n">ts</span><span class="o">.</span><span class="n">google</span><span class="p">(</span><span class="n">intext</span><span class="p">,</span>
<span class="n">to_language</span><span class="o">=</span><span class="n">langout</span><span class="p">,</span>
<span class="n">is_detail_result</span><span class="o">=</span><span class="bp">True</span><span class="p">,</span>
<span class="n">if_use_cn_host</span><span class="o">=</span><span class="bp">True</span><span class="p">)</span>
<span class="k">print</span><span class="p">(</span><span class="n">f</span><span class="s2">"{dettext}-{langout}</span><span class="se">\n</span><span class="s2">"</span><span class="p">)</span>
<span class="n">i</span> <span class="o">=</span> <span class="mi">0</span>
<span class="k">while</span> <span class="n">i</span> <span class="o"><</span> <span class="n">number</span><span class="p">:</span>
<span class="n">out</span> <span class="o">=</span> <span class="n">outtext</span><span class="p">[</span><span class="mi">0</span><span class="p">][</span><span class="n">i</span><span class="p">][</span><span class="mi">0</span><span class="p">]</span>
<span class="k">print</span><span class="p">(</span><span class="n">out</span><span class="p">)</span>
<span class="n">i</span> <span class="o">+=</span> <span class="mi">1</span>
<span class="k">class</span> <span class="nc">TextViewWindow</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">Window</span><span class="p">):</span>
<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">Gtk</span><span class="o">.</span><span class="n">Window</span><span class="o">.</span><span class="fm">__init__</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">title</span><span class="o">=</span><span class="n">f</span><span class="s2">"Translate {dettext}-{langout}"</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">set_default_size</span><span class="p">(</span><span class="mi">1000</span><span class="p">,</span> <span class="mi">350</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">set_position</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">WindowPosition</span><span class="o">.</span><span class="n">CENTER_ALWAYS</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">grid</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">Grid</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">grid</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">create_textview</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">create_toolbar</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">key_Esc</span> <span class="o">=</span> <span class="n">Gdk</span><span class="o">.</span><span class="n">keyval_from_name</span><span class="p">(</span><span class="s2">"Escape"</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"key-press-event"</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">_key</span><span class="p">)</span>
<span class="k">def</span> <span class="nf">create_toolbar</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="n">toolbar</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">Toolbar</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">grid</span><span class="o">.</span><span class="n">attach</span><span class="p">(</span><span class="n">toolbar</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="n">new_button</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">ToolButton</span><span class="o">.</span><span class="n">new_from_stock</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">STOCK_CLOSE</span><span class="p">)</span>
<span class="n">new_button</span><span class="o">.</span><span class="n">set_is_important</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
<span class="n">toolbar</span><span class="o">.</span><span class="n">insert</span><span class="p">(</span><span class="n">new_button</span><span class="p">,</span> <span class="mi">0</span><span class="p">)</span>
<span class="n">new_button</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"clicked"</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">on_button_clicked</span><span class="p">,</span> <span class="bp">self</span><span class="o">.</span><span class="n">tag_bold</span><span class="p">)</span>
<span class="n">new_button</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
<span class="k">def</span> <span class="nf">on_button_clicked</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">widget</span><span class="p">,</span> <span class="n">tag</span><span class="p">):</span>
<span class="n">Gtk</span><span class="o">.</span><span class="n">main_quit</span><span class="p">()</span>
<span class="k">def</span> <span class="nf">create_textview</span><span class="p">(</span><span class="bp">self</span><span class="p">):</span>
<span class="n">scrolledwindow</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">ScrolledWindow</span><span class="p">()</span>
<span class="n">scrolledwindow</span><span class="o">.</span><span class="n">set_hexpand</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
<span class="n">scrolledwindow</span><span class="o">.</span><span class="n">set_vexpand</span><span class="p">(</span><span class="bp">True</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">grid</span><span class="o">.</span><span class="n">attach</span><span class="p">(</span><span class="n">scrolledwindow</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">0</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">1</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textview</span> <span class="o">=</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">TextView</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textbuffer</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="o">.</span><span class="n">get_buffer</span><span class="p">()</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textbuffer</span><span class="o">.</span><span class="n">set_text</span><span class="p">(</span><span class="n">f</span><span class="s2">"{out}"</span><span class="p">)</span>
<span class="n">scrolledwindow</span><span class="o">.</span><span class="n">add</span><span class="p">(</span><span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="o">.</span><span class="n">set_wrap_mode</span><span class="p">(</span><span class="n">Gtk</span><span class="o">.</span><span class="n">WrapMode</span><span class="o">.</span><span class="n">WORD</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">tag_bold</span> <span class="o">=</span> <span class="bp">self</span><span class="o">.</span><span class="n">textbuffer</span><span class="o">.</span><span class="n">create_tag</span><span class="p">(</span><span class="s2">"bold"</span><span class="p">,</span>
<span class="n">weight</span><span class="o">=</span><span class="n">Pango</span><span class="o">.</span><span class="n">Weight</span><span class="o">.</span><span class="n">BOLD</span><span class="p">)</span>
<span class="bp">self</span><span class="o">.</span><span class="n">textview</span><span class="o">.</span><span class="n">modify_font</span><span class="p">(</span><span class="n">Pango</span><span class="o">.</span><span class="n">FontDescription</span><span class="p">(</span><span class="s1">'Menlo Regular 24'</span><span class="p">))</span>
<span class="k">def</span> <span class="nf">_key</span><span class="p">(</span><span class="bp">self</span><span class="p">,</span> <span class="n">widg</span><span class="p">,</span> <span class="n">event</span><span class="p">):</span>
<span class="k">if</span> <span class="n">event</span><span class="o">.</span><span class="n">keyval</span> <span class="o">==</span> <span class="bp">self</span><span class="o">.</span><span class="n">key_Esc</span><span class="p">:</span>
<span class="n">Gtk</span><span class="o">.</span><span class="n">main_quit</span><span class="p">()</span>
<span class="n">win</span> <span class="o">=</span> <span class="n">TextViewWindow</span><span class="p">()</span>
<span class="n">win</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="s2">"destroy"</span><span class="p">,</span> <span class="n">Gtk</span><span class="o">.</span><span class="n">main_quit</span><span class="p">)</span>
<span class="n">win</span><span class="o">.</span><span class="n">set_icon_from_file</span><span class="p">(</span><span class="n">ICON</span><span class="p">)</span>
<span class="n">win</span><span class="o">.</span><span class="n">show_all</span><span class="p">()</span>
<span class="n">Gtk</span><span class="o">.</span><span class="n">main</span><span class="p">()</span>
</pre></div><img src="https://habrastorage.org/webt/5f/24/bc/5f24bc607c56b652123093.png"></img><br/>Выхлоп print(out) идет с разбиением на абзацы по предложениям(почему?). Естественно, Gtk.TextView() выводит только последний.<br/>Как исправить? (не смог сформулировать вопрос для гугла)<br/>Заранее спасибо!<br/>