小编Fel*_*lix的帖子

Sublime text:如何获取当前视图的文件名

我正在尝试编写一个小插件来删除当前文件并关闭活动视图.出于某种原因,self.view.file_name()始终返回None.

我是Python的新手,我不知道为什么它不能像这样工作.根据API参考 file_name()返回当前视图的文件名.

import sublime, sublime_plugin, send2trash

class DeleteCurrentFileCommand(sublime_plugin.TextCommand):
    def run(self, edit):        
        f = self.view.file_name()
        if (f is None):
            return

        send2trash.send2trash(f)
        self.view.window().run_command('close')
Run Code Online (Sandbox Code Playgroud)

dir的输出(self.view):

[' class ',' delattr ',' dict ',' doc ',' format ',' getattribute ',' hash ',' init ',' len ',' module ',' new ',' reduce ',' reduce_ex ',' repr ',' setattr ',' sizeof ',' str ',' subclasshook ',' weakref','add_regions','begin_edit','buffer_id','classify','command_history','em_width','encoding','end_edit','erase','erase_regions','erase_status','extract_completions', 'extract_scope','file_name','find','find_all','find_all_results','find_by_selector','fold','folded_regions','full_line','get_regions','get_status','get_symbols','has_non_empty_selection_region ','id','indentation_level','indented_region','insert','is_dirty','is_folded','is_loading','is_read_only','is_scratch','layout_extent','layout_to_text','line', "line_endings','line_height','lines','match_selector','meta_info','name','replace','retarget','rowcol','run_command','scope_name','score_selector','sel' ,'set_encoding','set_line_endings','set_name','set_read_only','set_scratch','set_status','set_syntax_file','set_viewport_position','settings','show','show_at_center','size',' split_by_newlines','substr','syntax_name','text_point','text_to_layout','展开','viewport_extent','viewport_position','visible_region','window','word']match_selector','meta_info','name','replace','retarget','rowcol','run_command','scope_name','score_selector','sel','set_encoding','set_line_endings','set_name' ,'set_read_only','set_scratch','set_status','set_syntax_file','set_viewport_position','settings','show','show_at_center','size','split_by_newlines','substr','syntax_name',' text_point','text_to_layout','展开','viewport_extent','viewport_position','visible_region','window','word']match_selector','meta_info','name','replace','retarget','rowcol','run_command','scope_name','score_selector','sel','set_encoding','set_line_endings','set_name' ,'set_read_only','set_scratch','set_status','set_syntax_file','set_viewport_position','settings','show','show_at_center','size','split_by_newlines','substr','syntax_name',' text_point','text_to_layout','展开','viewport_extent','viewport_position','visible_region','window','word']run_command','scope_name','score_selector','sel','set_encoding','set_line_endings','set_name','set_read_only','set_scratch','set_status','set_syntax_file','set_viewport_position','settings' ,'show','show_at_center','size','split_by_newlines','substr','syntax_name','text_point','text_to_layout','展开','viewport_extent','viewport_position','visible_region',' window','word']run_command','scope_name','score_selector','sel','set_encoding','set_line_endings','set_name','set_read_only','set_scratch','set_status','set_syntax_file','set_viewport_position','settings' ,'show','show_at_center','size','split_by_newlines','substr','syntax_name','text_point','text_to_layout','展开','viewport_extent','viewport_position','visible_region',' window','word']set_viewport_position','settings','show','show_at_center','size','split_by_newlines','substr','syntax_name','text_point','text_to_layout','展开','viewport_extent','viewport_position' ,'visible_region','window','word']set_viewport_position','settings','show','show_at_center','size','split_by_newlines','substr','syntax_name','text_point','text_to_layout','展开','viewport_extent','viewport_position' ,'visible_region','window','word']

python plugins filenames delete-file sublimetext2

10
推荐指数
1
解决办法
3200
查看次数

标签 统计

delete-file ×1

filenames ×1

plugins ×1

python ×1

sublimetext2 ×1