LINUX.ORG.RU

Вышли Mono 2.6 и MonoDevelop 2.2

 , ,


0

0

15 декабря 2009 года, 9 месяцев спустя после последнего крупного выпуска, в свет вышли давно ожидаемые обновления известных программных продуктов - Mono 2.6 и MonoDevelop 2.2. По заверениям Мигеля де Иказы, все разработчики работали над данным выпуском так, как никогда до этого.

Основные изменения в Mono 2.6:

  • клиент и сервер WCF (Windows Communication Foundation), что стало возможным благодаря реализации Silverlight 2.0;
  • поддержка LLVM (Low Level Virtual Machine) для улучшения производительности при нагрузке на сервер и вычислениях;
  • фреймворк Continuations/Co-routine (для работы с потоками) в виде Mono.Tasklets;
  • поддержка LINQ to SQL средствами DbLinq;
  • новый программный отладчик, интегрированный с MonoDevelop на операционных системах Unix и OSX;
  • System.IO.Packaging;
  • оболочка csharp теперь поддерживает автодополнение (по нажатию табуляции);
  • xbuild в состоянии собирать большинство проектов msbuild;
  • Mono впервые представляет «песочницу» для проверки и усиления безопасности (используется в Moonlight);
  • более полная реализация API 3.5;
  • выпуск включает открытые корпорацией Microsoft ASP.NET MVC, ASP.NET AJAX и Microsoft's Dynamic Language Runtime;
  • работает быстрее и потребляет меньше ресурсов.

Теперь перейдем к обзору изменений в MonoDevelop 2.2:

  • весь исходный код MonoDevelop теперь лицензирован под LGPLv2 и MIT X11;
  • улучшения в пользовательском интерфейсе - интерфейс обновлен с учетом всех модных тенденций, взятых из Chrome, Firefox, Visual Studio, Eclipse и XCode;
  • поддержка ASP.NET MVC;
  • новый макропроцессор T4 (Text Template Transformation Toolkit) интегрирован прямо в IDE (версия T4 из Mono также доступна в виде библиотеки);
  • поддержка проектов Moonlight;
  • новая поддержка MacOS и Windows;
  • новый отладчик позволяет отлаживать Console, Gtk#, ASP.NET, iPhone и приложения Moonlight;
  • множество улучшений в текстовом редакторе: динамические аббревиатуры (аналог Alt-/ в Emacs), генератор кода (Alt-Insert), поддержка сокращений, кодовые шаблоны, выделение блоков, форматировщик C#;
  • новые средства рефакторинга;
  • расширение для Python, включая поддержку автодополнения, проверку синтаксиса, обнаружение методов и классов, сворачивание кода;
  • расширение для разработки под iPhone.

А теперь, чтобы слова о громадной проделанной работе не выглядели пустыми, немного статистики:

  • в Mono 2.6 по сравнению с версией 2.4: изменено 7208 файлов, добавлено 1392400 строк, удалено 440016 строк - итого около 1 миллиона новых строк кода;
  • в MonoDevelop 2.6 по сравнению с версией 2.4: изменено 2427 файлов, добавлено 464284 строк, удалено 120124 строк - итого около 300 тысяч новых строк кода.

Загружаем, радуемся, поднимаем бокалы!

Страница загрузки Mono.

Страница загрузки MonoDevelop.

>>> Пост в блоге Мигеля де Иказы

★★★★

Проверено: maxcom ()

Ответ на: комментарий от AVL2

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

Чистое задроство - это выполнение вручную бессмысленной монотонной работы, которая давным-давно автоматизирована без какого-либо ущерба качеству. Хочу я иметь на форме кнопку, которая при щелчке на ней делает *нечто*. В визуальном редакторе на всё про всё у меня уйдет всего-лишь несколько кликов. А вот реальным пацанам, которые будут вбивать код вручную потребуется несколько десятков строк. А теперь вопрос - в чем глубокий философский смысл? Если результаты будут _абсолютно_ одинаковые в обоих случаях? Только, пожалуйста, конкретно и техническим языком, без расплывчатых формулировок.

anonymous
()

скачал, поставил на винду, работает. зашибись!

deil
()
Ответ на: комментарий от anonymous

>нет таких вкусных вещей как LINQ, ADO.net и еще кучи всего

LINQ хорош как обертка для работы с коллекциями, XML. Но ADO.NET... Есть Жаба, есть JDBC, есть Hibernate и горы Интерпрайз фреймворков, есть Scala. Что они все мастурбируют на эту Mono и тянут ее в UI???

nanokot
()
Ответ на: комментарий от nanokot

>Но ADO.NET... Есть Жаба, есть JDBC, есть Hibernate и горы Интерпрайз фреймворков

А теперь внимание, ВОПРОС - каким образом это относится к Qt? С ним тут сравнивали дотнет, если Вы забыли.

anonymous
()
Ответ на: комментарий от anonymous

> А может Вы подскажите что-нибудь такое не на моно, что бы действительно хотелось бы поставить ну настолько, чтобы невозможно было отказаться и чтобы аналогов не было?

glibc?

anonymous
()
Ответ на: комментарий от anonymous

>glibc?

Речь вообще-то шла о конкретных приложениях, а не о системных библиотеках.

anonymous
()

Товарисчи, кроме спора: нужен TomBoy и что лучше F-Spot или DigiKam может кто-нить адекватно с холодной головой и чистым сердцем объяснить чем MONO плох, - кроме того, что это порождение МС.

Желательно приводить технические доводы, а не «закопайте», «не нужно». Я крутил и java и mono. Ну менее продуманные библиотеки у java, менее логичные, не такие удобные. И тормознее жаба и GUI интерфейс не-родной на любой платформе. Для шаблонов не генерируется новый код со всеми вытекающими: много подводных камней, нужно помнить ЧТО можно делать и ЧТО НЕЛЬЗЯ в обобщенном программировании. Генерируется по сути тот же код только со скрытым преобразованием - и получаем «плюшки» от java.

Отсутствие явно указанных виртуальных функций, отсутствие СВОЙСТВ - и от этого код часто выглядит уродливо-нечитабельный с этими СЕТТЕРАМИ ГЕТТЕРАМИ...

Ну можно еще чего вспомнить...

voodix
()
Ответ на: комментарий от anonymous

Сравнение не совсем корректно же. .NET больше чем фрейморк для гуи, последний же быстрее и менее прожорлив. Перепишем KDE под моно и докупаем ХХ гигабайт оперативки?

nanokot
()
Ответ на: комментарий от voodix

>Отсутствие явно указанных виртуальных функций, отсутствие СВОЙСТВ - и от этого код часто выглядит уродливо-нечитабельный с этими СЕТТЕРАМИ ГЕТТЕРАМИ...

Добавьте сюда отсутствие в Java возможности перегрузки операторов, замыканий, лямбда-выражений, нормального аналога LINQ. И вообще, на фоне c# 4.0 Java как-то серенько уже смотрится. И вся это возня с Ораклом явно ей на пользу не пойдет.

anonymous
()
Ответ на: комментарий от voodix

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

voodix
()
Ответ на: комментарий от anonymous

Аналом можно на Питоне забодяжить

ну если только аналом :)

shty ★★★★★
()
Ответ на: комментарий от nanokot

>Сравнение не совсем корректно же. .NET больше чем фрейморк для гуи, последний же быстрее и менее прожорлив. Перепишем KDE под моно и докупаем ХХ гигабайт оперативки?

При чем тут это? Разговор шел о том, что Qt - ни разу не замена дотнету, просто потому, что это совершенно не сравнимые вещи. Никто не спорит с тем, что в плане разработки GUI Qt очень даже хорош, но дело в том, что на дотнете пишут не только GUI-приложения. И в этой области Qt ничего предложить не может, просто потому, что создан не для этого. Это так сложно понять?

anonymous
()
Ответ на: комментарий от anonymous

> Добавьте сюда отсутствие в Java возможности перегрузки операторов, +1

замыканий, лямбда-выражений, нормального аналога LINQ.

пока этой экзотикой не пользовался.

И вообще, на фоне c# 4.0 Java как-то серенько уже смотрится.

+1 Санки очень упорствуют в своем консерватизме. Только появление .NET сподвигло на некие телодвижения.

voodix
()
Ответ на: комментарий от anonymous

> Да, моно - для энтерпрайза, которое понимает, что человеческое время - дорогое, а машинное - дешевое.

Т.е., то что на том железе C# работает втрое-вдесятеро медленнее - это энтерпрайзу не важно? Тогда это, видимо, не энтерпрайз, а Рога и Копыта.

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

Мой код не течет. И код программеров С++ в нашей компании не течет. Он и не падает, между прочим. Неужели иллюзия 'безопасных' языков не позволяет вам видеть - большинство приличных программ написаны именно на C/C++?

Рынок расставит (вернее уже расставил) точки над i: сравните число вакансии .NET девелоперов и C/C++ и убейте себя, неудачники.

Действительно, расставил. В Мельбурне приличному программеру на C++ (Unix) платят $100K..$110K в год. Приличному программеру на C# - $80K..$90K, но таких вакансий практически нет. Те, что есть - $60K..$65K, и они висят постоянно. Так кто неудачник-то?

HappySquirrel
()
Ответ на: комментарий от voodix

Разумные замечания. Но тянуть MS в Линукс не есть гут именно потому, что MS. Возможно, сообществу (и энтерпрайзу) нужно что-то новое? Что возьмет наработки Java, учтет ошибки, будет кроссплатформенно и без заморочек с лицензированием? Хотя пока это только мечты.

nanokot
()
Ответ на: комментарий от MuZHiK-2

>А ты в курсе, что в некоторых местах флешки втыкать запрещено?

Я в курсе. А вот ты, похоже, нет. Тебе, скорее всего, об этом мальчишки в песочнице рассказали.

Иначе ты бы знал, что там, где забанены флешки и прочие внешние носители — инет тож забанен (или вашу СБ надо экстерменировать за профнепригодность.) И, скорее всего, мобилки тоже.

Так что не надо тут петь военных песен, если слов не знаешь.

ps: или ты не про USB говорил о «некоторых местах» для втыкания флешек?

anonymous
()
Ответ на: комментарий от anonymous

Но и .NET не замена для гуя в линуксе. Бизнес приложения на Mono - возможно, если оно будет запущено в единственном числе на компе.

nanokot
()
Ответ на: комментарий от anonymous

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

Гуилабалка часто полезная штука, не спорю. Но и задротства в ручной разработке ГУИ тоже не вижу нередко это наиболее удобный способ сделать ГУИ.

А вот реальным пацанам, которые будут вбивать код вручную потребуется несколько десятков строк.

Исшо раз повторяю, при выборе правильного инструмента - не десятки

cab ★★★★
()
Ответ на: комментарий от HappySquirrel

>Т.е., то что на том железе C# работает втрое-вдесятеро медленнее - это энтерпрайзу не важно? Тогда это, видимо, не энтерпрайз, а Рога и Копыта

Никто и не заставляет Вас писать на дотнете программы для научных расчетов. А в энтерпрайзе скорость работы системы определяется производительностью СУБД и сервера приложений, но уж никак не клиентского ПО :-D А там, если и не дотнет, то Java, к которой применимы ровно те же претензии к производительности по сравнению с c/c++. Энтерпрайз давно сделал свой выбор, и не в пользу C++.

Мой код не течет. И код программеров С++ в нашей компании не течет. Он и не падает, между прочим.

Ну вот какой Вы молодец, и программеры в Вашей компании молодцы:) Но суровая реальность такова, что не все такие как Вы, и периодически оставляют баги :( Да, согласен, оторвать им всем руки! :-D

Неужели иллюзия 'безопасных' языков не позволяет вам видеть - большинство приличных программ написаны именно на C/C++?

Неужели apache hadoop, jboss, Spring, GlassFish, TomCat - неприличные программы? :-D

Действительно, расставил. В Мельбурне приличному программеру на C++ (Unix) платят $100K..$110K в год. Приличному программеру на C# - $80K..$90K, но таких вакансий практически нет. Те, что есть - $60K..$65K, и они висят постоянно. Так кто неудачник-то?

Действительно, Мельбурн у нас центр Вселенной, аргумент непробиваемый:)

anonymous
()
Ответ на: комментарий от anonymous

>Медленней он работает под лялегом. В винде он летает.

1. Это аргумент в пользу моно или против?

2. клб

anonymous
()
Ответ на: комментарий от jackill

gnome do всего лишь клон katapult.

Ну или того же launchy.

4.2, это клон quicksilver (написанного на Objective C).

Joe_Bishop
()
Ответ на: комментарий от anonymous

Вот вот так же я думал про [вставьте-сюда-ваш-любимый-язык] лет N тому назад, пока не начал сталкиваться с поделками на нем для госсектора. За эти поделки хотелось бить коваными ботинками по @#лищу создателям.

fixed

shty ★★★★★
()
Ответ на: комментарий от los_nikos

А кто виноват что Microsoft начала угрожать судом за исползование Mono всем кроме Novell?

эммм... а пруф иде?

а то мож я уже чего пропустил

shty ★★★★★
()
Ответ на: комментарий от cab

>Исшо раз повторяю, при выборе правильного инструмента - не десятки

Не надо повторять несколько раз, лучше внимательно читайте исходные сообщения и следите за беседой. Никто не спорит с тем, что при использовании спец. фреймворков бывает удобнее генерить GUI из кода, но разве речь шла про это? Конечно же нет! Разговор этот начался после того, как зашла речь о том, что в MonoDevelop при работе с Winforms приходится вручную вбивать десятки строчек кода, который Visual Studio генерит автоматом. Так вот в этом случае, ничего хорошего в этом нет - тупой механический набор текста. Это не имеет ничего общего с тем, что Вы имеете ввиду.

anonymous
()
Ответ на: комментарий от los_nikos

>А кто виноват что Microsoft начала угрожать судом за исползование Mono всем кроме Novell?

4.2

Линус Торвальдс и батька Столлман?

http://www.gnu.org/software/dotgnu/

Батька Столлман после такого вообще пусть помалкивает

anonymous
()

Метки неправильные

Должно быть

Метки: csharp, mono, Мигель, индусы, быдлокод

linuxfan
()
Ответ на: комментарий от anonymous

> Вместо того, чтобы бросить компонент на форму и установить его свойства и обработчики, Вы будете писать несколько десяток строк кода. И что это Вам даст, кроме увеличения ЧСВ? Один раз можно это проделать, чтобы получше понять парадигму GUI в WinForms, но делать это постоянно - чистой воды задротство.

Сравниваем:

1) Находим компонент в палитре. Если палитра большая - от 5 до 30 сек

2) Бросаем его на форму. Некоторое время настраиваем положение и размер - 10 сек, если быстро

3) Настраиваем параметры, цвета, вписываем label, настраиваем выравнивание, генерируем заглушки для событий, если связано с базой - связываем с компонентом базы - 30-60 сек.

Итого имеем 45-100 сек.

Теперь руками в редакторе:

CInput* input = new CInput(«Label», 100, ALIGN_TOP); input->dbConnector(dbConnector,«fieldname»);

У меня заняло примерно 20 сек, но я лежу на диване и пишу на лаптопе. Когда этот кусок повторяется, copy-n-paste ускоряет все примерно втрое. Если же кусок превращается в традицию, его заменяют на производный компонент, вроде:

CInputExt* input = new CinputExt(«Label», dbConnector, «fieldName»); Это уже примерно 10 сек.

А теперь внимание, правильный вопрос: Если визуальное программирование замедляет работу в несколько раз - нахрена оно нужно?

HappySquirrel
()
Ответ на: комментарий от cab

> В программировании есть не только enterpriZe, Z-Series и проча, прикинь. Есть и некоторые исследовательско-прототипные задачи, которые на Java/С* писать влом. Когда дойдет до конечного внедрения, я, может быть, выберу другие инструменты. Может быть.

Мы же договорились о конкретных аргументах, не так ли?

Bioreactor ★★★★★
()

расписал хорошо, но новость всё равно не нужная

Levinskij
()
Ответ на: комментарий от anonymous

анонимус глубоко неправ.

Delphi-way в дотнете (как и в дельфяхи и в лазарусе) жестоко карается последующим сопровождением того, что получится. От полуручного кодирования MVC или чего-то подобного никуда не деться.

Хотя субъективно мне под дотнет клепать код существенно проще, чем под связкой boost+stl (+MFC :) ). Багов меньше удается сделать :D

impfp
()
Ответ на: комментарий от anonymous

> Никто и не заставляет Вас писать на дотнете программы для научных расчетов. А в энтерпрайзе скорость работы системы определяется производительностью СУБД и сервера приложений, но уж никак не клиентского ПО :-D А там, если и не дотнет, то Java, к которой применимы ровно те же претензии к производительности по сравнению с c/c++. Энтерпрайз давно сделал свой выбор, и не в пользу C++.

Фееричный бред. Пару лет назад мне пришлось наладить связь между двумя отделами банка. Писалось это изначально на .Net. Идея была в передаче довольно коротких сообщений, база одного отдела - клиент другого. Пока это было на .Net - round trip запроса был 240ms. Переписали на C++ - стало 65ms. Учитывая, что запросов много (~100K в день) - эффект был значительный. Сами догадаетесь, что там осталось в конце-концов?

Кроме того, что Java, что .Net сильно уступают C/C++ при работе с базой данных на сервере. Разница - иногда 10%-20%, а иногда - в разы. Другое дело, что производительность при работе с базой очень часто определяется самой базой, а не CLI и не тем, что выше.

Ну вот какой Вы молодец, и программеры в Вашей компании молодцы:) Но суровая реальность такова, что не все такие как Вы, и периодически оставляют баги :( Да, согласен, оторвать им всем руки! :-D

Это не реальность - это отсутствие культуры работы. Если частью обычной отладки периодический становится прогон под valgrind (утечки памяти, конфликты, etc) - человек очень быстро учится не наступать на грабли. После чего получаем преимущества скорости C++ и не получаем багливых программ.

Действительно, Мельбурн у нас центр Вселенной, аргумент непробиваемый:)

А до этого точно такая же картина была в San Francisco. Недостаточно?

HappySquirrel
()
Ответ на: комментарий от HappySquirrel

>Сравниваем:

Просто умиляет как Вы пытаетесь выдрать из контекста какой-то частный случай (который не имеет ничего общего с обсуждаемым) и кому-то что-то доказать :-D Но тем не менее:

1) Находим компонент в палитре. Если палитра большая - от 5 до 30 сек

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

2) Бросаем его на форму. Некоторое время настраиваем положение и размер - 10 сек, если быстро

Нуу, допустим, что 10.

3) Настраиваем параметры, цвета, вписываем label, настраиваем выравнивание, генерируем заглушки для событий, если связано с базой - связываем с компонентом базы - 30-60 сек.

Половина из этого вообще-то уже сделана в п.2. Генерация заглушки для события - в большинстве случаев 1с в виде двойного щелчка, если событие какое-то иное, то на пару секунд больше.

На всё про всё выходит около 30 секунд. Теперь смотрим, как это же самое делается с клавиатуры (Вы конечно же помните какую мы тему обсуждаем, а именно работа с WinForms в MonoDevelop). 1) Объявляем объект требуемого класса:

private System.WinForms.Button button1;

2) Создаем этот объект через стандартный конструктор:

this.label1 = new System.WinForms.Button();

3) Задаем объекту требуемые свойства: this.SuspendLayout(); this.button1.Location = new System.Drawing.Point(64, 216); this.button1.Name = «button1»; this.button1.Size = new System.Drawing.Size(160, 24); this.button1.TabIndex = 0; this.button1.Text = «button1»;

4) Цепляем к объекту обработчик: this.button1.Click += new System.EventHandler(this.button1_Click);

5) Пишем этот самый обработчик (включая заголовок, параметры, etc):

private void button1_Click(object sender, System.EventArgs e) { MessageBox.Show(«Hello World!»); }

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

anonymous
()
Ответ на: комментарий от anonymous

А ви, таки, случайно чятики не пишете?

anonymous
()
Ответ на: комментарий от HappySquirrel

Это не реальность - это отсутствие культуры работы. Если частью обычной отладки периодический становится прогон под valgrind (утечки памяти, конфликты, etc) - человек очень быстро учится не наступать на грабли. После чего получаем преимущества скорости C++ и не получаем багливых программ.

если всё так просто тогда странно чего это в продуктах компаний у которых гораздо более серьёзный процесс разработки находятся баги? есть мнение что Вы упрощаете дело - это раз

два - скорость разработки на интерпретируемых языках типа c#, python, java - существенно выше, надеюсь с этим спорить не будете?

shty ★★★★★
()
Ответ на: комментарий от anonymous

> Qt - это по большей части (пусть и не на 100%) GUI-фреймворк, в то время как дотнет - это целая платформа, которая используется далеко не только при разработке GUI.

Лолшто? GUI в Qt от силы процентов 20, если не меньше.

anonymous
()
Ответ на: комментарий от HappySquirrel

Я Вам охотно верю. Более того - можно и на Джаве получить «утечку памяти». Элементарно.

Только почему на dice.com джавистов требуется в 2.5 раза больше С++ников?

Уровень зарплат одинаковый.

Для IBM WS MQ собственно для MQ я могу сделать код на С++. Однако проект бимерской CORBA не пошёл. Заменили WS как Java EE. Да и ранее я работал на IBM VAST и VisualGen- так уж бимеры рекомендовали.

Заговор?

Есть ли на С++ нечто подобное Spring, Hibernate, Wicket?

Причем, не в прототипах, а широкоиспользуемое.

Bioreactor ★★★★★
()
Ответ на: комментарий от anonymous

>Лолшто? GUI в Qt от силы процентов 20, если не меньше.

Давай расскажи, как на Qt сделать Web-сервис, там же больше 80%, не связанных с GUI. Ты ведь намекаешь на то, что Qt - адекватная замена дотнету во всех сферах (про gui никто и не спорит), если снова завёл эту тему :D

anonymous
()
Ответ на: комментарий от anonymous

> 1. Это аргумент в пользу моно или против?
Это аргумент в пользу ущербности paint.net под лялегом.

2. клб

Логопедия — отрасль дефектологии, наука о нарушениях речи, о методах их профилактики, диагностики и устранения.

Вы слышите голоса в своей голове, сидя на лоре?

anonymous
()
Ответ на: комментарий от aldayneko

>Ненужны только умники вроде тебя, которые кроме хелоуворда фиг шо напишут

Откуда дровишки?

anonimus_nax
()
Ответ на: комментарий от Sylvia

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

Как тонко намекнула ;)

ShTH
()
Ответ на: комментарий от ShTH

>Как тонко намекнула ;)

На этот тонкий намек тут уже тонко намекнули, что так тонко намекнуть можно на любое приложение ;)

anonymous
()
Ответ на: комментарий от HappySquirrel

Теперь руками в редакторе:

CInput* input = new CInput(«Label», 100, ALIGN_TOP); input->dbConnector(dbConnector,«fieldname»);


не забудьте настроить ему #include, location, size, maxchars, multiline, readonly, и событие ontextchanged (все по мере необходимости конечно-же).

и да, при визуальном подходе элементы тоже можно копипастить.
мне вообще, была бы ближе разработка интерфейса на чем нибудь декларативном, с подобием code completion - и не код и не визуальщина. Достойных проектов к сожалению пока не встречал.

anonymous
()
Ответ на: комментарий от anonymous

Поставил. Неплохо ишачит под vmware. Правда 512 метров уже маловато. Вобщем. Отличный продукт на базе Сушей. Мигелька молодец. Злопыхатели пусть прикусят языки.

anonymous
()
Ответ на: комментарий от Sylvia

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

Jayrome ★★★★★
()
Ответ на: комментарий от MuZHiK-2

> ну и как твой гноте полноценно заменит мне синхронизацию заметок между домом и работой?

unison/rsync/etc (например на WebDAV акк халявный или ещё куда)
man «unix way»
Можно даже через UbuntuOne синкать если лениво что-то настраивать.

Nao ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.