問題タブ [gtksourceview]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - gtksourceview でのコードの折り畳み
https://live.gnome.org/GtkSourceViewで、gtk+ 2.8 を使用して「GtkSourceView でコードの折りたたみをサポートできるようになりました」と表示されます。しかし、どこにも例が見つかりません。使用する準備はできていますか?ボールを転がすために提供できる例はありますか?
私はバグ レポートを読み、Bijan Binaee に支援を申し出るために電子メールを送りましたが、何の見返りもありませんでした。誰にも洞察がありますか?ありがとう。
python - GTK3 SourceView による構文強調表示
GtkSourceView
GTK3を使用する際に構文の強調表示を有効にするにはどうすればよいですか? 以下のコードが機能しません。
エラーを与える:
AttributeError: 'TextBuffer' オブジェクトに属性 'set_language' がありません
python - GtkSourceView Scroll to Line with Gobject Introspection [python]
GobjectIntrospectionを使用してPythonGTKアプリケーションを正常に作成し、GTKSourceViewウィジェットでソースファイルを開きました。
ユーザーがボタンをクリックしたときに、スクロールして特定の行(行150)を画面の中央に配置しようとしています。
gtktextview / gtksourceviewの特定の行に(プログラムで)スクロールする方法を読みました
また、GtkSourceViews、GTKTextView、およびこれら両方のバッファオブジェクトを取り巻くドキュメント(ソースビューがテキストビューから継承することは私の理解です)
私は次の方法を使おうとしました:
-150行目でイテレータを取得してからscroll_to_iter()メソッドを使用します-150行目でイテレータを取得し、イテレータでマークを付けてから、scroll_to_mark()メソッドを使用します
place_cursor(iter)メソッドを正常に使用でき、150行目の終わりにマーカーを正常に配置できるため、イテレーターとマークが正しいことはわかっていますが、マークまでスクロールするか、指定されたメソッドを使用するイテレーターは何もしません。
マークへのスクロールメソッドは値を返しませんが、イテレータメソッドはfalseを返します。
誰かがこれを達成する方法を提案できますか?
私のテストコードは次のとおりです。
python - gtksource.view で検索して強調表示しますか?
Gedit は検索の強調表示を使用します。Gedit が gtksourceview を使用していることは承知しており、その検索メカニズムがどのように実現されているのか疑問に思っています。
regex - GtkSourceView 言語仕様で数字をオプションの文字サフィックスと一致させるにはどうすればよいですか?
私は新しい GtkSourceView 言語仕様を書いています。チュートリアルや他のインターネット リソースにある情報に従ってください。私が定義している言語は、次のように数字を取ることができます:
- 1 つ以上の
digit
文字- 必要に応じて (末尾などに) 文字
L
、l
、N
、またはを追加しn
ます。
例:
これは考えられる数少ない定義の 1 つにすぎないことに注意してください。
これまでのところ、私は書いてきました(おおよそ(定義の他の部分は省略)):
私はそれを次のように解釈します: _Anumber
は 1 つ以上の数字文字で始まり、オプションで次のいずれかが続きます: N
n
l
L
、数字以外の数字 (スペース、文字など) に遭遇すると終了します。
残念ながら、指定された文字 (またはその問題の任意の文字) を追加すると失敗するため、これはうまく機能しません (このコンテキストでは、それはハイライトしないことを意味します)。
このパターンを一致させる方法についてのアイデアはありますか? 前もって感謝します!:)
xml - GtkSourceView で重複パターンを使用する
GtkSourceView 3 XML 言語ファイルで重複するパターンを指定する方法があるかどうかは誰にもわかりませんか? たとえば、以下のテキストで、fooとbarの間の「some text...」をある色で強調表示し、 barとbazの間の「some more text...」を別の色で強調表示する方法はありますか? ここでの問題は、barが 1 つのコンテキストの終わりであり、別のコンテキストの開始でもあることです。つまり、bar-bazコンテキストは決して適用されません。
regex - gtksourceviewキーワードのエスケープ
私の言語では、キーワードはリテラルな#list-empty?
ので、これと照合したいと思います。構文の強調表示を提供するためにgtksourceviewを使用しており、次の定義を使用しています
<keyword>list-empty?</keyword>
ただし、これはandと一致list-empt
しますlist-empty
(リテラルではありませんlist-empty?
)。これは、gktsourceviewが含まれているもの<keyword>
を正規表現として扱うことを示しています。?
だから私はそれを脱出して文字通り一致させたいと思います。ただし、次のようなもの<keyword>list-empty\?<keyword>
はまったく機能しません。
https://github.com/espringe/wisp/blob/bf1aed13/resources/wisp.lang#L67
だから私はどのように脱出し、?
それと一致するのですか?
gtk - gtksourceview undo、予想以上に元に戻す
私はテキスト エディターを書いていますが、gtksourceview と undo について理解していないようです。各呼び出しで単一の操作を元に戻す操作を元に戻したいのですが、それ以上のことをしたいようです。
次に例を示します。
次の 2 行を入力します。
最初の行
二行目
次に、上に移動して最初に「r」を削除し、次にctrl + zを押して元に戻します。これはどのような結果ですか:
最初の行
2番目
ドキュメントには次のように記載されています。
アクションは、gtk_text_buffer_begin_user_action() と gtk_text_buffer_end_user_action() への呼び出しの間の操作のグループ、または同じ行の同様の編集 (挿入または削除) のシーケンスとして定義されます。
「r」の復元と「行」という単語の削除が「同じ行での同様の編集 (挿入または削除)」であることがわかりません。
元に戻すボタンを押すのは非常に混乱し、やり直しボタンを押すことを覚えておく必要があります。他のエディターはこのように行動しないので、実装が間違っているのでしょうか?
これが私の元に戻すコードです: GtkSourceBuffer *sbuffer;
gtk - gtksourceview-3.0 で gtk_source_iter_forward_search に何が起こったのか
GtkSourceView 3 Reference Manualを見て、しばらくグーグルで検索しましたが、gtk_source_iter_forward_search が gtksourceview から削除された理由や、代わりに何を使用すべきかについての言及が見つかりません。
また、機能として一覧表示されている gtksourceview Web サイトの機能リンクも確認しました: Caseless UTF-8 準拠の検索。
gedit のソース バージョン 3.2.6 を見てきましたが (gtksourceview を使用していることはわかっているため)、gedit_document_search_forward を使用しているようです。これは、他のライブラリからのものであると推測しています。私の質問は、gtksourceview の検索機能はどうなったのですか? gtk_source_iter_forward_search と同様の機能を提供する別のライブラリはありますか、それとも gtksourceview 内で別の方法で行われていますか?
私はもともと gtksourceview-2.0 でエディターを書きましたが、現在は gtksourceview-3.0 を使用して書き直しており、gtk_source_iter_forward_search 関数に基づく確立された前方検索関数を持っています。
ありがとう。