Seite 2 von 3

Verfasst: 16.02.2005 01:48
von Rob
Ich benutze HTML-Kit. Hat praktisch alles was man zum HTML/CSS/PHP etc. entwickeln braucht. Du kannst deinen lokalen Server angeben und somit die Ausgaben der PHP-Scripte im HTML-Kit Preview Fenster anzeigen lassen (Anleitung).
Wenn du den Cursor über einem PHP-Befehl hast und F1 drückst, kommst du sofort zur entsprechenden Hilfeseite auf php.net (im internen Browser).

Und wenn du dir das Mozilla ActiveX-Control runterlädst, kannst du deine Seiten intern auch mit der Gecko Engine 'previewen', auch im Splitscreen mit IE und Gecko nebeneinander. Sehr praktisch :) (mehr dazu)

Verfasst: 16.02.2005 02:08
von benny
Vielleicht gefällt Dir auch der hier :

http://www.weaverslave.ws/index.39.htm

Verfasst: 16.02.2005 07:46
von DarkDragon
Wenn du meine SyntaxHighlightingLib hast:

Code: Alles auswählen

OnErrorGoto(?ERROR)

Enumeration
  #FILE_NEW
  #FILE_OPEN
  #FILE_SAVEAS
  #FILE_SAVE
  #FILE_PREF
  #FILE_QUIT
  
  #EDIT_COPY
  #EDIT_PASTE
  #EDIT_CUT
  #EDIT_FIND
  #EDIT_FINDNEXT
  #EDIT_REPLACE
EndEnumeration

Enumeration
  #EDIT
  #FUNC
  #HELPFUNC
EndEnumeration

NewList Func.s()

Procedure SortFunctions()
  n = 0
  ResetList(Func())
  While NextElement(Func())
    v = Len(Func())
    e = ListIndex(Func())
    k.s = Func()
    
    m = 0
    While NextElement(Func())
      If Len(Func()) > v
        u.s = Func()
        Func() = k
        SelectElement(Func(), e)
        Func() = u
        m = 1
        n = 1
        Break
      EndIf
    Wend
    
    If m = 0
    SelectElement(Func(), e)
    Else
    SelectElement(Func(), e-1)
    EndIf
  Wend
  ProcedureReturn n
EndProcedure

Procedure.l GetFieldIndex(String.s, Position, Separator.s)
  m = 1
  For x=1 To Position
    If Mid(String, x, Len(Separator)) = Separator
      m + 1
    EndIf
  Next
  ProcedureReturn m
EndProcedure

; Procedure.s GetPHPVariables(Text.s, Separator.s)
;   Shared Result.s
;   Start = FindString(Text, "$", 1)
;   While Start <> 0
;     c.s = ""
;     For k=Start+1 To Len(Text)-1
;       b = PeekB(@Text+k-1)
;       If (b > 'a' And b < 'z') Or (b > 'A' And b < 'Z')
;         c + Chr(b)
;       Else
;         Break
;       EndIf
;     Next
;     Result.s + c.s + Separator
;     Start = FindString(Text, "$", Start+1)
;   Wend
;   ProcedureReturn Result
; EndProcedure

If ReadFile(0, "Functions.txt")
  While Eof(0) = 0
    Line.s = ReadString()
    If Trim(Line) <> ""
    AddElement(Func())
    Func() = Line
    EndIf
  Wend
  CloseFile(0)
EndIf
If SortFunctions() = 1
  If CreateFile(0, "Functions.txt")
    ForEach Func()
      WriteStringN(Func())
    Next
    CloseFile(0)
  EndIf
EndIf

#WindowWidth  = 640
#WindowHeight = 480
#WindowFlags  = #PB_Window_SizeGadget | #PB_Window_MaximizeGadget | #PB_Window_MinimizeGadget | #PB_Window_TitleBar | #PB_Window_ScreenCentered | #PB_Window_SystemMenu

hWnd = OpenWindow(0, 0, 0, #WindowWidth, #WindowHeight, #WindowFlags, "PHP-Editor")

CreateMenu(0, hWnd)
MenuTitle("File")
MenuItem(#FILE_NEW      , "New")
MenuItem(#FILE_OPEN     , "Open...")
MenuItem(#FILE_SAVEAS   , "Save as...")
MenuItem(#FILE_SAVE     , "Save")
MenuBar()
MenuItem(#FILE_PREF     , "Preferences")
MenuBar()
MenuItem(#FILE_QUIT     , "Quit")

MenuTitle("Edit")
MenuItem(#EDIT_COPY     , "Copy")
MenuItem(#EDIT_PASTE    , "Paste")
MenuItem(#EDIT_CUT      , "Cut")
MenuBar()
MenuItem(#EDIT_FIND     , "Find")
MenuItem(#EDIT_FINDNEXT , "Find next")
MenuItem(#EDIT_REPLACE  , "Replace")


CreateGadgetList(WindowID())
EditorGadget(#EDIT, 0, 20, WindowWidth(), WindowHeight()-20)
StringGadget(#FUNC, 0, 0, WindowWidth()-20, 20, "", #PB_String_ReadOnly)
ButtonGadget(#HELPFUNC, WindowWidth()-20, 0, 20, 20, "?")

ClearHighlightingAll(#EDIT, RGB(0, 0, 0), 10, "Arial", 0)

Repeat
  Event = WindowEvent()
  
  Select Event
    Case #PB_Event_Gadget
      If EventGadgetID() = #HELPFUNC
        RunProgram("http://de3.php.net/manual/en/function."+GetGadgetText(#FUNC)+".php")
      EndIf
    Case #WM_KEYUP
      wParam = EventwParam()
      CPos.CHARRANGE
      LineNr = SendMessage_(GadgetID(#EDIT), #EM_EXLINEFROMCHAR, 0, CPos\cpMin)
      SendMessage_(GadgetID(#EDIT), #EM_EXGETSEL, 0, CPos)
      Word.s = StringField(GetGadgetText(#EDIT), GetFieldIndex(GetGadgetText(#EDIT), CPos\cpMin, " "), " ")
      ForEach Func()
        If Left(UCase(Func()), Len(Word)) = UCase(Word)
          SetGadgetText(#FUNC, Func())
        EndIf
      Next
      Line.s = GetGadgetItemText(#EDIT, LineNr, 0)
      ClearHighlightingLine(#EDIT, RGB(0, 0, 0), 10, "Arial", 0)
      SyntaxHighlightingLine(#EDIT, "<?php|?>", "|", RGB(0, 0, 0), RGB(255, 255, 0), 10, "Arial", #CFM_BOLD)
      SyntaxHighlightingLine(#EDIT, "$|and|or|if|else|while|wend|swich|case|Break", "|", RGB(0, 0, 0), RGB(255, 255, 255), 10, "Arial", #CFM_BOLD)
      SyntaxHighlightingLine(#EDIT, Chr(34)+"_+_-_*_/_{_}_%_&_|_(_)_!_=_1_2_3_4_5_6_7_8_9_0", "_", RGB(0, 0, 255), RGB(255, 255, 255), 10, "Arial", 0)
      ForEach Func()
        If FindString(Line, Func(), 1)
          SyntaxHighlightingLine(#EDIT, Func(), "", RGB(255, 0, 0), RGB(255, 255, 255), 11, "Arial", #CFM_BOLD)
        EndIf
      Next
    Case #PB_Event_SizeWindow
      ResizeGadget(#EDIT, 0, 20, WindowWidth(), WindowHeight()-20)
      ResizeGadget(#FUNC, 0, 0, WindowWidth()-20, 20)
      ResizeGadget(#HELPFUNC, WindowWidth()-20, 0, 20, 20)
  EndSelect
  Delay(10)
Until Event = #PB_Event_CloseWindow
End

ERROR:
MessageRequester("", Str(GetErrorLineNR()))
Dann brauchst du noch eine Datei "Functions.txt":
http://www.bradan.net/Functions.txt
[EDIT]
Passt hier nicht rein. Achja: Speichern und Laden funktion musst du halt noch einbauen, ich kopier da nur code raus um ihn in HTML Studio weiter zu bearbeiten.

Verfasst: 16.02.2005 08:27
von Kooky
Danke!
Du hast recht!
Das ist wohlmöglich die beste möglichkeit:
-einfach den Editor selber schreiben :) :wink: <)
mfg. Kooky

Verfasst: 16.02.2005 19:25
von Monstalocke
@bluejoke:Ich bin mir jetzt nicht ganz sicher aber du bist bist doch einer von den skype-freaks ;) schaltmal skype aus und versuch es dann.
@all
ich benutze für html und php und java phase5

Verfasst: 16.02.2005 19:58
von bluejoke
OMG!

Danke, Danke, Danke!
Ich such schon ewig nach dem Grund /:->
:? jetzt muss ich Skype ausschalten, oder igbts da ne Lösung
Sry für das Offtopic-gebrabsel

@DD: geht dein Syntaxhighlighter in einem normalen EditorGadget, oder ist das irgendwas anderes?

@all: wo gibts denn solche Symbole für die Toolbar?

Verfasst: 16.02.2005 20:03
von Kiffi
> @all: wo gibts denn solche Symbole für die Toolbar?

z.B. hier: http://www.vbaccelerator.com/home/Resou ... /index.asp

Grüße ... Kiffi

Verfasst: 16.02.2005 20:24
von bluejoke
Danke!

Ich werd jetzt wohl demnächst irgendeinen Minieditor bauen.
Ich meld mich dann wenn er fertig ist.

Simon

Verfasst: 17.02.2005 08:22
von DarkDragon
@bluejoke: SyntaxHighlightingLib ist fürn EditorGadget.

Verfasst: 21.02.2005 18:49
von Ypser
Kann ConText empfehlen, den benutze ich. Syntax-Highlightning für PHP,
Zeilennummern und sonst kein SchnickSchnack. Bestens! :allright: