diff --git a/RsbIDE.py b/RsbIDE.py
index c2b31f1..1b7bf36 100644
--- a/RsbIDE.py
+++ b/RsbIDE.py
@@ -1,8 +1,8 @@
# -*- coding: cp1251 -*-
# @Author: MOM
# @Date: 2015-09-09 21:44:10
-# @Last Modified by: MOM
-# @Last Modified time: 2016-08-11 00:08:00
+# @Last Modified by: mom1
+# @Last Modified time: 2016-08-11 14:00:56
import sublime
@@ -16,6 +16,7 @@
from os.path import basename, dirname, normpath, normcase, realpath
from RSBIDE.tree import Tree
from RSBIDE.RsbIde_print_panel import get_panel
+from RSBIDE.RsbIde_print_panel import print_to_panel
from RSBIDE.common.verbose import verbose, log
from RSBIDE.project.ProjectManager import ProjectManager
@@ -28,14 +29,21 @@
from RSBIDE.common.lint import Linter
-global IS_ST3
-IS_ST3 = sublime.version().startswith('3')
-
-
global already_im
already_im = []
ID = 'RSBIDE'
-scope_cache = {}
+
+
+ST2 = int(sublime.version()) < 3000
+
+if ST2:
+ try:
+ sublime.error_message("RSBIDE Package Message:\n\n Sublime Text 2 \n\n Sublime Text 3.")
+ except:
+ try:
+ sublime.message_dialog("RSBIDE Package Message:\n\n Sublime Text 2 \n\n Sublime Text 3.")
+ except:
+ pass
class RSBIDE:
@@ -207,9 +215,6 @@ class PrintSignToPanelCommand(sublime_plugin.WindowCommand):
cache = {}
def run(self):
- global IS_ST3
- if IS_ST3:
- from RSBIDE.RsbIde_print_panel import print_to_panel
view = self.window.active_view()
sel = view.sel()[0]
if sel.begin() == sel.end():
@@ -273,7 +278,7 @@ def get_doc(self, view):
def is_visible(self, paths=None):
view = self.window.active_view()
- return ('R-Style' in view.settings().get('syntax'))
+ return is_RStyle_view(view)
def description(self):
return 'RSBIDE: \talt+s'
@@ -485,7 +490,7 @@ def open_file(self, idx, transient=False):
def is_visible(self, paths=None):
view = self.window.active_view()
- return ('R-Style' in view.settings().get('syntax'))
+ return is_RStyle_view(view)
def description(self):
return 'RSBIDE: \talt+g'
@@ -501,7 +506,11 @@ def run(self):
def is_visible(self):
view = self.window.active_view()
- return ('R-Style' in view.settings().get('syntax'))
+ project = ProjectManager.get_current_project()
+ isvis = False
+ if is_RStyle_view(view) and project.get_setting("LINT", True):
+ isvis = True
+ return isvis
def description(self):
return 'RSBIDE: '
@@ -579,14 +588,8 @@ def plugin_loaded():
def update_settings():
""" restart projectFiles with new plugin and project settings """
- # invalidate cache
- global scope_cache
- scope_cache = {}
# update settings
if Settings:
global_settings = Settings.update()
# update project settings
ProjectManager.initialize(Project, global_settings)
-
-if not IS_ST3:
- sublime.set_timeout(lambda: plugin_loaded(), 0)
diff --git a/messages/2.1.0.txt b/messages/2.1.0.txt
new file mode 100644
index 0000000..7356842
--- /dev/null
+++ b/messages/2.1.0.txt
@@ -0,0 +1,20 @@
+RSBIDE 2.1.0
+-------------
+
++ Добавлен линтер по соглашениям
+ + Подсветка длинных строк
+ + Подсветка закомментированного кода
+ + Не используемые переменные (в функциях и классах, глобалки игнорируются)
+ + Подсветка замечаний по количеству пустых строк
+ + Добавлен Список всех замечений с возможностью перехода к ним (по сохранению или из контекстного меню)
+ + Добавлено контекстное меню "RSBIDE: Проверить по соглашениям"
+ + Добавленны настройки:
+ + "lint": true - выделять замечания по соглашениям
+ + "maxlength": 160 - максимальное количество символов в строке (если больше то подсвечиваем)
+ + "show_save": true - показывать замечания при сохранении
+ + "scop_error": "invalid.mac" - тип подсветки замечаний
+ + "max_empty_line": 2 - макс. количесво допустимых пустых строк
++ Добавлены переходы к началу региона. Если стоим на 'end' alt+g или alt+s
+приводит к паре енда т.е. (class, macro, if, for, while)
+- Исправленна ошибка с вечным прогрессом
+- Исправленна ошибка загрузки кэша
diff --git a/readme.md b/readme.md
index 384b13f..da43bf1 100644
--- a/readme.md
+++ b/readme.md
@@ -9,7 +9,7 @@ This plugin adds RS-Balance 3 completions and some IDE-like functions to Sublime
Features
------------
-* **auto-completions**
+* **auto-completions**
* The variables / functions / classes / class options / parameters functions are complemented in view of visibility obalsti
* Together with the name of the function substituted its possible parameters
* auto-completions Object/Field/Method/Key from *.xml (RSTypeInfo)
@@ -22,7 +22,7 @@ Features
* Go to the file from the import Alt + G
* Go to the parent class Alt + G
![GotoMenu](https://raw.github.com/mom1/RSBIDE/master/screenshot/GotoMenu.jpg)
- * Print Signature `macro` or `class` or `var` To Panel Alt + S
+ * Print Signature `macro` or `class` or `var` To Panel Alt + S
![GotoPanel](https://raw.github.com/mom1/RSBIDE/master/screenshot/GotoPanel.jpg)
* when browsing in the declarations you can always return to your starting position by using one of the above keys when nothing is under your cursor
* **Viewing documents**
@@ -35,6 +35,9 @@ Features
![DllRegister](https://raw.github.com/mom1/RSBIDE/master/screenshot/DllRegister_RS-Balance_3.jpg)
* **Syntax highlighting**
* For .mac files
+* **Highlighting comments on the development of the agreement**
+ * All the main parameters in settings
+ ![Linter](https://raw.github.com/mom1/RSBIDE/master/screenshot/Linter.jpg)
* **Launch RS-Balance 3**
* quickly open the Client with your Reg configuration
* to Run Client use Ctrl + B, F7 or search for it in the command palette.
diff --git a/readme_ru.md b/readme_ru.md
index 45638ac..9a82719 100644
--- a/readme_ru.md
+++ b/readme_ru.md
@@ -9,7 +9,7 @@
Особенности
------------
-* **Авто-дополнение**
+* **Авто-дополнение**
* Переменные/Функции/Классы/Параметры класса/параметры функций дополняются с учетом обалсти видимости
* Вместе с именем функции подставляются ее возможные параметры
* Авто-дополнение Object/Field/Method/Key из *.xml (RSTypeInfo)
@@ -35,6 +35,9 @@
![DllRegister](https://raw.github.com/mom1/RSBIDE/master/screenshot/DllRegister_RS-Balance_3.jpg)
* **Подсветка синтаксиса**
* Для .mac файлов
+* **Подсветка замечаний из соглашения по разработке**
+ * Все основные параметры вынесенны в настройки
+ ![Linter](https://raw.github.com/mom1/RSBIDE/master/screenshot/Linter.jpg)
* **Запуск RS-Balance 3**
* Быстрый запуск Клиентского приложения из проекта
* Для быстрого запуска клиента с отладкой используйте Ctrl + B, F7
@@ -51,7 +54,7 @@
* Предопределенные языковые конструкции. Список будет пополняться конструкциями из [RSL](http://wiki.rs-balance.ru/index.php/RSL)
* **Другие команды**
* RSBIDE: Print Tree Import - Выводит дерево импортов текущего файла. Открывает в новой закладке
-
+
![PrintTreeImport](https://raw.github.com/mom1/RSBIDE/master/screenshot/PrintTreeImport.jpg)
Установка
diff --git a/screenshot/Linter.jpg b/screenshot/Linter.jpg
new file mode 100644
index 0000000..73b23fe
Binary files /dev/null and b/screenshot/Linter.jpg differ