headcache.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:headcache 作者: s9w 项目源码 文件源码
def file_modified(self, filename):
        # modified event is sometimes fired twice. prevent trouble
        if filename not in self.data:
            self.file_added(filename)
        title_old = self.data[filename]["title"]

        try:
            self.data[filename] = self.load_file(filename)
        except BadFormatError as e:
            print(e)
            self.file_deleted(filename)
            return
        title_new = self.data[filename]["title"]

        # change title in file list if changed
        if title_old and title_new != title_old:
            found_items = self.list1.findItems(filename, Qt.MatchExactly)
            if len(found_items) != 1:
                raise RuntimeError("file_modified(fn={}}): {} found items".format(filename, len(found_items)))
            self.list1.itemWidget(found_items[0]).label_title.setText(title_new)


        # update part list if active file was changed
        if self.list1.currentItem().text() == filename:
            old_index = self.list_parts.currentRow()
            self.update_part_list(filename)
            self.list_parts.setCurrentRow(old_index)


        # update index
        writer = self.ix.writer()
        deleted_count = writer.delete_by_term("path", filename)

        topic = self.data[filename]
        for part in topic["content"]:
            writer.add_document(
                title="",
                _stored_title=part["title"],
                content=part["content"],
                time=topic["time"],
                path=filename
            )
            writer.add_document(
                title=part["title"],
                time=topic["time"],
                path=filename
            )
        writer.commit()
        self.searcher = self.ix.searcher()
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号