テキストバッファ付きのテキストビューがあります。テキストバッファに多くのタグを追加しました
buffer.get_tag_table().add(tag)
だから私はテキストビューからすべてのテキストを取得し、それが持っているタグに従ってそれを分割する方法があるかどうか疑問に思いました
gtk2btwを使用しているim
ありがとう
バッファーの先頭にあるイテレーターから開始し、。を使用してバッファー内を移動しit.forward_to_tag_toggle()
ます。各時点で、it.get_tags()
テキストの現在のチャンクに適用されるタグのリストが表示されbuf.get_text(it, next_it)
、テキスト自体が表示されます。
def split(buf):
it = buf.get_start_iter()
while not it.is_end():
nextpos = it.copy()
nextpos.forward_to_tag_toggle(None)
yield buf.get_text(it, nextpos), it.get_tags()
it = nextpos