我写了一个 Gedit 插件代码,可以打开另一个文件,
self.window.create_tab_from_location(Gio.file_new_for_path(file_path),
None, line_number, 0, False, True)
现在,在单独的选项卡中打开文件后,我想访问它的缓冲区。为此,我编写了以下代码
view = self.window.get_active_view()
buffer = view.get_buffer()
不知何故,我无法访问缓冲区。
我从终端打开了 Gedit,因此我尝试在打开新文件之前和之后打印视图对象的值,并得到了以下值:
pallab@pallab:~$ gedit
<View object at 0x7ff6965d4120 (GeditView at 0x22ee3f0)>
<View object at 0x7ff696560ab0 (GeditView at 0x22ee700)>
第一个结果是在窗口.create_tab_from_location被处决,第二次也在那之后。
之后我尝试打印缓冲区。因此,我添加了另一行
view = self.window.get_active_view()
buffer = view.get_buffer()
print (buffer.get_text(buffer.get_start_iter(), buffer.get_end_iter(), False)
但是,它没有打印任何东西。
那么,我如何访问这个新文件的缓冲区?
操作系统:Ubuntu 14.04 LTS
Gedit 版本:3.10.4