61

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

chadwick пишет:

Одинаковая комбинация для двух действий:

[editor]
fontColor=Ctrl+Alt+C

[note]
copy=Ctrl+Alt+C

Спасибо, это надо подправить. В интерфейсе настройки горячих клавиш будет проверка, чтобы выдавать предупреждение если клавиши задвоены. Совсем блокировать задвоение нельзя, потому что иногда они допустимы.

Кстати, еще появилась возможность делать глобальные клавиши для открытия окна MyTetra, и для добавления записи. В новостях об этом написано.

62

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

chadwick пишет:

MyTetra закрывается при попытке изменить цвет выделенного текста

MyTetra v.1.44.39 (Portable)
Devuan ASCII x86 (Debian Stretch)
Qt 5.7

Кнопка изменения цвета по историческим причинам недоработана, поэтому она всегда была скрыта в интерфейсе. Зря я наверно сделал ей шорткат. Там ее долго надо в человеческий вид приводить.

63

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

xintrea пишет:
chadwick пишет:

MyTetra закрывается при попытке изменить цвет выделенного текста

MyTetra v.1.44.39 (Portable)
Devuan ASCII x86 (Debian Stretch)
Qt 5.7

Кнопка изменения цвета по историческим причинам недоработана, поэтому она всегда была скрыта в интерфейсе. Зря я наверно сделал ей шорткат. Там ее долго надо в человеческий вид приводить.


Появление цвета в заметках сильно добавило бы читабельность и оформление

64

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

lo-st пишет:

Появление цвета в заметках сильно добавило бы читабельность и оформление

Плюсую, очень ннада!

65

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

SergSA пишет:

Предлагаю добавить экспорт:
- базы в архив, для передачи её на другой компьютер;

Я для этого использую СинкТрезор https://github.com/canton7/SyncTrayzor
настраиваешь папку d:\mytetra\data\
исключаешь папку icons
Командуешь Трезор, синкай!


Плюсы
синкаешь с любым количеством компов,
синкашеь только с доверенными устройствами,
есть какое то управление версиями,
настраиваемая периодичность синхронизации,
настраиваемое направление синхронизации, (туда-сюда или в одну сторону. например одно устройство может быть в read-only, остальные равноправно редактируют)

не нужно устанавливать GIT,
  и не нужно пользоваться чужими сервисами в интернетах.
  и работает в локалке, при отключенном интернете или вовсе без интернета,
  и работает через интернет (но для этого использует чужой сервис)

Mytetra спокойно относится к такой фоновой синхронизации, но не видит внесенных изменений.

Из минусов.
Нельзя одновременно редактировать одну и туже запись в двух или более местах.

Если с другого компа изменена запись открытая здесь на чтение (просмотр без внесения изменений) MyTetra не покажет изменений. Для отражения изменений нужно перейти в другую запись и вернуться обратно.

xintrea

Просьба\Предложение 1: чтобы MyTetra видела внесенные изменения и или обновляла отображаемую запись, или как то показывала что отображаемая запись была изменена в фоне какой то внешней программой.

Просьба\Предложение 2: сделать специальную ветку с специальным типом записей "Персона".

Например вести список людей с указаниями у каждого их дней рождения, И других важных дат. Типа их профессиональных праздников (типа не забыть позвонить поздравить с днем шахтера, с днем ВДВ, с днем взятия бастилии, с днем медика, с годовщиной свадьбы, с днем рождения любимого мурзика, день траура).

И в этой ветке сделать пару служебных страниц (автогенерируемых "записей") специального вида.
события в течении 11 дней: 3 дня назад (уже прошли) события сегодня  и события на 7 дней вперед
события в течении 30 дней: 3 дня назад (уже прошли) события сегодня  и события на 30 дней вперед
и всплывающие уведомления.

И возможность задавать связи между "записями-персонами". Открываешь  персону "Вася"  а там записано что он сын "Модест Карловича" и владеет собакой "Шарик" соответственно ссылки на карточку отца и карточку питомца.

Типа если в mytetra.xml у записи type=persone,  то
рядом с text.html лежит properties.xml с датами относящимися к этой записи и ссылками на связанные записи (link="1497554561e0onb9rnsj" text="бастард)".
наверное как то так.

Я такого не видел, а было бы хорошо.
(то что видел, уныло хотя бы тем, что требует обязательного заполнения карточки отца, даже если имя это все что ты знаешь о нем. и дизайн у них попугайно-вырвиглазный)

Просьба\Предложение 3: добавить к свойствам записей поле "напомнить", в котором указывать день и время (время с шагом 15 минут достаточно) и может быть длительность (с шагом 15 минут). При наступлении показывать всплывающее напоминание.

И наверное специальную служебную ветку "события" в которой эти записи отображать пока событие длится (за 15 минут до, во время и еще 15 минут после). 


Соответственно, если в mytetra.xml у записи нет поля remember. или оно пустое - запись обычная, если есть и время совпало  - всплывает напоминание (издается звук динь-динь), запись отображается ЕЩЕ и в  этой специальной ветке (в остальное время запись отображается только на своем обычном месте в дереве).


Извините, если не сумел толком сформулировать.

66

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

SergSA пишет:

И наверное специальную служебную ветку "события" в которой эти записи отображать пока событие длится (за 15 минут до, во время и еще 15 минут после). 

Ну если появится возможность добавлять даты и напоминания к заметкам и потом просматривать их типа календаря то это уже получается как менеджер задач, тогда можно даже будет и отказаться от вандерлиста:)

67 (изменено: chadwick, 30.10.2018 22:26:42)

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

xintrea пишет:

В интерфейсе настройки горячих клавиш будет проверка, чтобы выдавать предупреждение если клавиши задвоены. Совсем блокировать задвоение нельзя, потому что иногда они допустимы.

я то думал, что Ctrl+Alt+C для редактора и списка записей должны независимо друг от друга работать

xintrea пишет:

Кнопка изменения цвета по историческим причинам недоработана, поэтому она всегда была скрыта в интерфейсе. Зря я наверно сделал ей шорткат. Там ее долго надо в человеческий вид приводить.

ну это довольно нужная кнопка; до появления хоткеев она хотя бы работала

xintrea пишет:

Кстати, еще появилась возможность делать глобальные клавиши для открытия окна MyTetra, и для добавления записи. В новостях об этом написано.

при вызове addNoteDialog появляется окно добавления записи, но MyTetra закрывается после нажатия Cancel; то же самое если создать заметку - MyTetra закрывается после нажатия OK, но заметка успевает попасть в базу

вывод на момент падения при нажатии Cancel ->

~$ mytetra
WalkHistory::clear()

Start MyTetra v.1.44.44
Debug message before set message handler for target OS:  "any"
Set alternative handler myMessageOutput() for debug message
17:54:31 [INI] Debug message after set message handler
17:54:31 [INI] System code page:  "UTF-8"
17:54:31 [INI] Console code page:  "UTF-8"
17:54:31 [INI] Set main program file to  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44/mytetra"
17:54:31 [INI] Check full current path  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44"
17:54:31 [INI] Check config file  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44/conf.ini"
17:54:31 [INI] Config file  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44/conf.ini"  is exists
17:54:31 [INI] Short config file name  "conf.ini"
17:54:31 [INI] Config directory name  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44"
17:54:31 [INI] Work directory set to path  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44"
17:54:31 [INI] Set work directory to  "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44"
17:54:31 [DBG] In iconsCollectionCheck(). Mytetra XML dir is:  "./data"
17:54:31 [DBG] Icons directory is exist
17:54:31 [DBG] Stylesheet success loaded from "/home/chadwick/programs/mytetra/mytetra-dev-1-44-44/stylesheet.css"
17:54:31 [DBG] Action log:  "<r v=\"1\" t=\"1540911271\" a=\"startProgram\" />"
17:54:31 [DBG] Get interface language "en"
17:54:31 [DBG] Use language file  ":/resource/translations/mytetra_en.qm"
17:54:32 [DBG] Column count change. New column count:  4
17:54:32 [DBG] RecordTableView::init()
17:54:32 [DBG] Show event of find dialog
17:54:33 [DBG] Init random generator
17:54:33 [DBG] MainWindow::restoreTreePosition() :  ("0", "15407367639x6cn54cab")
17:54:33 [DBG] MainWindow::saveTextarea() : id : ""
17:54:33 [DBG] Save textarea...
17:54:33 [DBG] WalkHistory::add() : id  ""
17:54:33 [DBG] WalkHistory::add() : mode  0
17:54:33 [DBG] WalkHistory::add() start status:
17:54:33 [DBG] In RecordTableView setTableData() start
17:54:33 [DBG] MetaEditor::clearAll()
17:54:33 [DBG] Set new AttachTableModel to NULL data
17:54:33 [DBG] In table select non present
17:54:33 [DBG] In RecordTableView set new model stop
17:54:34 [DBG] Restore session succesfull
17:54:34 [DBG] WalkHistory::clear()
17:54:34 [DBG] In timer PeriodicSyncro working method
17:54:34 [DBG] Action log:  "<r v=\"1\" t=\"1540911274\" a=\"startSyncro\" />"
17:54:34 [DBG] MainWindow::saveTextarea() : id : ""
17:54:34 [DBG] Save textarea...
17:54:34 [DBG] WalkHistory::add() : id  ""
17:54:34 [DBG] WalkHistory::add() : mode  0
17:54:34 [DBG] WalkHistory::add() start status:
17:54:34 [DBG] AppConfig::set_tree_position() :  ("0", "15407367639x6cn54cab")
17:54:34 [DBG] Run shell "sh -c"
17:54:34 [DBG] Run command "cd"
17:54:34 [DBG] Process started
17:54:35 [DBG] Close process, PID 0
17:54:35 [WRN] QIODevice::read (QProcess): device not open
17:54:35 [DBG] Process stop
17:54:35 [DBG] Reload XML data if last data not found
17:54:35 [DBG] MainWindow::restoreTreePosition() :  ("0", "15407367639x6cn54cab")
17:54:35 [DBG] MainWindow::saveTextarea() : id : ""
17:54:35 [DBG] Save textarea...
17:54:35 [DBG] WalkHistory::add() : id  ""
17:54:35 [DBG] WalkHistory::add() : mode  0
17:54:35 [DBG] WalkHistory::add() start status:
17:54:35 [DBG] In RecordTableView setTableData() start
17:54:35 [DBG] MetaEditor::clearAll()
17:54:35 [DBG] Set new AttachTableModel to NULL data
17:54:35 [DBG] In table select non present
17:54:35 [DBG] In RecordTableView set new model stop
17:54:35 [DBG] Action log:  "<r v=\"1\" t=\"1540911275\" a=\"stopSyncro\" />"
17:54:35 [DBG] Start timer with delay:  900  ID:  21
17:54:49 [DBG] "MainWindow recieved message: addNoteDialog"
17:54:49 [DBG] In slot add_new_toend_context()
17:54:49 [DBG] In add_new_record()
17:54:49 [DBG] Show event of find dialog
17:54:49 [DBG] Textarea geometry X Y  0   39
17:54:49 [DBG] Textarea geometry Width Height  621   17
17:54:49 [DBG] Textarea frame geometry Width Height  621   17
17:54:49 [DBG] MainWindow::onFocusChanged() to  ""
17:54:57 [DBG] MainWindow::onFocusChanged() to  ""
17:54:58 [DBG] Save editor config file
17:54:58 [DBG] MainWindow::saveTextarea() : id : ""
17:54:58 [DBG] Save textarea...
17:54:58 [DBG] WalkHistory::add() : id  ""
17:54:58 [DBG] WalkHistory::add() : mode  0
17:54:58 [DBG] WalkHistory::add() start status:
17:54:58 [DBG] Save window geometry and splitter sizes
17:54:58 [DBG] Save main window geometry
17:54:58 [DBG] AppConfig::set_tree_position() :  ("0", "15407367639x6cn54cab")
17:54:58 [DBG] Action log:  "<r v=\"1\" t=\"1540911298\" a=\"stopProgram\" />"
17:54:58 [DBG] Save editor config file
Segmentation fault

команды show, hide, quit выполняются нормально

UPD: MyTetra падает только в том случае, если она свернута в трей и при этом вызывается addNoteDialog; если развернуть основное окно и затем вызвать addNoteDialog, то не падает - заметка создается в текущей ветке; я пока просто добавил команду show в mytetraAddNote.run, но хотелось бы исправить

68

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

Stanislaw пишет:

Mytetra спокойно относится к такой фоновой синхронизации, но не видит внесенных изменений.

Вообще-то видит. Настройки - Синхронизация - Периодическая проверка дерева записей на изменение сторонними программами (галка).

Единственное чего не видит - изменений той записи, которая в данный момент просматривается/редактируется. И это нормально, потому что MyTeta - персональный менеджер заметок, а один человек не может находиться одновременно в двух местах. А сама задача определения изменения текущей просматриваемой записи - это по-сути, задача совместного редактирования. Эта область сейчас только начинает развиваться, алгоритмы весьма изощенны, этими проблемами занимаются группы высокооплачиваемых специалистов, а не один разработчик в свободное время. Вот можно ознакомиться:

https://habr.com/company/ncloudtech/blog/264923/

https://habr.com/company/ncloudtech/blog/266429/

69

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

chadwick пишет:

команды show, hide, quit выполняются нормально

UPD: MyTetra падает только в том случае, если она свернута в трей и при этом вызывается addNoteDialog; если развернуть основное окно и затем вызвать addNoteDialog, то не падает - заметка создается в текущей ветке; я пока просто добавил команду show в mytetraAddNote.run, но хотелось бы исправить

Да, проверил, есть такая проблема. Если окно свернуто в трей, то любые действия с появляющимися модальными окнами (которые появляются по команде) приводят к сегфолту.

70

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

chadwick пишет:

я то думал, что Ctrl+Alt+C для редактора и списка записей должны независимо друг от друга работать

Имеется в виду другое. Например, копирование в буфер обмена текста происходит по Ctrl+C. И по этому же Ctrl+C происходит копирование строк лога в окне с таблицей журнала действий. Действия разные, но комбинация одна, потому что журнал действий - это модальное окно. Поэтому такой повтор и допустим.

71 (изменено: kvesda, 01.11.2018 17:57:03)

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

БАГ
В версии 1.44.31, если всего 1 родительская ветка, и она зашифрована, то при следующем запуске программы ни один контрол не доступен, и нельзя создать ни новую ветку, ни новую заметку. Даже нельзя расшифровать ветку (так как все контекстное меню недоступно).  Вообще ничего нельзя сделать. Хорошо бы ввести проверку таких случаев.

В ветке форума https://webhamster.ru/punbb/viewtopic.php?id=161 записал много пожеланий по развитию MyTetra.

72 (изменено: Stanislaw, 01.11.2018 21:11:08)

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

xintrea пишет:
Stanislaw пишет:

Mytetra спокойно относится к такой фоновой синхронизации, но не видит внесенных изменений.

Вообще-то видит. Настройки - Синхронизация - Периодическая проверка дерева записей на изменение сторонними программами (галка).

Единственное чего не видит - изменений той записи, которая в данный момент просматривается/редактируется.

Изменения других записей, кроме той которая сейчас просматривается, у меня видно и без этой галки.
Если после синхронизации открыть измененную заметку. там будет новый текст.

В статье написано "синхронизация через git", а я не программист, у меня его нет, пользоваться гитхабом  - доверять свои потенциально чувствительные данные неопределенному кругу лиц неизвестных моральных качеств..  По этому я в настройки синхронизации и не заглядывал внимательно.

xintrea пишет:

И это нормально, потому что MyTeta - персональный менеджер заметок, а один человек не может находиться одновременно в двух местах.

Человек не может, а [s]я могу.[/s] две копии MyTetra могут быть открыты в одном месте.

Я с ноутом на котором открыта заметка периодически подхожу к настольному компу и открываю ту же заметку которая уже открыта на ноуте, иногда бывает что на большом экране удобнее, почитать, дописать. У меня это довольно частый сценарий. (и несколько реже, в этот же момент времени, эта заметка может быть открыта еще и на другом-третьем настольном компе).

xintrea пишет:

А сама задача определения изменения текущей просматриваемой записи - это по-сути, задача совместного редактирования. Эта область сейчас только начинает развиваться, алгоритмы весьма изощенны, этими проблемами занимаются группы высокооплачиваемых специалистов, а не один разработчик в свободное время. Вот можно ознакомиться:

По моему [s]еще[/s] уже в Lexicon была рудиментарная возможность совместного одновременного редактирования документа. Один автор мог продолжать дописывать в конце. другой мог корректировать и исправлять опечатки в предыдущих абзацах.

Но не суть, это второстепенно.
В общем понятно что задача черезвычайно интересная, емкая, не на одну диссертацию. по этому предложение №1 "чтобы MyTetra видела внесенные изменения и или обновляла отображаемую запись, или как то показывала что текущая отображаемая запись была изменена в фоне какой то внешней программой."

[strike]Конечно мечтой и совсем круто было бы показывать изменения. Говорят в 1С хорошая сравнивалка текстовых файлов.[/strike]

73

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

Я проверял одновременное редактирование одной и той же записи в Evernote. Уж более известного продукта в области PIM-менеджеров просто не существует. Так вот, у них тоже никакого параллельного редактирования нет. Пользователь запросто может потерять напечатанные строки в зависимости от того, в какой момент какой инстанс Evernote засинхронизируется. И ничего, пользователи нормально это воспринимают, и деньги за пользование платят, что характерно.

Stanislaw пишет:

Говорят в 1С хорошая сравнивалка текстовых файлов.

Это просто diff с пользовательским интерфейсом. В Linux таких программ куча: kdiff3, meld, diffmerge и т.д.

74

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

xintrea пишет:

Я проверял одновременное редактирование одной и той же записи в Evernote. Уж более известного продукта в области PIM-менеджеров просто не существует.

"Известный" не равно "лучший".

MyTetra сейчас ведет себя так же, более свежая правка с другого компа затирает чуть более раннюю сделанную на этом.
Это проблема только для записи открытой в момент синхронизации (при стечении нескольких обстоятельств: в случае редких синхронизаций и частой правке записей).

Фактически проявляется только с той записью, которая открыта на просмотр в давно свернутом приложении.


xintrea пишет:
Stanislaw пишет:

Говорят в 1С хорошая сравнивалка текстовых файлов.

Это просто diff с пользовательским интерфейсом. В Linux таких программ куча: kdiff3, meld, diffmerge и т.д.

В сравнении с другими diff этот хвалят.
Проще (удобнее) в использовании. Не дает ложных срабатываний на добавленные пустые строки и незначащие пробелы (другие дифы по умолчанию считают весь следующий текст во всех строках измененным). Если в строке поменяли местами слова, подсвечивает только эти слова, измененную часть строки и т.д.

Я не агитирую ставить 1С и надеюсь меня не будут агитировать ставить линукс туда, где это не требуется по жизни.

75

Re: MyTetra v.1.43.x - Пожелания, вопросы, багрепорты

kvesda пишет:

БАГ
В версии 1.44.31, если всего 1 родительская ветка, и она зашифрована, то при следующем запуске программы ни один контрол не доступен, и нельзя создать ни новую ветку, ни новую заметку. Даже нельзя расшифровать ветку (так как все контекстное меню недоступно).  Вообще ничего нельзя сделать. Хорошо бы ввести проверку таких случаев.

Вообще-то, пароль спрашивается автоматически в таком случае при старте MyTetra. И если он был введен неправильно или была нажата кнопка Отмена, то тогда да, в этом случае повторно пароль невозможно было ввести.

Исправлено:

https://github.com/xintrea/mytetra_dev/ … 93b77cf2dc