Skocz do zawartości
"Idzie nowe..." - o zmianach i nie tylko ×
Przeniesienie zakupów z IPS Marketplace / Moving bought items from IPS Marketplace ×

(DP23) Geshi for IP.Board


DawPi

Rekomendowane odpowiedzi

  • Manager

Witam,

mam problem z tą modyfikacją. W sumie to dwa.

Na jeden wydaje mi się, że ja znajdę rozwiązanie -> nie dodaje numerów linii, albo dodaje jeden numer, ale nie w tym rzecz.

Drugi problem to już raczej związany z CSSem.

Muszę znaleźć rozwiązanie jak 'łamać' długie linie kodów, by np. wyglądało to jak tutaj:

http://forum.php.pl/index.php?s=&showt...st&p=582606

Czy ktoś mógłby podać mi kod na 'main' komórkę?

Mam w BBCode coś takiego:

<div class='geshitop'>Geshi</div><div class='geshimain'>[geshilang={option}]{content}[/geshi]</div><br />

I CSS:

.geshimain
{

background: #FFFFFF;
border: 1px dotted #000;
color: #000;
font-family: Courier, Courier New, Verdana, Arial;
margin: 0 auto 0 auto;
padding: 2px;
width: 70%;
height: 200px;
overflow-x:auto;
	white-space:nowrap;

position:absolute;
}

To niezła mieszanka kodu z forum plus kodu matma4u z innego tematu na forum ( tego ). Kod topu kodu jest identyczny jak ten z CODE:

.geshitop,
.codetop,
.sqltop,
.htmltop{
background: #FDDBCC url(2/css_img_code.gif) no-repeat right;
color: #000;
font-weight: bold;
margin: 0 auto 0 auto;
padding: 3px;
}

Czy jakaś mądra głowa pomoże to zrobić poprawnie?

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Uhm, tak też myślałem tylko jak dopasować długość linii do szerokości postu? W % raczej nie pyknie bo wordwrap() tnie po ilości znaków.

Jeśli nikt nie ma pomysłu to trudno - coś się wymyśli. :P

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

DawPi nie wiem czy zagłębiałeś się bardzo w dokumentację Geshi, ale jak chcesz zrobić numerowanie to użyj tego (nie tłumaczę na polski).

To highlight a source with line numbers, you call the enable_line_numbers() method:

$geshi->enable_line_numbers($flag);

Where $flag is one of the following:

* GESHI_NORMAL_LINE_NUMBERS - Use normal line numbering

* GESHI_FANCY_LINE_NUMBERS - Use fancy line numbering

* GESHI_NO_LINE_NUMBERS - Disable line numbers (default)

Example:

$geshi->enable_line_numbers (GESHI_NORMAL_LINE_NUMBERS);

DawPi co do rozwalania layoutu to nie używaj : position: absolute;, właśnie zrobiłęm test i przy użyciu kilku bbcode całkowita kaszana.

Zawijanie długich wyrazów zrób poprzez word-wrap:normal;

46279b204b.png

Rozwiążemy dla Ciebie każde zadanie z matematyki: http://matma4u.pl

Odnośnik do komentarza
Udostępnij na innych stronach

DawPi zresztą z Geshi nie będzie problemu z długimi wyrazami bo tam masz jeszcze coż takiego:

As of GeSHi 1.0.7.2 there is a new header type, that specifies that the code should not be wrapped in anything at all.

To change/set the header to use, you call the set_header_type() method:

$geshi->set_header_type(GESHI_HEADER_DIV);

// or...

$geshi->set_header_type(GESHI_HEADER_PRE); // or...

$geshi->set_header_type(GESHI_HEADER_NONE);

46279b204b.png

Rozwiążemy dla Ciebie każde zadanie z matematyki: http://matma4u.pl

Odnośnik do komentarza
Udostępnij na innych stronach

Ok to działa na 1000%, bbcode musi mieć taką strukturę:

<table style="width:100%;table-layout:fixed;">
  <tr>
     <td>
      <div style='overflow:auto; white-space:nowrap;'>http://forum.invisionize.pl/index.php?showtopic=2589http://forum.invisionize.pl/index.php?showtopic=2589http://forum.invisionize.pl/index.php?showtopic=2589</div> 
      </td>
   </tr>
</table>

46279b204b.png

Rozwiążemy dla Ciebie każde zadanie z matematyki: http://matma4u.pl

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Jakoś tak jakby nie do końca. Tworzy takie coś:

20090313161521.png

Nie idzie takiego utworzyć jak na php*pl:

20090313161556.png

?

sorki do kasacji

Hah. :D Wiem, co było wcześniej. :/

I od razu widzicie ten problem z numeracją stron.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Czyli nadal jest/mam problem z CSSem do tego. Chciałbym taką ramkę jak w CODE/QUOTE itd. z takim 'obcinaniem' linii jak na php*pl. :D

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

DawPi w tym kodzie (oczywiście po Twoich zmianach) zmień ten parametr:

.geshimain
{

background: #FFFFFF;
* 
*
*
*
*
white-space:pre;

}

A w tym zrób tak (chyba że cały css przeniosłeś do tego powyżej)

<table style="width:100%;table-layout:fixed;">
<tr>
<td>
<div style='overflow:auto;white-space:pre;'>http://forum.invisionize.pl/index.php?showtopic=2589http://forum.invisionize.pl/index.php?showtopic=2589http://forum.invisionize.pl/index.php?showtopic=2589</div>
</td>
</tr>
</table>

I zobacz teraz jak numeruje. (powinno numerować)

46279b204b.png

Rozwiążemy dla Ciebie każde zadanie z matematyki: http://matma4u.pl

Odnośnik do komentarza
Udostępnij na innych stronach

Zacznę od uporządkowania css:

.geshimain
{
background: #FAFCFE;
border: 1px dotted #000;
color: #465584;
font-family: Courier, "Courier New", Verdana, Arial;
margin: 0 auto 0 auto;
padding: 2px;
  white-space: pre;
  overflow:auto;
}  
.geshitop,
.codetop,
.sqltop,
.htmltop{
background: #FDDBCC url(2/css_img_code.gif) no-repeat right;
color: #000;
font-weight: bold;
margin: 0 auto 0 auto;
padding: 3px;
}

A teraz bbcode:

<table style="width:100%;table-layout:fixed;">
<tr>
<td>
<div class='geshitop'>Geshi</div>
<div class='geshimain'>
[geshilang={option}]{content}[/geshi]</div>  
</td>
</tr>
</table>

46279b204b.png

Rozwiążemy dla Ciebie każde zadanie z matematyki: http://matma4u.pl

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

No fajnie uporządkowałeś. Okienko już jest. Teraz tylko muszę zrobić tę nieszczęsną numerację.

Szybką edycję zrobiłem - poprawnie parsuje. :D

Screen:

20090313174245.png

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 miesiące temu...

Witam,

Jakieś postępy? Może mógłbym pomóc?

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

Odnośnik do komentarza
Udostępnij na innych stronach

  • Manager

Witaj,

'wszystko' jest oprócz numerów linii oraz trochu błędnego formatowania kodu przy edycji etc. Postaram się niedługo przygotować niepełną instalkę tego, co udało mi się zrobić i jeśli będziesz chciał to Ci to wyślę i zajrzysz. :)

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 3 miesiące temu...
  • Manager

TRACKER: mam z 20 innych projektów do skończenia. Jednak pocieszam się faktem, że nie wybieram się na drugi świat i czasu mam aż nadto. :)

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.