В хо­де ра­бо­ты над од­ним проек­том вы­яс­ни­лось:
  • Ока­зы­ва­ет­ся сде­лать про­верку ор­фо­гра­фии, как в лю­би­мом мною идо­ле Ибн-gmail.com очень эле­мен­тар­но. Сто­ит толь­ко восполь­зо­вать­ся ве­ло­си­пе­дом от ком­ра­дов из Orangoo. Единствен­ное "but" - большинство js-фрейм­вор­ков не под­дер­жи­ва­ют транс­до­мен­ные xmlhttp запро­сы. Так что же­ла­тель­но сра­зу же ор­га­ни­зо­вать ми­ни­прок­си к гугл-спел­ле­ру. Од­но но, для это­го ваш php дол­жен быть со­бран с --with-openssl клю­чем (гре­бан­ные па­ра­но­и­ки с их https, ага), или мо­же­те пере­пи­сать функ­цию под curl. Если ни пер­вое, ни вто­рое вы не мо­же­те сде­лать (по при­чи­не кри­визны ва­ших рук или моз­га хо­стера) - мож­но восполь­зо­вать­ся прок­си са­мих оран­гув­цев, из­ме­нив в sendReq.php $google на 'orangoo.com', $path на '/labs/spellchecker/?lang=', уб­рав 'ssl://' в fsockopen и сме­нив порт на 80.
  • Убе­ди­тель­но со­ве­тую ис­поль­зо­вать ти­по­граф сту­дии Ар­те­мия Ле­бе­де­ва. При всей мо­ей не­лю­бви к их конто­ре,тул­за от­лич­но чи­стит текст по­сле ис­поль­зо­ва­ния вся­ких-там fckeditor-ов и про­чей wysiwyg мер­зо­сти (в частно­сти отдель­ный ре­спект за пра­виль­ную расста­нов­ку nobr те­гов). Для уда­лен­но­го до­сту­па мож­но ис­поль­зо­вать их веб-сер­вис.
  • WYSIWYG ре­дак­то­ры - дерь­мо, и, по су­ти, нуж­ны для та­ко­го ти­па кли­ен­тов, ко­то­рые не мо­гут от­личить "бро­взер" от "вор­да", "ворд" от "ко­сын­ки", а "ко­сын­ку" от глав­бу­ха На­де­жды Ни­ко­ла­ев­ны. По­че­му? Да по­смот­ри­те хо­тя бы на "xhtml-valid" код то­го же вы­ше­упо­мя­ну­то­го мною fckeditor-а. Ку­ча лиш­них те­гов, а p, span, p и inner style му­сор про­сту угне­та­ет. Но без preview как-то ну очень то­скли­во по­лу­ча­ет­ся пи­сать... Что же я предла­гаю? Да эле­мен­тар­но, то­пор­но-де­ре­вян­ный способ, ра­бо­та­ет на кли­ен­тах с IQ чуть вы­ше пу­ти­но­поклон­ни­ков. При­мер мо­ей ре­а­ли­за­ции - смот­ри­те по ссыл­ке. На js код не обес­судь­те. Плю­са­ми яв­ляет­ся ми­ни­мум javascript, чи­стый html на вы­хо­де, лег­ко до­ба­вить свои тэги, etc. А если до­ве­сти до ума функ­цию inserttag, то мож­но и кроссбрау­зер­но­стью хва­стать­ся. По­ка ра­бо­та­ет нор­маль­но в firefox и opera.
Вот по­жа­луй и все, что я хо­тел расска­зать. В этом ме­ся­це ско­рее всего больше пи­сать не бу­ду - у ме­ня сес­сия-де­прес­сия вплоть до 25 ян­ва­ря. В кон­це ме­ся­ца пла­ни­рую хо­ро­шую по­куп­ку - но­ут. Так что по­же­лайте мне уда­чи (ну или прокля­ни­те - ко­му что бли­же). Всем по­ка ;)