コード例 #1
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def parse(self, line):
     for t in maybe(self._match_last_line(line)):
         self._extra_line(t)
         return self.finish()
     for t in maybe(self._match_line(line)):
         self._extra_line(t)
         return self
     return self.finish()
コード例 #2
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def parse(self, line):
     for (t, filename, lineno) in maybe(self._match_last_line(line)):
         self._extra_line(t)
         self.filename = filename
         self.lineno = lineno
         return self.finish()
     for t in maybe(self._match_line(line)):
         self._extra_line(t)
         return self
     return self.finish()
コード例 #3
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def start(cls, project, line):
     for m in maybe(re.match(r'\[(?:error|info)\]\s+(.+)\s+\(([^:]+):(\d+)\)$', line)):
         yield cls(project,
                   line=line,
                   filename=m.group(2),
                   lineno=int(m.group(3)),
                   message=m.group(1))
コード例 #4
0
ファイル: errormarker.py プロジェクト: coltfred/SublimeSBT
 def mark_errors_in(self, filename):
     for errors in maybe(self._error_report.sorted_errors_in(filename)):
         for view in self._file_views(filename):
             if view.is_dirty():
                 self._highlighter.clear(view)
             else:
                 self._highlighter.highlight(view, errors, replace=True)
コード例 #5
0
ファイル: errorreport.py プロジェクト: qiemem/SublimeSBT
    def sorted_errors_in(self, filename):
        def sort_errors(errors):
            for line in sorted(errors.keys()):
                for error in sorted(errors[line], key=lambda e: e.error_type):
                    yield error

        for errors in maybe(self.errors_in(filename)):
            return list(sort_errors(errors))
コード例 #6
0
    def sorted_errors_in(self, filename):
        def sort_errors(errors):
            for line in sorted(errors.keys()):
                for error in sorted(errors[line], key=lambda e: e.error_type):
                    yield error

        for errors in maybe(self.errors_in(filename)):
            return list(sort_errors(errors))
コード例 #7
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def start(cls, project, line):
     for m in maybe(re.match(r'^\[(error|warn)\]\s+(.+?):(\d+):(?:(\d+):)?\s+(.+)$', line)):
         yield cls(project,
                   line=line,
                   label=m.group(1),
                   filename=m.group(2),
                   lineno=int(m.group(3)),
                   message=m.group(5))
コード例 #8
0
 def _bookmark_error(self, view):
     for error in maybe(self._current_error_in_view(view)):
         region = self._create_region(view, error.line)
         self._clear_highlight(view, region)
         view.add_regions(self.bookmark_key, [region],
                          self.region_scope(error.error_type),
                          *self._bookmark_args(error.error_type))
         return error.line
コード例 #9
0
 def _bookmark_error(self, view):
     for error in maybe(self._current_error_in_view(view)):
         region = self._create_region(view, error.line)
         self._clear_highlight(view, region)
         view.add_regions(self.bookmark_key,
                          [region],
                          self.region_scope(error.error_type),
                          *self._bookmark_args(error.error_type))
         return error.line
コード例 #10
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def start(cls, project, line):
     for m in maybe(re.match(r'\[info\] - (.+) \*\*\* FAILED \*\*\*$', line)):
         yield cls(project,
                   line=line,
                   message=m.group(1))
コード例 #11
0
ファイル: errorreport.py プロジェクト: laughedelic/SublimeSBT
 def error_lines_in(self, filename):
     for errors in maybe(self.errors_in(filename)):
         return sorted(errors.keys())
コード例 #12
0
ファイル: sbtview.py プロジェクト: evaldobratti/SublimeSBT
 def is_sbt_view(cls, view):
     if view is not None:
         for window in maybe(view.window()):
             sbt_view = cls(window)
             return sbt_view.panel.id() == view.id()
コード例 #13
0
ファイル: sbtsettings.py プロジェクト: laughedelic/SublimeSBT
 def _view_settings(self):
     for view in maybe(self.window.active_view()):
         return view.settings().get('SublimeSBT', {})
     return {}
コード例 #14
0
ファイル: sublimesbt.py プロジェクト: otwebti/SublimeSBT
 def _reporter(self, view):
     for window in maybe(view.window()):
         return Project(window).error_reporter
コード例 #15
0
ファイル: sublimesbt.py プロジェクト: otwebti/SublimeSBT
 def on_post_save(self, view):
     for reporter in maybe(self._reporter(view)):
         reporter.hide_errors_in(view.file_name())
コード例 #16
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def _match_line(self, line):
     for m in maybe(re.match(r'\[info\] (.*)$', line)):
         return m.group(1)
コード例 #17
0
ファイル: allPythonContent.py プロジェクト: Mondego/pyreco
 def is_play_project(self):
     for root in maybe(self.project_root()):
         if self._play_build_files(root):
             return True
コード例 #18
0
ファイル: errormarker.py プロジェクト: laughedelic/SublimeSBT
 def update_status(self):
     for view in maybe(self._window.active_view()):
         error = self._line_error(self._window.active_view())
         self._highlighter.set_status_message(view, error)
コード例 #19
0
ファイル: errormarker.py プロジェクト: qiemem/SublimeSBT
 def _status_message(self, view):
     for errors in maybe(self._line_errors(view)):
         return '(%s)' % ')('.join([e.message for e in errors])
コード例 #20
0
ファイル: errormarker.py プロジェクト: qiemem/SublimeSBT
 def update_status_now(self):
     for view in maybe(self._window.active_view()):
         self._highlighter.set_status_message(view, self._status_message(view))
コード例 #21
0
ファイル: errorreport.py プロジェクト: inkytonik/SublimeSBT
 def current_error_in(self, filename):
     for error in maybe(self.current_error):
         if error.filename == filename:
             return error
コード例 #22
0
 def errors_at(self, filename, line):
     for errors in maybe(self.errors_in(filename)):
         return errors.get(line)
コード例 #23
0
ファイル: sublimesbt.py プロジェクト: otwebti/SublimeSBT
 def on_selection_modified(self, view):
     if SbtView.is_sbt_view(view):
         SbtView(view.window()).update_writability()
     else:
         for reporter in maybe(self._reporter(view)):
             reporter.update_status()
コード例 #24
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def _match_last_line(self, line):
     for m in maybe(re.match(r'\[info\] (.+) \(([^:]+):(\d+)\)$', line)):
         return (m.group(1), m.group(2), int(m.group(3)))
コード例 #25
0
ファイル: sublimesbt.py プロジェクト: otwebti/SublimeSBT
 def on_activated(self, view):
     for reporter in maybe(self._reporter(view)):
         reporter.show_errors_in(view.file_name())
コード例 #26
0
ファイル: sublimesbt.py プロジェクト: coltfred/SublimeSBT
 def on_modified(self, view):
     for reporter in maybe(self._reporter(view)):
         reporter.show_errors(view.file_name())
コード例 #27
0
ファイル: allPythonContent.py プロジェクト: Mondego/pyreco
 def mark_settings(self, error_type='error'):
     for settings in maybe(self.get('%s_marking' % error_type)):
         return settings
     return self.global_mark_settings()
コード例 #28
0
ファイル: outputmon.py プロジェクト: jarhart/SublimeSBT
 def _match_last_line(self, line):
     for m in maybe(re.match(r'\[(?:error|warn)\] (\s*\^\s*)$', line)):
         return m.group(1)
コード例 #29
0
ファイル: errorreport.py プロジェクト: coltfred/SublimeSBT
 def errors_at(self, filename, line):
     for errors in maybe(self.errors_in(filename)):
         return errors.get(line)