YellowRaven пишет:

1. Я использую программу на двух компьютерах, причём с разным контентом. Можно ли как-нибудь синхронизировать базы?

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

Ваш случай несколько другой. Если базы с разным контентом, то речь идет не о синхронизации, а о слиянии. Механизма слияния в MyTetra нет. Но его можно набыдлокодить по-быстрому на PHP или на Питоне. Я этим заниматься не буду, но если кто-то возьмется и сделает хорошо, я выложу скрипт на сайте.


YellowRaven пишет:

2. Если запустить программу на лаптопе с подключенным вторым мониторам и работать на нём, то после загрузки лаптопа без второго монитора, Ваша программа старается запуститься на несуществующем втором мониторе. Хорошо хоть есть узенькая полосочка окна, за которую можно "вытянуть" окно... Понимаю, что случай редкий, но баг всё-таки. ))  Кстати, этим страдает ооочень большое количество даже коммерческого ПО.

Чтобы это исправить, мне нужен второй монитор, а его у меня нет. В новой версии ожидается настройка "Запускать MyTetra в свернутом виде". Возможно, она вам поможет.

Virelav пишет:

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

И все таки так намного удобней. Окно списка записей не будет ограничено областью редактирования. Визуально проще ориентироваться в списке записей.

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

Shura пишет:

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

MyTetra - это персональный менеджер накопления информации. Он под многопользовательское использование никогда не проектировался. Для "много пользователей" используйте Wiki, MyTetra ну никак для этого не подходит.

Shura пишет:

Её можно будет удалённо заводить, на отдельном SQL сервере

То есть, без интернета поработать не получится?

Shura пишет:

Может пора подумать о прикручивании базы данных? Тогда и проблема с синхронизацией решится.

Нет, пока формат данных будет тот же.

И кстати, как решится проблема синхронизации при переходе с файлов на базу данных?

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

Для получения последних изменений с сервера синхронизации используется команда:

git add . ; git commit -a -m "commit comment" ; git pull -s recursive -X theirs ; git push

Для заливки изменений на сервер используется команда:

git add . ; git commit -a -m "commit comment" ; git pull -s recursive -X ours ; git push

Предполагается, что первая команда запускается при старте MyTetra, вторая - при выходе из MyTetra. Если сделаю кнопочку "Syncro", то наверно будет выполняться сначала первая команда, потом вторая.

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

Biga пишет:

1) новые созданные страницы могут оказаться расположенными в папках с одинаковым номером (как я понял, номера даются по порядку или типа того), что приведёт к конфликту, и разрешить его вручную будет сложно.
2) В mytetra.xml тоже будут конфликты слияния при изменениях в близких строках.

Возможные пути решения:
1) называть папки в base не 000000011, а рандомным числом, типа 4914ae6a5, что сводит вероятность коллизии на нет.

Видимо, буду добавлять рандомную строку.


Biga пишет:

2) Хранить в файлах text.html избыточную информацию, достаточную, чтобы восстановить файл mytetra.xml при его полном удалении (т.е. теги, id родительской ноды, порядок сортировки, и т.д. Не так и много, имхо). Таким образом при любых проблемах файл mytetra.xml можно будет перегенерить заново.

Нет, это бессмысленно. Лучше делать основную схему синхронизации так, чтоб таких ситуаций вообще не возникало.

SergMarkov пишет:
xintrea пишет:

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

http://pastebin.com/TsPM1sFZ
Не знаю насколько вам поможет эта простыня:-) , до кучи вывод strace
http://narod.ru/disk/11365453001/mytetra.strace.html

Так, как минимум понятно, что это локальный баг в слаквари.

Чтобы убедиться наверняка, если вам охота поковыряться, запустите MyTetra под gdb:

$ gdb mytetra

или

$ gdb ./mytetra

В консоли gdb дайте команду "run". Дождитесь сегфолта, и дайте команду "where". Будет выведен стек вызовов с именами функций. И присылайте эту простыню.

SergMarkov пишет:
xintrea пишет:

Вот я пробую так делать http://rghost.ru/5364815 - сегфолта нет. Я правильно повторяю ваши действия?
Напишите, что в консоли выводится в момент сегфолта (несколько последних строчек).

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

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

SergMarkov пишет:

Жаль, тем более что полезна информация или нет все таки судить потребителю, который ее использует. Всю страницу конечно редко приходится сохранять таким образом, а вот часть страницы с картинками (графиками etc) весьма и весьма часто, и то что такая информация в mytetra не сохраняется как раз резко снижает ее ценность именно как источника сохранения информации, который гораздо удобнее хранить в одном месте.

А, ну часть страницы в виде форматированного текста в MyTetra хранить можно. Проблема сейчас в картинках, если таковые присутсвут в скопированном из браузера тексте - они не подгружаются. Я планирую это доработать. Хотя, такое решение не будет работать, если интернет будет доступен не напрямую, а через proxy или еще как-то хитро подключен. А меня это очень напрягает. Ведь есть текст, есть картинка - почему бы не скопировать? Поэтому по-хорошему нужно разобраться, что браузер пихает в буфер обмена. Вполне возможно, что и текст и графику. И разобраться, как с этим всем работать - очень большая проблема, за которую я пока боюсь даже браться.


SergMarkov пишет:

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

Это будет сделано в ближайшем релизе.

SergMarkov пишет:
xintrea пишет:

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

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

Вот я пробую так делать http://rghost.ru/5364815 - сегфолта нет. Я правильно повторяю ваши действия?

Напишите, что в консоли выводится в момент сегфолта (несколько последних строчек).

Здесь обсуждаем, как можно сделать систему синхронизации MyTetra через интернет.

По большому счету, нам нужно просто синхронизировать каталог data и пару файлов с конфигами.

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

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

Так как MyTetra - это персональный менеджер информации, то предполагается, что синхронизация происходит по следующему простому сценарию. При старте MyTetra, при выходе, при нажатии специальной кнопки "Synchro" происходит два действия:

1. Забираются изменения с сервера;
2. Заливатся локальные изменения на сервер.

В качестве службы хранения и синхронизации файлов я в данный момент рассматриваю следующие варианты:

1. SVN на SourceForge.net

http://sourceforge.net

Недостатки:

- Появление каталогов .svn во всех подкаталогах директории с данными.
- Неясно, как автоматически добавлять/удалять файлы, создаваемые в MyTetra, не пользуясь командами svn add, svn delete и т.д.
- Вроде как SVN не обеспечивает атомарность синхронизации

2. GIT на GitHub.com

http://github.com
Недостаток пока вижу один: неясно, как автоматически добавлять/удалять файлы, создаваемые в MyTetra, не пользуясь командами git add, git rm и т.д.

3. Rsync

http://rsync.samba.org/

Вроде как инструмент подходящий, но неясно, существует ли популярный бесплатный хостинг. Кто знает - высказываемся.

4. Duplicity

http://duplicity.nongnu.org/

Вроде как инструмент подходящий, и говорят, что в качестве хостинга можно использовать gmail.com (видимо через протокол IMAP, не смог разобраться). Кто-нибудь пользовался этой штукой?

Недостаток - вопрос с кроссплатформенностью. MyTetra - кроссплатформенная программа, а Duplicity существует только под *nix. Имеется ли возможность сделать сборку Duplicity под cygwin? Один товарищ вроде собрал - http://www.alexdimarco.ca/blog/duplicit … ndows.html, но сборку свою не выложил.

5. Что-то еще?

Что вы думаете по поводу решения для синхронизации MyTetra? Какое решение может подойти?

SergMarkov пишет:

но не хватает фишки вставления целиком вебстраницы, когда в браузере делаешь "выделить все", затем в окне keepnote просто делаешь"вставить" и подгружается страница со всеми  причиндалами (картинками etc)

Этого в MyTetra делать не планируется, ибо программа сразу превратится в менеджер накопления бессмысленной информации.


SergMarkov пишет:

Да и, крайне неприятный баг - не работает "вырезать(копировать) - вставить" применительно к "листьям" - верхняя правая панель, вылетает с ошибкой сегментирования что в своем пакете что в portable версии.

uname -a
Linux ed 2.6.33.192-smp

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

Shura пишет:

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

Это планируется сделать в будущем.


Shura пишет:

И еще заметил такую вещь, при копировании ячеек из OO Calc они вставляются в программу как картинка, а не как таблица.

Да, у Open Office Calc очень невороченный механизм работы с буфером. Он каким-то образом может отдавать данные в разных форматах. Скопировал таблицу, вставляешь в текстовый редактор Kate - вставится как текст. Втавишь в KolorPaint или в GIMP - вставится как картинка. Вставишь в OO Writer - вставится как таблица.

Почему MyTetra воспринимается как графический редактор, мне непонятно.

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

Deniz пишет:
xintrea пишет:

Уточните, где открывалась и по какой ссылке кликать?

Ну допустим есть в сохранённой статье ссылки на внешние ресурсы (<a href="domain.com">Ссылка</a>), как их открыть ?

Понял. Просто вы писали про картинки, я только про них и думал.

Конечно, надо сделать возможность открытия ссылок. И надо сделать возможность ввода ссылок.

Ввод ссылок я уже пытался сделать, но он получился неудобный. Там проблема в том, что как только введена ссылка, если курсор стоит в конце ссылки и продолжаешь набирать текст, то этот набираемый текс продолжает относиться к ссылке. И нет никакой вожможности "отлепиться".

Там нужно какую-то логику наворачивать, чтоб это обойти.

Rainsoul пишет:

Здравствуйте! Пользуюсь вашей программой, возникла необходимость добавить ее в автозапуск. Добавить-то добавил - это не проблема, но мешает то, что при запуске появляется основное окно. Вопрос, собственно, вот в чем: есть ли какой-либо параметр/ключ, чтобы программа запускалась сразу свернутой в трей? Если нет, то это и есть мое вам пожелание. ИМХО, будет полезная фича.

Да, есть такая проблема. В следующем релизе я ее скорее всего решу. Как минимум, MyTetra будет запоминать, в каком состоянии (свернутом или развернутом) она была при выключении, и в таком состоянии и будет старотовать.

Deniz пишет:

А реально сделать вставку картинки из первичного буфера: выделил > кликнул средней кнопкой, и картинка вставилась ?

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


А можно сделать чтобы по Ctrl+Click по ссылке в тексте она открывалась ?

Уточните, где открывалась и по какой ссылке кликать?