Page 1 of 1

Режим принудительной одной копии + Комментарии + Плагины

Posted: 28.05.2019 09:34
by lav
Доброго всем настроения, друзья!

1. Подскажите, пожалуйста, есть ли у программы CudaText режим принудительной одной копии (Single Window mode или как там он везде называется).
Т.е. нужно, чтобы:
- если запущена 1 копия программы, то 2я уже не запускалась, а запускалась новая вкладка с новым файлом.
- если этот файл уже открыт, то чтобы он же не дублировался во 2й вкладке, а активировался на уже открытой вкладке.

2. Еще пытался найти опцию такую, как свитчер комментирования выделенного текста в коде - не нашел.

3. Как ставить/настраивать плагины? Нажимаю Options - Settings - Plugins и никакого эффекта - ничего не открывается.
В конфигах смотрел, ничего по ключевым словам не нашел. Прошу помогите, пожалуйста, если кто знает, буду вам очень благодарен :)

Система Linux Debian Sid (unstable), 4.19.0-1-amd64 #1 SMP Debian 4.19.13-1 (2018-12-30)
Установлен последний на текущий день cudatext_1.81.0.2-1_gtk2_amd64.deb

Posted: 28.05.2019 20:06
by kvichans
1.
- ui_one_instance
- Это штатное поведение.

2. Откройте палитру Команды
Image
Image
Обратите внимание на статус строку. Там подсказка, что по F9 можно назначить свои хоткеи (на снимке - мои, а не штатные)

3. Универсальной системы настроек ВСЕХ плагинов нет.
Для некоторых настройки доступны через меню
Image
Для остальных нужно искать/спрашивать

Posted: 28.05.2019 23:15
by Alexey
Если в "Options / Settings-plugins" ничего не работает, то может Py lib не подключена? плагины работают? если нет - см default.json про опцию pylib в линукс.

Posted: 29.05.2019 05:46
by lav
Благодарю всех ответивших!
1.
kvichans wrote:1.
- ui_one_instance
- Это штатное поведение.
редактирование default.json, one instance
редактирование default.json, one instance
А как сделать доступным редактирование default.json? Открываю default.json под root из-под CudaText. Можно, конечно, найти и открыть чем-нибудь другим, но вопрос все равно не решен будет.

3. Касательно плагинов:
Alexey wrote:Если в "Options / Settings-plugins" ничего не работает, то может Py lib не подключена? плагины работают? если нет - см default.json про опцию pylib в линукс.
Да, забыл сказать про то, что ругается на pylib__linux при старте:

Code: Select all

No Python engine (3.x) found. Python plugins don't work now. To make it ok:
write option "pylib__linux" to user.json. See info in default config: Options / Settings-default.
А что мне теперь с этим делать?
pylib__linux
pylib__linux

Posted: 29.05.2019 06:21
by kvichans
Ага! Изменения опций нужно делать не в "settings_default/default.j son", а в "settings/user.json".
Проще всего вызывать из меню команду "Options -- Settings - default/user" - откроются оба файла, можно будет копировать опции в user.json, чтобы поменять их значения

PS Ваши картинки не открываются. Осталось не понятно, что на них.

Posted: 29.05.2019 08:24
by lav
kvichans wrote:Ага! Изменения опций нужно делать не в "settings_default/default.j son", а в "settings/user.json".
Проще всего вызывать из меню команду "Options -- Settings - default/user" - откроются оба файла, можно будет копировать опции в user.json, чтобы поменять их значения

PS Ваши картинки не открываются. Осталось не понятно, что на них.
Благодарю! Принцип конфигов понял, one instance заработал.
Да на картинках подтверждение текста - не столь важны, хотя странно, что не открываются при попытке увеличить.
Осталось с плагинами разобраться и pylib__linux.

Такие строки в конфиге по умолчанию:

Code: Select all

//[Python]
  //Sets Python3 engine [has suffix]
  //  If correct, you must see Python version in console panel (Ctrl+`)
  //  and command "=sys.path" must work in console.
  //
  //  Instruction for Linux, if Py engine not found:
  //  1) open file manager, go to /usr
  //  2) search for "libpython3.*so*",
  //     Terminal command:
  //     $ find /usr -name 'libpython3.*so*' 2>/dev/null
  //  3) if not found, install Python 3, goto 2)
  //  4) [b]set "pylib__linux" to one of the found filenames[/b]
  //
  "pylib": "python35.dll",
  "pylib__linux": "libpython3.so",
  "pylib__mac": "/Library/Frameworks/Python.framework/Versions/3.5/lib/libpython3.5.dylib",
find /usr -name 'libpython3.*so*' 2>/dev/null
выдал:

Code: Select all

/usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0
/usr/lib/x86_64-linux-gnu/libpython3.7m.so.1
/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu/libpython3.7.so
/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu/libpython3.7m.so
А что теперь означает set "pylib__linux" to one of the found filenames?
Символьную ссылку сделать? А куда тогда ее делать, если я угадал про ссылку?

Как в конфиге указано, команда =sys.path в консоли не работает (хотя я не знаю, как оно выглядит, когда что-то работает).
No Python engine (3.x) found. Python plugins don't work now. To make it ok:
write option "pylib__linux" to user.json. See info in default config: Options / Settings-default.
Loading session: history session.json
Startup: total: 240ms, including plugins: 0ms
>>> ver
>>> version
>>> =sys.path

Posted: 29.05.2019 08:56
by kvichans
1. Я бы рекомендовал (пока Автора нет, а сам я редко в Линуксе) задать,

"pylib__linux": "/usr/lib/python3.7/config-3.7m-x86_64-linux-gnu/libpython3.7.so",

и перевызывать Куд.

2. Консоль Куд слабо эмулирует консольное использование Питона.
Да - позволяет выполнять отдельные команды и помнит контекст (например, после import-ов и назначений переменных)
Но ipython не потянет

Posted: 29.05.2019 09:01
by Alexey
закон Мерфи. Если докум-я может быть понята неправильно, она _будет неправильно понята...

поправил

Code: Select all

  //[Python]
  //Sets Python engine [has suffix]
  //  If option is correct, you must see Python version in console panel (Ctrl+`)
  //  and command "=sys.path" must work in console.
  //
  //  Instruction for Linux/FreeBSD/Solaris, if Python engine not auto-detected:
  //  1) open file manager, go to /usr
  //  2) search for "libpython3.*so*"
  //
  //     Terminal command:
  //     $ find /usr -name 'libpython3.*so*' 2>/dev/null
  //
  //  3) if not found, install Python 3, goto step 2
  //  4) in user.json, set "pylib__linux" (or "pylib__freebsd" etc) to one 
  //     of the found filenames. for example:
  //     "pylib__linux": "/usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0",
  //