xintrea пишет:
br0ke пишет:

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

При просмотре диффа между файлами, было обнаружено, что этим обрывающим символом был параграф с нулл-байтом вместо содержимого.

Такого эффекта я добился копированием текста из интернета и вставкой в MyTetra.

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

И еще очень нужна ссылка на веб-страницу, при копировании с которой возникает эта проблема.

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

1. Найти какой-нибудь тред на StackOverflow, подумать, что это полезно и было бы не плохо сохранить себе на будущее. Например: https://stackoverflow.com/questions/552 … -in-python

2. Начать создавать заметку, копировать куски кода в браузере и вставлять в MyTetra через Ctrl+V (в конце каждого такого куска появляется нулл-байт). После вставки у скопированных кусков кода я сбрасываю форматирование, форматирую как код средствами MyTetra.

3. Скопировать готовую заметку в буфер обмена, сохранить заметку, переключиться на другую, вернуться обратно и убедиться, что заметка отображается целиком. Если нет, то я очищаю заметку, вставляю заново из буфера обмена, иду в те места, где случается "обрыв" и вслепую удаляю там нулл-байты.

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

Вот пример такой заметки:
* с нулл-байтами (отображается частично): https://drive.google.com/open?id=1igJNC … W6UxUZP-Fl
* без нулл-байтов (удалил через внешний редактор, отображается в MyTetra целиком): https://drive.google.com/open?id=1egZOZ … Nqj9Stn0Ai

Я использую последнюю на данный момент версию MyTetra v.1.44.31, запускаю её с библиотеками из архива (т.е. используется QT 5.10.1). Операционная система: Fedora 30, ядро Linux 5.1.7. Оболочка GNOME Shell 3.32.2. Браузер Google Chrome Version 75.0.3770.80 (Official Build) (64-bit).

Возможно, дело в том, что MyTetra таскает свою собственную версию QT с собой в папке ./lib. Наверное, и конфигурировать тоже нужно этот QT как-то отдельно.

Плюсую за подсветку синтаксиса для языков программирования.

Кроме того, мне как программисту кажется, было бы удобнее писать заметки в формате Markdown, таким образом самому влиять на форматирование, а не доверять это wysiwyg-редактору. Иногда возникает желание просмотреть сохранённые MyTetra html-файлы, а там полнеший содом, тэги разметки появляются в таких местах, где я вообще не ожидал их увидеть, поэтому читать такие файлы глазами сложновато. С одной стороны, Markdown читается легко даже просто глазами, а с другой стороны, из него всегда можно получить красивое html-представление. Таким же образом можно было бы и влиять на подсветку синтаксиса, например:

Пишем самое важное приложение в жизни
==================================

На Python:

```python
print('Hello World!')
```

На JavaScript:

```javascript
console.log('Hello World!');
```

Я считаю, что при разработке MyTetra было принято множество отличных, даже гениальных в своей простоте решений, кроме одного -- использовать графический wysiwyg-редактор. Вместо него я бы предпочел иметь выбор формата заметки. В режиме редактирования: текстовый редактор слева и предпросмотр заметки справа. В режиме просмотра: только красивое, скомпилированное в HTML, представление заметки. Программисты выбирали бы Markdown, люди, которые много работают с формулами, сразу бы писали в TeX, ну а для общеспециализированного пользования действительно можно было бы иметь минимальный графический текстовый редактор.

Очень сложно накодить такой редактор, который удовлетворил бы все нужды -- это всё равно что заново изобрести Microsoft Office. С другой стороны, для любых специализированных нужд уже есть свои форматы, как и тысячи свободных реализаций комплияторов из этих форматов в HTML.

Это было бы круто и ещё потому, что GitHub, GitLab и другие хостинги систем контроля версий умеют комплировать Markdown и показывать его красиво. Круто же, пишешь свои заметки в MyTetra, а потом кто угодно может просмотреть их прямо через веб-интерфейс GitHub.

Это всего лишь мои мысли и мои хотелки, прошу и отнестись к этому соответствующе smile Программа замечательная и я пользуюсь ей каждый день. Спасибо!

Скорее всего, MyTetra Web Client ожидает увидеть по указанному адресу XML-файл, а BitBucket отдаёт что-то другое, например, страницу с авторизацией, после чего MyTetra уже не может продолжать нормально функционировать. На данный момент правильным решением действительно было бы использовать открытый репозиторий с шифрованными заметками.

На странице Web Client даже написано:

Сервисом MyTetra Web Client может воспользоваться любой пользователь программы MyTetra, хранящий свою базу знаний на публичных открытых серверах (например, на GitHub.com).

Ну либо допилить Web Client, чтобы он умел авторизовываться, исходники пока можно скачать только вручную со страницы Web Client: https://webhamster.ru/webmytetra
Кстати, @xintrea, почему бы не выложить их на GitHub?

masljukov пишет:

Помогите пожалуйста! Такая же проблема. Программа понравилась, сразу же стал активно её использовать. При этом, нет никакого подключения, работал автономно (т.е. без синхронизации) на одном компьютере. Вдруг, такое же сообщение  "Невозможно прочитать файл ./data/mytetra.xml.  В каталоге корзины есть файлы формата цифрыБуквы_mytetra.xml. в каталоге data тоже есть все вроде файлы. Как можно восстановить mytetra.xml. Помогите пожалуйста!!! Сейчас программа не открывается - "Не удаётся найти указанный файл".

Скопируй последний из этих файлов по дате изменения, переименуй в mytetra.xml и положи на место `./data/mytetra.xml`.

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

Вот как это выглядит:
bug gif
Ссылка на  GIF

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

При просмотре диффа между файлами, было обнаружено, что этим обрывающим символом был параграф с нулл-байтом вместо содержимого.

Такого эффекта я добился копированием текста из интернета и вставкой в MyTetra.

P.S. Используется MyTetra v.1.44.31. ОС Fedora 29. GNOME Shell 3.30.2.

br0ke пишет:

Уже несколько раз напоролся на баг с пропаданием части заметки. Пишешь длинную заметку с вставками кода и скриншотов, нажимаешь "Ок", а от твоей заметки остался только первый абзац текста sad
Я, правда, до сих пор пользуюсь v.1.43.27. Надо бы проверить, актуален ли этот баг до сих пор.

Только что тот же баг проявился на v.1.44.31.

Уже несколько раз напоролся на баг с пропаданием части заметки. Пишешь длинную заметку с вставками кода и скриншотов, нажимаешь "Ок", а от твоей заметки остался только первый абзац текста sad
Я, правда, до сих пор пользуюсь v.1.43.27. Надо бы проверить, актуален ли этот баг до сих пор.

Есть ли changelog для этой версии?

P.S. Здорово, что программа живёт и развивается smile

babaduk пишет:

У вас возможно заблокирован файл настроек для изменения (не хватает прав). При перезагрузке ширина столбцов должна оставаться прежней.

А известно ли имя этого файла, чтобы я мог проверить права на него?

UPDATE:
Нашел, это conf.ini. Права на него у владельца (меня) есть на чтение и запись.
На самом деле, это похоже на баг.
Если я выставлю ширину столбцов в комфортное положение и не переключая веток выйду из программы (Ctrl + Q), то в conf.ini попадают нужные настройки:

recordTableFieldsWidth="659,483"

Проблема в том, что при следующем запуске эти настройки снова сбрасываются:

recordTableFieldsWidth="100,100"

UPDATE 2:
Проверил сборку в архиве со всеми библиотеками. Там такой проблемы нет. Видимо, в RPM не самая свежая сборка.

UPDATE 3:
Действительно, файлы разные. Но более новым, судя по дате изменения, является файл из RPM. Значит, добавили туда баг.

Из RPM:

Дата: 25 ноября 2016
Размер: 5,0 МиБ
Хэш md5: 588fb54ff96145f4a2f0b5da2b861915

Из архива:

Дата: 20 ноября 2016
Размер: 4,9 МиБ
Хэш md5: be68cdda3dc296dab8e5f1bbf13daa04

Напрягает, что не сохраняется ширина столбцов в списке заметок. По умолчанию первый столбец слишком узкий, чтобы туда вошло хотя бы одно слово, а второй столбец занимает все оставшееся место. Можно настроить вручную, но после переключения ветки ширина столбцов снова сбрасывается. Использую Fedora 27 KDE. Устанавливал из репозитория для Fedora по ссылке со страницы загрузки.

babaduk пишет:
beotiger пишет:

А есть ли возможность добавить кнопки H1..H6 и HR ?

Я не знаю что это такое. И таких в общем не встречал.

Насколько я понимаю, здесь имеются ввиду заголовки разных уровней и горизонтальная черта (в соответствии с тегами HTML).

Добрый день! Спасибо за интересную программу! Хочу задать вопросы и сообщить о замеченных странностях. Использую Ubuntu 16.04 LTS x86_64 (Linux 4.14.9), установлена библиотека Qt 5.5.1.

1. Не смог собрать программу из исходников. Кажется, какой-то косяк с библиотеками, но разобраться сам я не смог. Порядок действий следующий:
* Выполняю qmake mytetra.pro. Потребовалось установить недостающую библиотеку, но этот шаг прошел успешно.
* Выполняю make. Получаю следующую ошибку:

g++ -c -m64 -pipe -O2 -Wall -W -D_REENTRANT -std=c++0x -fPIC -DANY_OS=1 -DMEEGO_OS=2 -DANDROID_OS=3 -DTARGET_OS=ANY_OS -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_PRINTSUPPORT_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_XML_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -Isrc -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtSvg -isystem /usr/include/x86_64-linux-gnu/qt5/QtPrintSupport -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtXml -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -Ibuild -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o build/main.o src/main.cpp
g++: error while loading shared libraries: libgsl.so.23: cannot open shared object file: No such file or directory
Makefile:2878: ошибка выполнения рецепта для цели «build/main.o»
make: *** [build/main.o] Ошибка 127

При этом пакеты libgsl-dev и libgsl2 в системе установлены. Файлы libgsl.so.23, libgsl.so.0, libgsl.so.1 в системе отсутствует. Не знаю как быть.

2. Если использовать портабельную версию программы. Странно, что по нажатию на кнопку питания программа закрывается (в Ubuntu вылазит меню с действиями, например, спящий режим, перезагрузка, выключение). Это предусмотренное поведение?

3. При первом запуске программа открылась за границей экрана. Уж не знаю, проблема ли это MyTetra или Qt, Подозреваю, что  программа открылась в координате (0, 0), которая в моем случае оказалось вне видимой области. Достать её оттуда оказалось довольно нетривиальной задачей. Ниже прикладываю схему того, что произошло (https://imgur.com/a/RqGZU).
MyTetra