Gå til innhold

Modifisering av Notepad2 (GNU-program)? BBCode


Anbefalte innlegg

Jeg tenkte i går at det kunne vært greit å ha highlighting av BBCode-tagger i Notepad2 da jeg i går satt og skrev litt på en forum-guide (som formaterer vha. BBCode).

 

Jeg prøvde først å rote rundt i diverse menyer, men der fant jeg kun farge- og form-innstillinger av tagger til alt mulig annet.

 

Da så jeg plutselig at Notepad2 var et GNU-program, og at kildekoden derfor lå åpen for alle. Jeg har tidligere prøvd meg på litt Visual Basic (ikke mer enn en ganske avansert kalkulator), og tenkte at jeg kanskje forstod litt hvis jeg grasket tingene nøye (i tillegg til highlighting vha. Notepad2).

 

Kildekoden var veldig pent satt opp, og i tillegg godt dokumentert, så jeg tor jeg har funnet ut at filen style.c er den jeg er ute etter. Jeg forstår prinsippet i store deler av koden (tror jeg), men jeg har litt problemer med å finne enkelte småting (som definering av klammer, attributter osv.).

 

Jeg har heller ikke mulighet (eller kunnskap) om å kompliere disse filene til et fungerende program.

 

Hadde noen vært så grei og tatt en kikk på det og kanskje fått til å lage støtte for BBCode-tagger? Jeg tror det skal være en enkel jobb for noen som forstår all koden der. Det handler jo egentlig bare om å følge malen som allerede er der.

Legger ved zippet kildekode da sidene ser ut til å være nede.

Notepad2_v1.0.12_Kildekode.zip

Endret av endrebjorsvik
Lenke til kommentar
Videoannonse
Annonse
For å kompiliere, trenger man scintilla koden også http://www.scintilla.org/

Jeg har som sagt lite peiling på C-programmering, og enda mindre peiling på stand-alone GUI-systemer (Er det ikke det det er?) som må komplieres sammen med det.

 

Er det noen som har funnet ut av koden, og som vet hvordan man skal utvide den? Min forståelse stopper opp på inndelingen av de "array"'ene (kjente tager, ukjente tager, hvilken tag er hvilken type osv).

 

Kan jo kanskje sende inn en ferdig BBCode'ed versjon til flo's freeware hvis vi får noe ut av dette.

Lenke til kommentar
En mye enklere løsning på problemet er å bruke f.eks Textpad istedefor. Du kan laste ned BBCode support for denne fra deres hjemmesider.

Greit nok det, men jeg liker så godt utseendet og simplisiteten på Notepad2. Selvfølgelig kan TextPad være mer nyttig med markering av indentering, linjehighlight osv, men jeg liker det enkelt og greit.

 

Dessuten hadde det vært moro å sett hvordan man utvider åpen kildekode, og om det er lett eller vanskelig.

:)

 

Edit: Og så vidt jeg forstår er ikke TextPad gratis. Eller?

Endret av endrebjorsvik89
Lenke til kommentar
  • 4 måneder senere...

Bumpetibump. :)

 

Brukte TextPad en stund, men så kom plutselig masse meldinger om at prøvetiden var gått ut osv. Jeg var heller ikke helt fornøyd med highligtingen.

 

Er det mulig å gjøre et forsøk til? Er det noen som har lyst til å prøve seg (jeg har null peiling)?

 

Jeg fant denne metoden i Notepad2 FAQ. Er det ikke ganske rett-frem-programmering?

Could you please explain how to add or modify syntax schemes?

This requires modification of the Notepad2 source code.

 

The Scintilla documentation has an overview of syntax highlighting, and how to write your own lexer, in case the language you'd like to add is not supported by Scintilla.

 

The structures relevant to syntax highlighting can be found in Styles.c of the Notepad2 source code. Add your own structures to the global pLexArray, then adjust NUMLEXERS to the total number of syntax schemes. The style definitions can be found in SciLexer.h of the Scintilla source code.

 

Include the Lex*.cxx files from Scintilla required for your languages in your project and follow the instructions in Readme.txt to rebuild Notepad2. I recommend using Visual Studio .NET 7 or above.

 

På forhånd takk! :)

Lenke til kommentar

Hvis du ser på linje 114-146 så ser det ut som du kan styre hightlighten til HTML og PHP. (Altså endre fargekoden for de forskjellige elementene.)

For å kompilere må du først finne ut alle biblotekene den trenger, og gjerne se om du ikke finner noen dokumentasjon på det.. :)

Endret av zirener
Lenke til kommentar

Jeg er ikke ute etter å forandre noe på verken HTML eller PHP, men å legge til et eget stilark (stylesheet) for BBCode-tagger.

 

Og jeg har egentlig null peiling på biblioteker, C-programmering og kompliering. Det er derfor jeg spør om noen av dere hadde lyst til å gjøre det for meg (er bare snakk om 25 tagger eller så. En fin liste her).

 

Er Scintilla et bibliotek kanskje?

Lenke til kommentar
hm, ser ikke ut som om det er så mange som er interesserte

 

siden du liker dette programmet er det vel greit å høre med personen som har laget det og eventuellt sponse han/hun litt? :)

5461816[/snapback]

Vedkommende har ikke oppdatert programmet siden juni 2004. ;)
Lenke til kommentar
hm, ser ikke ut som om det er så mange som er interesserte

 

siden du liker dette programmet er det vel greit å høre med personen som har laget det og eventuellt sponse han/hun litt? :)

5461816[/snapback]

Vedkommende har ikke oppdatert programmet siden juni 2004. ;)

5465014[/snapback]

Du kan vel prøve SciTE? Den er basert på Scintilla, og for å legge til egne lexere, er det bare å lage en ny fil i en mappe.

Lenke til kommentar
hm, ser ikke ut som om det er så mange som er interesserte

 

siden du liker dette programmet er det vel greit å høre med personen som har laget det og eventuellt sponse han/hun litt? :)

5461816[/snapback]

Vedkommende har ikke oppdatert programmet siden juni 2004. ;)

5465014[/snapback]

Du kan vel prøve SciTE? Den er basert på Scintilla, og for å legge til egne lexere, er det bare å lage en ny fil i en mappe.

5466985[/snapback]

Det var et veldig godt forslag! :)

Programmet er kliss likt Notepad2, bare enda mer avansert og konfigurerbart.

Jeg har brukt det i et par timer nå, og har bestemt meg for å bruke det fremover.

 

Jeg har også sett litt på hvordan man legger til egne lexere, men jeg tror det er noe grunnleggende jeg ikke forstår. Jeg kopierte html.properties og omdøpte den til bbcode.properties, og deretter slettet jeg det som hadde med HTML ol. å gjøre (men beholdt syntaksen) og fylte inn BBCode-tagger osv. Jeg er egentlig ganske sikker på at det ble feil uansett.

Nå ligger bbcode.properties i samme mappe som programmet, men det skjer absolutt ingenting.

Må jeg kompliere programmet på nytt?

Jeg tror man må kunne C/C++ for å lage egne lexere. Stemmer det?

Lenke til kommentar
hm, ser ikke ut som om det er så mange som er interesserte

 

siden du liker dette programmet er det vel greit å høre med personen som har laget det og eventuellt sponse han/hun litt? :)

5461816[/snapback]

Vedkommende har ikke oppdatert programmet siden juni 2004. ;)

5465014[/snapback]

Du kan vel prøve SciTE? Den er basert på Scintilla, og for å legge til egne lexere, er det bare å lage en ny fil i en mappe.

5466985[/snapback]

Det var et veldig godt forslag! :)

Programmet er kliss likt Notepad2, bare enda mer avansert og konfigurerbart.

Jeg har brukt det i et par timer nå, og har bestemt meg for å bruke det fremover.

 

Jeg har også sett litt på hvordan man legger til egne lexere, men jeg tror det er noe grunnleggende jeg ikke forstår. Jeg kopierte html.properties og omdøpte den til bbcode.properties, og deretter slettet jeg det som hadde med HTML ol. å gjøre (men beholdt syntaksen) og fylte inn BBCode-tagger osv. Jeg er egentlig ganske sikker på at det ble feil uansett.

Nå ligger bbcode.properties i samme mappe som programmet, men det skjer absolutt ingenting.

Må jeg kompliere programmet på nytt?

Jeg tror man må kunne C/C++ for å lage egne lexere. Stemmer det?

5470838[/snapback]

SciTE bruker lua som utvidelsesspråk, og skal derfor ikke trenge å rekompileres. Kunne du poste bbcode.properties kanskje?

Lenke til kommentar
SciTE bruker lua som utvidelsesspråk, og skal derfor ikke trenge å rekompileres. Kunne du poste bbcode.properties kanskje?

5471541[/snapback]

Jeg har overhodet ikke peiling på C/C++, så den er nok garantert feil. Jeg har heller ikke funnet noen plass der jeg skal sette klamme-type (<> eller []) eller hvordan jeg skal få inn = og sånt.

 

bbcode.properties.txt (jeg måtte sette inn .txt til slutt for å få lastet den opp på forumet)

 

Edit: Jeg fant dette, men forstår selvfølgelig ikke et kvidder av det. :wallbash:

Endret av endrebjorsvik
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...