Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Kolorowanie tekstu w Textarea
Forum PHP.pl > Forum > Przedszkole
Weles
Witam!
Od jakiegoś czasu piszę sobie swój system CMS, i zatrzymałem się obecnie na pobieraniu podstron do edycji w Textarea.
Zależy mi bardzo aby tekst który się edytuje był pokolorowany i żeby pisały linijki danego tekstu.
Oprócz Textarea nic nie wpada mi na myśl, a więc potrzebuję czegoś co mi w tym pomoże zrobić na textarea'i.
String Replace to raczej głupi pomysł, i wgl. nie działa.
Funkcja highlight_string koloruje tylko PHP i nie działa w Textarea'i.
Próbowałem także jakiegoś SyntaxHighlighter, działa tak jak chcę, tylko że nie w Textarea'i, tylko wyświetla dane jako zwyczajny tekst..
Zależy mi głównie aby kolorowany był tekst HTML i CSS + opcjonalnie JavaScript.
Czy nie zna ktoś może gotowego rozwiązania, lub jak sam mogę to napisać, na czym, w jaki sposób ?
Pozdrawiam.
vokiel
Poszukaj edytorów WYSIWYG dla stron, jest tego masa, dużo wątków na forum.

Generalnie działa to tak, że taki edytor tekst z textarea wstawia do div'a i go styluje (nie da się ostylować różnorodnie tekstu w textarea). Podczas używania edytora, pisania etc widać efekt końcowy. Po zakończeniu pisania jest on wstawiany do textarea, aby mógł być normalnie obsłużony jak każdy inny element formularza.
Weles
Też szukając na to sposobu natknąłem się na WYSIWYG, ale szukając w necie informacji na ten temat znajdywało mi jakieś programy pod windowsa w formacie .exe ;|
Wiem że piszą o tym kolorowaniu na wielu forach w wielu miejscach, przeleciałem bodajże wszystkie i jednak rozwiązania nie znalazłem..
Dlatego temat zakładam.
Od 8.00 do teraz szukałem rozwiązania, za ten czas trochę linków i sposobów zdążyłem przejrzeć.
lobopol
http://www.queness.com/post/212/10-jquery-...ch-text-editors szukaj w google pod hasłem wysywig javascript polecane fckeditor/tinymce

Ps. 666 post smile.gif
!*!
A jak chcesz napisać coś własnego to też nie problem. Robisz textarea który będzie w formularzu, obok div z contenteditable i jakiś button z execCommand. Przy wysyłaniu formularza całą zawartość diva przerzucasz po prostu do textarea.

Zastosowanie contenteditable ma tą zaletę że nie potrzebujesz do tego żadnych iframe (jakie są często używane w wyżej wymienionych gotowcach lub starych tut.). A w zasadzie tego diva tworzysz przy wczytywaniu strony, a jak ktoś nie będzie miał JS to zobaczy tylko pole textarea.


Edycja:

Chyba wszyscy się zapędziliśmy, autorowi chodziło o kolorowanie składni, więc w edytorach tego nie uzyskasz, potrzebna jest osobna biblioteka np http://shjs.sourceforge.net/ dla JavaScript i GeShi dla php http://qbnz.com/highlighter/ możesz to połączyć z tym co pisałem wyżej, jednak to trochę roboty. Ogólnie to google > "syntax highlighter"

http://codemirror.net/ - kolorowanie składni "na żywo".
Weles
Ło yea, o to mi właśnie chodziło smile.gif
Dzięki wielkie za pomoc.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.