My Community
September 07, 2010, 06:11:34 AM *
Welcome, Guest. Please login or register.

Login with username, password and session length
News: QB64 is available for 64-bit Linux!  -  QB64 V0.91 for Windows was released on the 31st of July.
 
   Home   Help Search Login Register  
Pages: [1]
  Print  
Author Topic: Formatting functions according to QB syntax  (Read 2366 times)
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« on: January 24, 2010, 04:19:52 PM »

formatmultispace$ - takes away multiple spaces, if indent is 1 then it ignores the leading spaces.
formatcommaop$ - formats commas and operands including the type suffixes.
formatparanteses$ - formats the paranteses.
formatremovecomma$ - removes unwanted spaces before commas, also adds a space before the first ( in a sub, function or declare statement.
formatkeywords$ - formats the keywords according to a keyword list (array) and a keytype list (array), the keytype should be either "statement" or "function", the numkey parameter should be the number of keys in the list.
formatremovestuff$ - removes unwanted single spaces (and other things) according to what is around it.


the order is important, this is the order I used:
1: formatmultispace$
2: formatcommaop$
3: formatparanteses$
4: formatcommaop$
5: formatremovecomma$
6: formatkeywords$
7: formatremovestuff$
8: formatmultispace$

Code:
FUNCTION formatmultispace$ (text AS STRING, indent)
'formatting multiple spaces to one space

DIM text2 AS STRING

IF LEN(text) >= 1 THEN
IF indent = 1 THEN
FOR start = 1 TO LEN(text)
IF MID$(text, start, 1) <> " " THEN EXIT FOR
NEXT
ELSE
start = 1
END IF
DO
e = INSTR(start, text, " ")
IF e THEN
text = MID$(text, 1, e) + MID$(text, e + 2)
ELSE
formatmultispace$ = text
EXIT DO
END IF
LOOP
END IF
END FUNCTION

FUNCTION formatcommaop$ (text AS STRING)
'formatting comma signs and operands (<=>)

look = 0
IF LEN(text) >= 3 THEN
DO
look = look + 1
IF MID$(text, look, 2) = "=<" THEN MID$(text, look, 2) = "<="
IF MID$(text, look, 2) = "=>" THEN MID$(text, look, 2) = ">="
IF MID$(text, look, 2) = "><" THEN MID$(text, look, 2) = "<>"
IF MID$(text, look, 1) = "=" AND MID$(text, look - 1, 1) <> "<" AND MID$(text, look - 1, 1) <> ">" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "=" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = "<" AND MID$(text, look - 1, 1) <> " " AND MID$(text, look - 1, 1) <> ">" AND MID$(text, look - 1, 1) <> "=" THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "<" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> ">" AND MID$(text, look + 1, 1) <> "=" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = ">" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "=" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = ">" AND MID$(text, look - 1, 1) <> " " AND MID$(text, look - 1, 1) <> "<" THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF MID$(text, look, 1) = "+" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "+" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = "-" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "-" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = "*" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "*" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = "/" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "/" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = "\" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "\" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF MID$(text, look, 1) = "^" AND MID$(text, look - 1, 1) <> " " THEN
text = MID$(text, 1, look - 1) + " " + MID$(text, look)
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "^" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "," AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = ":" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = ";" AND MID$(text, look + 1, 1) <> " " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
'variable types
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "$" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "(" AND MID$(text, look + 1, 1) <> ")" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "%" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "%" AND MID$(text, look + 1, 1) <> "(" AND MID$(text, look + 1, 1) <> ")" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "!" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "(" AND MID$(text, look + 1, 1) <> ")" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
END IF
IF LEN(text) > look THEN
IF MID$(text, look, 1) = "#" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "#" AND MID$(text, look + 1, 1) <> "(" AND MID$(text, look + 1, 1) <> ")" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
IF MID$(text, look, 1) = "&" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "&" AND MID$(text, look + 1, 1) <> "H" AND MID$(text, look + 1, 1) <> "O" AND MID$(text, look + 1, 1) <> "(" AND MID$(text, look + 1, 1) <> ")" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
IF MID$(text, look, 1) = "`" AND MID$(text, look + 1, 1) <> " " AND MID$(text, look + 1, 1) <> "(" AND MID$(text, look + 1, 1) <> ")" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
IF MID$(text, look, 1) = ")" AND (MID$(text, look + 1, 1) = ">" OR MID$(text, look + 1, 1) = "<" OR MID$(text, look + 1, 1) = "=") THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
IF UCASE$(MID$(text, look, 4)) = ")OR " OR UCASE$(MID$(text, look, 5)) = ")XOR " OR UCASE$(MID$(text, look, 5)) = ")AND " OR UCASE$(MID$(text, look, 5)) = ")NOT " OR UCASE$(MID$(text, look, 5)) = ")IMP " THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1)
END IF
IF UCASE$(MID$(text, look, 5)) = " XOR(" OR UCASE$(MID$(text, look, 5)) = " AND(" OR UCASE$(MID$(text, look, 5)) = " NOT(" OR UCASE$(MID$(text, look, 5)) = " IMP(" THEN
text = MID$(text, 1, look + 3) + " " + MID$(text, look + 4)
END IF
IF UCASE$(MID$(text, look, 5)) = ")XOR(" OR UCASE$(MID$(text, look, 5)) = ")AND(" OR UCASE$(MID$(text, look, 5)) = ")NOT(" OR UCASE$(MID$(text, look, 5)) = ")IMP(" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1, 3) + " " + MID$(text, look + 4)
END IF
IF UCASE$(MID$(text, look, 4)) = ")OR(" THEN
text = MID$(text, 1, look) + " " + MID$(text, look + 1, 2) + " " + MID$(text, look + 3)
END IF
IF UCASE$(MID$(text, look, 4)) = " OR(" THEN
text = MID$(text, 1, look + 2) + " " + MID$(text, look + 3)
END IF
END IF
IF look >= LEN(text) THEN EXIT DO
LOOP
END IF
formatcommaop$ = text
END FUNCTION

FUNCTION formatparanteses$ (text AS STRING)
IF LEN(text) >= 1 THEN
look = 0
DO
look = look + 1
IF LEN(text) >= look + 1 THEN
IF MID$(text, look, 1) = "(" AND MID$(text, look + 1, 1) = " " AND LEN(text) <> look THEN
text = MID$(text, 1, look) + MID$(text, look + 2)
look = look - 1
END IF
END IF
IF look > LEN(text) THEN EXIT DO
LOOP
look = 0
DO
look = look + 1
IF MID$(text, look, 1) = ")" AND MID$(text, look - 1, 1) = " " AND LEN(text) <> look THEN
text = MID$(text, 1, look - 2) + MID$(text, look)
look = look - 1
END IF
IF look > LEN(text) THEN EXIT DO
LOOP
look = 0
DO
look = look + 1
IF MID$(text, look, 1) = "(" AND MID$(text, look - 1, 1) = " " AND LEN(text) <> look THEN
IF look - 2 > 1 THEN looky = ASC(MID$(text, look - 2, 1))
IF looky = 96 OR looky = 126 OR (looky >= 34 AND looky < 42) OR looky = 33 OR looky = 32 OR (looky > 47 AND looky < 58) OR (looky > 64 AND looky < 91) OR (looky > 96 AND looky < 123) THEN
text = MID$(text, 1, look - 2) + MID$(text, look)
look = look - 1
END IF
END IF
IF look >= LEN(text) THEN EXIT DO
LOOP
END IF
formatparanteses$ = text
END FUNCTION

FUNCTION formatremovecomma$ (text AS STRING)
DO
lol = lol + 1
checking$ = " ,"
remove = 1
IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
IF lol > 2 THEN lol = lol - 1
END IF
LOOP UNTIL lol >= LEN(text)

IF LCASE$(MID$(LTRIM$(text), 1, 9)) = "function " OR LCASE$(MID$(LTRIM$(text), 1, 4)) = "sub " OR LCASE$(MID$(LTRIM$(text), 1, 8)) = "declare " THEN
paraloc = INSTR(1, text, "(")
IF paraloc THEN
IF MID$(text, paraloc - 1, 1) <> " " THEN text = MID$(text, 1, paraloc - 1) + " " + MID$(text, paraloc)
END IF
END IF
formatremovecomma$ = text
END FUNCTION

FUNCTION formatkeywords$ (text AS STRING, numkey, keyword() AS STRING, keytype() AS STRING)
'keytype can be function or statement (operators etc. formats as statements), "(function)" or "(statement)" works too.

FOR keynum = 1 TO numkey
    morekey = 1
    DO
        startofloop:
        posikey = INSTR(morekey, LCASE$(text), LCASE$(keyword(keynum)))
        lenokey = LEN(keyword(keynum))
        IF posikey THEN
            'found keyword, now determine if it is a valid one.
            datafound = 0
            FOR chdata = posikey TO 1 STEP -1
                IF MID$(LCASE$(text), posikey, lenokey) = "data" THEN EXIT FOR
                IF chdata > 1 THEN
                    IF MID$(text, chdata, 1) = ":" THEN EXIT FOR
                    IF LCASE$(MID$(text, chdata, 6)) = " data " THEN datafound = 1: EXIT FOR
                END IF
                IF chdata = 1 AND LCASE$(MID$(text, chdata, 5)) = "data " THEN datafound = 1: EXIT FOR
            NEXT
            IF datafound = 1 THEN morekey = posikey + 1: GOTO startofloop
            morekey = posikey + 1
            IF posikey = 1 THEN
                'it starts at the first position so no need to check that.
                'checking the end position:
                IF lenokey < LEN(text) THEN
                    ascii = ASC(text, lenokey + 1)
                    IF ((ascii >= 32 AND ascii < 48) OR (ascii > 57 AND ascii < 63)) AND ascii <> 46 THEN
                        IF INSTR(1, keytype(keynum), "statement") THEN
                            IF ascii = 32 OR ascii = 0 THEN MID$(text, 1, lenokey) = UCASE$(MID$(text, 1, lenokey))
                            IF ascii <> 32 AND ascii <> 0 AND ascii <> 58 AND ascii <> 59 THEN text = UCASE$(MID$(text, 1, lenokey)) + " " + MID$(text, lenokey + 1) ELSE text = UCASE$(MID$(text, 1, lenokey)) + MID$(text, lenokey + 1)
                        END IF
                    END IF
                END IF
                IF lenokey = LEN(text) THEN text = UCASE$(text)
            END IF
            IF posikey > 1 THEN
                fascii = ASC(text, posikey - 1)
                IF ((fascii >= 32 AND fascii < 48) OR (fascii > 57 AND fascii < 63)) AND fascii <> 46 THEN
                    validkey = 0
                    IF posikey + lenokey > LEN(text) THEN validkey = 1
                    IF posikey + lenokey <= LEN(text) THEN
                        EASCII = ASC(text, posikey + lenokey)
                        IF ((EASCII >= 32 AND EASCII < 48) OR (EASCII > 57 AND EASCII < 63)) AND EASCII <> 46 THEN
                            validkey = 1
                        END IF
                    END IF
                    IF validkey = 1 THEN

                        IF INSTR(1, keytype(keynum), "statement") THEN
                            IF EASCII = 32 OR EASCII = 0 THEN MID$(text, posikey, lenokey) = UCASE$(MID$(text, posikey, lenokey))
                            IF EASCII <> 32 AND EASCII <> 0 AND EASCII <> 58 AND EASCII <> 59 THEN text = MID$(text, 1, posikey - 1) + UCASE$(MID$(text, posikey, lenokey)) + " " + MID$(text, posikey + lenokey) ELSE text = MID$(text, 1, posikey - 1) + UCASE$(MID$(text, posikey, lenokey)) + MID$(text, posikey + lenokey)
                            IF fascii <> 32 AND fascii <> 0 THEN text = MID$(text, 1, posikey - 1) + " " + MID$(text, posikey)
                        ELSE
                            MID$(text, posikey, lenokey) = UCASE$(MID$(text, posikey, lenokey))
                        END IF
                    END IF
                END IF
            END IF
        END IF
    LOOP UNTIL posikey = 0
NEXT

formatkeywords$ = text
END FUNCTION

FUNCTION formatremovestuff$ (text AS STRING)
'This function removes unwanted single spaces.
'It also deals with other things related to removal.
IF LEN(text) >= 2 THEN
    DO
        lol = lol + 1
        checking$ = "mid$ ("
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( mid$"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( screen"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "= screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "+ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "- screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "(screen ("
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "^ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "\ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "/ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " or screen ("
        remove = 11
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " and screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " xor screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " imp screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " not screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " inkey$ )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( inkey$"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " integer "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " single "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " double "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " long "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " then "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND (lol + remove + 1 > LEN(text)) THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "call interruptx ("
        remove = 16
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            MID$(text, lol + 4, LEN(checking$)) = " InterruptX ("
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( _clipboard$"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "as string ,"
        remove = 10
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "as string )"
        remove = 10
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " integer ,"
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " integer )"
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " as # "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "print # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "input # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "get # "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "put # "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "write # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "close # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " print # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " input # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " get # "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " put # "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " write # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " close # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " long ,"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " long )"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " single ,"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " single )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " double ,"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " double )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _float ,"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _float )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _bit ,"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _bit )"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " any ,"
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " any )"
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _byte ,"
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _byte )"
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _integer64 ,"
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _integer64 )"
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " $"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = " %"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = " !"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = " :"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = " ,"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol <= 2 THEN text = LTRIM$(text)
        END IF
        checking$ = " ;"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = " & "
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = "= ="
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = "= +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "* +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "/ +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "- +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "^ +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "\ +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "> - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "> +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "< - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "< +"
        remove = 3
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "<> - "
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "<> +"
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = ">= +"
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "<= +"
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "> >"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "< <"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = "+ +"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = "$ ,"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = "+ - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "= - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "- - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "* - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "^ - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = ", - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "; - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( -"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " or - "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " and - "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " xor - "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " imp - "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " not - "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " to - "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " step - "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " case - "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " data - "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "case - "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "data - "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " )"
        remove = 1
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        checking$ = "( "
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            IF lol >= 1 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 1 THEN lol = lol - 1
        END IF
    LOOP UNTIL lol >= LEN(text)
END IF
formatremovestuff$ = text
END FUNCTION

Note; replace formatremovestuff$ with the version at the last post, since this post isn't updated anymore due to size restrictions.
« Last Edit: April 02, 2010, 06:46:47 PM by Cyperium » Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Clippy
Hero Member
*****
Posts: 2151


I LOVE π = 4 * ATN(1)


Email
« Reply #1 on: January 24, 2010, 04:56:03 PM »

Did you think about:

 SELECT CASE mid$(text,look,2)
      CASE "=<": mid$(text,look,2) = "<="

Ted
Logged

Download my Q-basics Demonstrator here: http://dl.dropbox.com/u/8440706/Q-Basics.zip
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #2 on: January 24, 2010, 05:28:32 PM »

Yes Cheesy, even ><!

Code:
       if mid$(text,look,2) = "=<" then mid$(text,look,2) = "<="
        if mid$(text,look,2) = "=>" then mid$(text,look,2) = ">="
        if mid$(text,look,2) = "><" then mid$(text,look,2) = "<>"

Didn't use SELECT CASE though, the issues were too specific.

The - sign is somewhat a complex issue (yes, I see everything as issues) since it can be formatted "a = -1" as well as "a = a - 1", will add that ability later. Also I have edited the code to include support for the - sign (the a = a - 1 version).
« Last Edit: January 24, 2010, 05:36:18 PM by Cyperium » Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Clippy
Hero Member
*****
Posts: 2151


I LOVE π = 4 * ATN(1)


Email
« Reply #3 on: January 24, 2010, 05:50:09 PM »

Well I don't see why it couldn't be used. But it is already coded so why change it.? It would have saved some repetitious typing though...

You can never figure out what a person will type, but QB managed -1 well. It knew somehow. How about if there is a variable on both sides of the = sign it becomes - 1? I dunno.
Logged

Download my Q-basics Demonstrator here: http://dl.dropbox.com/u/8440706/Q-Basics.zip
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #4 on: January 24, 2010, 05:57:36 PM »

Yes, I will have to think about it for a while. I'm sure a solution pops up sooner or later (it's probably easier than I think though, I have a tendency to complicate things).

Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
urganda
Newbie
*
Posts: 22


Email
« Reply #5 on: January 25, 2010, 08:39:07 AM »

Hey, that would be very useful to me, since my gwbasic binary -> gwbasic ascii conversor does not make a good management of spaces.

I've found very gwbasic programs where I typed "=>" instead of ">=", also. Modern basics treat "=>" as a special operator, old qbasic replaces it with ">=", gw-basic treats both operators as the same operator. So having a conversion utility is good for me.

I thank you for not using "CASE" instructions... that will increase backwards portability in my program...
Logged
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #6 on: January 25, 2010, 09:34:42 AM »

Glad to hear it will be of use to you!

Yes, the reason I used IF statements is that they are easier to manage, especially when I am uncertain as to what special cases might exist in each formatting (better to treat each one individually).
Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Clippy
Hero Member
*****
Posts: 2151


I LOVE π = 4 * ATN(1)


Email
« Reply #7 on: January 25, 2010, 12:14:32 PM »

Cy, I liked you code so much that I used the first 3 in a SELECT CASE demonstration of editing text. I had been looking for something like that.

The majority of your other tests check 2 values so SELECT CASE would not have been able to be used anyhow.

Ted
Logged

Download my Q-basics Demonstrator here: http://dl.dropbox.com/u/8440706/Q-Basics.zip
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #8 on: January 26, 2010, 09:41:20 AM »

Ok, glad to hear that. I just noticed a small bug with the formatparanteses$ function, since I've used the formatting on the code I posted I could see that it doesn't add a space before the paranteses since it is treated as a variable:

Example:

avariable(nospace)

OR (space)

This "how to discern variables from statements" might need checking valid statements. I would think that QB did this by analysing the code first when loading it into memory (as tokens), I won't deal with it that way but I might try something similiar, I need to recognise statements anyway when doing uppercasing and a ordinary statement (as in 'not function') should always have a space in front of it anyway (or a semicolon/comma) so I could check for that in the formatuppercase$ function I will be doing.

In my QB64 editor program I noticed that there is a bug with the REM formatting, but this doesn't have to do with the functions posted here but rather how the program takes the string apart.


I think that the -1 issue might be as simple as checking if there is a operand (=,+,-,etc.) 2 columns before the minus sign (then it shouldn't add the space and if there is a space - remove it), will try that later.
« Last Edit: January 26, 2010, 09:48:22 AM by Cyperium » Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Galleon
Administrator
Hero Member
*******
Posts: 1297


Email
« Reply #9 on: January 26, 2010, 01:02:43 PM »

Quote
This "how to discern variables from statements" might need checking valid statements.
Hence why auto-formatting is integrated into the QB64 compiler. The IDE 'module' simply checks to see whether an auto-formatted version of a line is available after passing it to the compiler. I'm interested in where you're going with this Cyperium, but I can tell you that getting the spacing perfect in your program will require a lot more work.
Logged
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #10 on: January 27, 2010, 11:27:05 AM »

Indeed that might be the case, I'm going along with this as I see it right now as I have little to none experience with this before.

I'm glad that it formatted almost everything correct in everything I tried though, if you have examples where the program would fail I would be glad to hear it, though I encourage you to work on QB64 instead Smiley lol.
Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Galleon
Administrator
Hero Member
*******
Posts: 1297


Email
« Reply #11 on: February 13, 2010, 02:44:54 PM »

Code:
OPEN "myfile.bin" FOR RANDOM SHARED AS #1 LEN=6*a
Logged
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #12 on: February 13, 2010, 04:32:19 PM »

The current version of the editor formats it as this...
Code:
OPEN "myfile.bin" FOR RANDOM SHARED AS # 1 LEN = 6 * a

Notice the # 1.

I solved it with this.

Code:
       checking$ = " as # "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF

Where lol just loops to the len(text), this way I can solve the "quirks".

Thank you Galleon, I feel bad that I didn't report the DATA problem right away, will do if anything similar pops up!


EDIT: I have edited the OP with the changes and added the other formatting functions that I use for the editor. I also updated all the functions to their latest version.


Here's the DATA I use for the formatkeywords$ function:
Code:
DATA "_ALPHA", "(function)", "_ALPHA32", "(function)", "_AUTODISPLAY", "(statement)", "_BACKGROUNDCOLOR", "(function)", "_BIT", "(statement)", "_BLEND", "(statement)", "_BLEND", "(function)", "_BLUE", "(function)", "_BLUE32", "(function)", "_BYTE", "(statement)"
DATA "_CLEARCOLOR", "(statement)", "_CLEARCOLOR", "(function)", "_CLIP", "(statement)", "_CLIPBOARD$", "(function)", "_CLIPBOARD$", "(statement)", "_CONNECTED", "(function)", "_CONNECTIONADDRESS", "(function)", "_COPYIMAGE", "(function)", "_COPYPALETTE", "(statement)", "_CV", "(function)"
DATA "_DEFAULTCOLOR", "(function)", "_DEFINE", "(statement)", "_DELAY", "(statement)", "_DEST", "(statement)", "_DEST", "(function)", "_DISPLAY", "(statement)", "_DISPLAY", "(function)", "_DONTBLEND", "(statement)", "_ERRORLINE", "(function)", "_EXIT", "(function)"
DATA "_FLOAT", "(statement)", "_FONT", "(statement)", "_FONT", "(function)", "_FONTHEIGHT", "(function)", "_FONTWIDTH", "(function)", "_FREEFONT", "(statement)", "_FREEIMAGE", "(statement)", "_FREETIMER", "(function)", "_FULLSCREEN", "(function)", "_FULLSCREEN", "(statement)"
DATA "_GREEN", "(function)", "_GREEN32", "(function)", "_HEIGHT", "(function)", "_ICON", "(statement)", "_INTEGER64", "(statement)", "_LIMIT", "(statement)", "_LOADFONT", "(function)", "_LOADIMAGE", "(function)", "_MK$", "(function)", "_MOUSEBUTTON", "(function)"
DATA "_MOUSEHIDE", "(statement)", "_MOUSEINPUT", "(function)", "_MOUSESHOW", "(statement)", "_MOUSEWHEEL", "(function)", "_MOUSEX", "(function)", "_MOUSEY", "(function)", "_NEWIMAGE", "(function)", "_OPENCLIENT", "(function)", "_OPENCONNECTION", "(function)", "_OPENHOST", "(function)"
DATA "_PALETTECOLOR", "(statement)", "_PALETTECOLOR", "(function)", "_PIXELSIZE", "(function)", "_PRINTMODE", "(statement)", "_PRINTMODE", "(function)", "_PRINTSTRING", "(statement)", "_PRINTWIDTH", "(function)", "_PUTIMAGE", "(statement)", "_RED", "(function)", "_RED32", "(function)"
DATA "_RGB", "(function)", "_RGB32", "(function)", "_RGBA", "(function)", "_RGBA32", "(function)", "_ROUND", "(function)", "_SETALPHA", "(statement)", "_SNDBAL", "(statement)", "_SNDCLOSE", "(statement)", "_SNDCOPY", "(function)", "_SNDGETPOS", "(function)"
DATA "_SNDLEN", "(function)", "_SNDLIMIT", "(statement)", "_SNDLOOP", "(statement)", "_SNDOPEN", "(function)", "_SNDPAUSE", "(statement)", "_SNDPAUSED", "(function)", "_SNDPLAY", "(statement)", "_SNDPLAYCOPY", "(statement)", "_SNDPLAYFILE", "(statement)", "_SNDPLAYING", "(function)"
DATA "_SNDSETPOS", "(statement)", "_SNDSTOP", "(statement)", "_SNDVOL", "(statement)", "_SOURCE", "(statement)", "_SOURCE", "(function)", "_TITLE", "(statement)", "_UNSIGNED", "(statement)", "_WIDTH", "(function)", "ABS", "(function)", "ABSOLUTE", "(statement)"
DATA "ACCESS", "(statement)", "ALIAS", "(statement)", "AND", "(statement)", "AND", "(statement)", "ANY", "(statement)", "APPEND", "(statement)", "AS", "(statement)", "ASC", "(function)", "ATN", "(function)", "BASE", "(statement)"
DATA "BEEP", "(statement)", "BINARY", "(statement)", "BLOAD", "(statement)", "BSAVE", "(statement)", "BYVAL", "(statement)", "CALL", "(statement)", "CALL ABSOLUTE", "(statement)", "CALLS", "(statement)", "CASE", "(statement)", "CASE ELSE", "(statement)"
DATA "CDBL", "(function)", "CDECL", "(statement)", "CHAIN", "(statement)", "CHDIR", "(statement)", "CHR$", "(function)", "CINT", "(function)", "CIRCLE", "(statement)", "CLEAR", "(statement)", "CLNG", "(function)", "CLOSE", "(statement)"
DATA "CLS", "(statement)", "COLOR", "(statement)", "COM", "(statement)", "COMMAND$", "(function)", "COMMON", "(statement)", "COMMON SHARED", "(statement)", "CONST", "(statement)", "COS", "(function)", "CSNG", "(function)", "CSRLIN", "(function)"
DATA "CVD", "(function)", "CVDMBF", "(function)", "CVI", "(function)", "CVL", "(function)", "CVS", "(function)", "CVSMBF", "(function)", "DATA", "(statement)", "DATE$", "(function)", "DATE$", "(statement)", "DECLARE", "(statement)"
DATA "DECLARE", "(statement)", "DEF FN", "(statement)", "DEF SEG", "(statement)", "DEFDBL", "(statement)", "DEFINT", "(statement)", "DEFLNG", "(statement)", "DEFSNG", "(statement)", "DEFSTR", "(statement)", "DIM", "(statement)", "DO", "(statement)"
DATA "DOUBLE", "(statement)", "DRAW", "(statement)", "$DYNAMIC", "(statement)", "ELSE", "(statement)", "ELSEIF", "(statement)", "END", "(statement)", "END FUNCTION", "(statement)", "END IF", "(statement)", "END SELECT", "(statement)", "END SUB", "(statement)"
DATA "END TYPE", "(statement)", "ENVIRON", "(statement)", "ENVIRON$", "(function)", "EOF", "(function)", "EQV", "(statement)", "ERASE", "(statement)", "ERDEV", "(function)", "ERDEV$", "(function)", "ERL", "(function)", "ERR", "(function)"
DATA "ERROR", "(statement)", "EXIT", "(statement)", "EXIT DEF", "(statement)", "EXIT DO", "(statement)", "EXIT FOR", "(statement)", "EXIT FUNCTION", "(statement)", "EXIT SUB", "(statement)", "EXP", "(function)", "FIELD", "(statement)", "FILEATTR", "(function)"
DATA "FILES", "(statement)", "FIX", "(function)", "FOR", "(statement)", "FRE", "(function)", "FREEFILE", "(function)", "FUNCTION", "(statement)", "GET", "(statement)", "GET", "(statement)", "GET", "(statement)", "GOSUB", "(statement)"
DATA "GOTO", "(statement)", "HEX$", "(function)", "IF", "(statement)", "IMP", "(statement)", "$INCLUDE", "(statement)", "INKEY$", "(function)", "INP", "(function)", "INPUT", "(statement)", "INPUT", "(statement)", "INPUT", "(statement)"
DATA "INPUT", "(statement)", "INPUT$", "(function)", "INSTR", "(function)", "INT", "(function)", "INTEGER", "(statement)", "INTERRUPT", "(statement)", "INTERRUPTX", "(statement)", "IOCTL", "(statement)", "IOCTL$", "(function)", "IS", "(statement)"
DATA "KEY", "(statement)", "KEY", "(statement)", "KILL", "(statement)", "LBOUND", "(function)", "LCASE$", "(function)", "LEFT$", "(function)", "LEN", "(function)", "LET", "(statement)", "LINE", "(statement)", "LINE INPUT", "(statement)"
DATA "LINE INPUT", "(statement)", "LIST", "(statement)", "LOC", "(function)", "LOCAL", "(statement)", "LOCATE", "(statement)", "LOCK", "(statement)", "LOF", "(function)", "LOG", "(function)", "LONG", "(statement)", "LOOP", "(statement)"
DATA "LPOS", "(function)", "LPRINT", "(statement)", "LPRINT USING", "(statement)", "LSET", "(statement)", "LTRIM$", "(function)", "MID$", "(function)", "MID$", "(statement)", "MKD$", "(function)", "MKDIR", "(statement)", "MKDMBF$", "(function)"
DATA "MKI$", "(function)", "MKL$", "(function)", "MKS$", "(function)", "MKSMBF$", "(function)", "MOD", "(statement)", "NAME", "(statement)", "NEXT", "(statement)", "NOT", "(statement)", "OCT$", "(function)", "OFF", "(statement)"
DATA "ON", "(statement)", "ON COM", "(statement)", "ON ERROR", "(statement)", "ON KEY", "(statement)", "ON PEN", "(statement)", "ON PLAY", "(statement)", "ON STRIG", "(statement)", "ON TIMER", "(statement)", "ON UEVENT", "(statement)", "ON", "(statement)"
DATA "OPEN", "(statement)", "OPEN COM", "(statement)", "OPTION BASE", "(statement)", "OR", "(statement)", "OR", "(statement)", "OUT", "(statement)", "OUTPUT", "(statement)", "PAINT", "(statement)", "PALETTE", "(statement)", "PCOPY", "(statement)"
DATA "PEEK", "(function)", "PEN", "(function)", "PEN", "(statement)", "PLAY", "(function)", "PLAY", "(statement)", "PMAP", "(function)", "POINT", "(function)", "POKE", "(statement)", "POS", "(function)", "PRESET", "(statement)"
DATA "PRINT", "(statement)", "PRINT", "(statement)", "PRINT", "(statement)", "PRINT USING", "(statement)", "PRINT USING", "(statement)", "PSET", "(statement)", "PUT", "(statement)", "PUT", "(statement)", "PUT", "(statement)", "RANDOM", "(statement)"
DATA "RANDOMIZE", "(statement)", "READ", "(statement)", "REDIM", "(statement)", "REM", "(statement)", "RESET", "(statement)", "RESTORE", "(statement)", "RESUME", "(statement)", "RETURN", "(statement)", "RIGHT$", "(function)", "RMDIR", "(statement)"
DATA "RND", "(function)", "RSET", "(statement)", "RTRIM$", "(function)", "RUN", "(statement)", "SADD", "(function)", "SCREEN", "(function)", "SCREEN", "(statement)", "SEEK", "(function)", "SEEK", "(statement)", "SELECT CASE", "(statement)"
DATA "SETMEM", "(function)", "SGN", "(function)", "SHARED", "(statement)", "SHELL", "(statement)", "SIGNAL", "(statement)", "SIN", "(function)", "SINGLE", "(statement)", "SLEEP", "(statement)", "SOUND", "(statement)", "SPACE$", "(function)"
DATA "SPC", "(function)", "SQR", "(function)", "STATIC", "(statement)", "$STATIC", "(statement)", "STEP", "(statement)", "STICK", "(function)", "STOP", "(statement)", "STR$", "(function)", "STRIG", "(function)", "STRIG", "(statement)"
DATA "STRING", "(statement)", "STRING$", "(function)", "SUB", "(statement)", "SWAP", "(statement)", "SYSTEM", "(statement)", "TAB", "(function)", "TAN", "(function)", "THEN", "(statement)", "TIME$", "(function)", "TIME$", "(statement)"
DATA "TIMER", "(function)", "TIMER", "(statement)", "TO", "(statement)", "TROFF", "(statement)", "TRON", "(statement)", "TYPE", "(statement)", "UBOUND", "(function)", "UCASE$", "(function)", "UEVENT", "(statement)", "UNLOCK", "(statement)"
DATA "UNTIL", "(statement)", "VAL", "(function)", "VARPTR", "(function)", "VARPTR$", "(function)", "VARSEG", "(function)", "VIEW", "(statement)", "VIEW PRINT", "(statement)", "WAIT", "(statement)", "WEND", "(statement)", "WHILE", "(statement)"
DATA "WHILE", "(statement)", "WIDTH", "(statement)", "WINDOW", "(statement)", "WRITE", "(statement)", "WRITE", "(statement)", "XOR", "(statement)", -1, -1

Just loop through it until the string returns "-1".

I did it like this:

Code:
DO
    READ dummy$
    READ dummy$
    IF dummy$ = "-1" THEN EXIT DO
    numkey = numkey + 1
LOOP

DIM SHARED keyword(numkey) AS STRING
DIM SHARED keytype(numkey) AS STRING

RESTORE

FOR keynum = 1 TO numkey
    READ keyword(keynum)
    READ keytype(keynum)
NEXT

I just realised that this is not QBASIC compatible anymore, to make it QBASIC compatible search and replace all occurances of ASC that use the second parameter with ASC2 (be sure to verify each find to see if the second parameter is used) and use this function:

Code:
FUNCTION ASC2 (text, num)
ASC2 = ASC(MID$(text, num, 1))
END FUNCTION
« Last Edit: February 26, 2010, 04:05:20 PM by Cyperium » Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Cyperium
Hero Member
*****
Posts: 956


Original QB!


Email
« Reply #13 on: March 16, 2010, 06:30:10 PM »

The formatremovestuff$ function has been updated again to format the define statements properly.

Code:
FUNCTION formatremovestuff$ (text AS STRING)
IF LEN(text) >= 2 THEN
    DO
        lol = lol + 1
        checking$ = "def"
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            notok = 0
            IF lol > 1 THEN IF MID$(text, lol - 1, 1) <> CHR$(32) THEN notok = 1
            IF MID$(LCASE$(text), lol + 3, 4) <> "int " AND  MID$(LCASE$(text), lol + 3, 4) <> "str " AND MID$(LCASE$(text), lol + 3, 4) <> "dbl " AND  MID$(LCASE$(text), lol + 3, 4) <> "lng " AND MID$(LCASE$(text), lol + 3, 4) <> "sng " THEN notok = 1
            IF notok = 0 THEN
                further = 0
                DO
                    IF LEN(text) > lol + 9 + further THEN
                        IF ASC(text, lol + 9 + further) = ASC("-") AND ASC(text, lol + 10 + further) <> ASC(",") THEN
                            text = MID$(text, 1, lol + 9 + further - 2) + MID$(text, lol + 9 + further)
                        END IF
                        IF ASC(text, lol + 8 + further) = ASC("-") THEN
                            text = MID$(text, 1, lol + 10 - 2 + further) + MID$(text, lol + 10 + further)
                        END IF
                    END IF
                    IF LEN(text) > lol + 7 + further THEN
                        IF ASC(text, lol + 7 + further) = ASC("-") THEN
                            text = MID$(text, 1, lol + 9 - 2 + further) + MID$(text, lol + 9 + further)
                        END IF
                    END IF
                    IF LEN(text) > lol + 8 + further THEN
                        IF ASC(text, lol + 9 + further) = ASC("-") THEN
                            text = MID$(text, 1, lol + 9 - 2 + further) + MID$(text, lol + 9 + further)
                        END IF
                    END IF
                    MID$(text, lol + 7 + further, 1) = UCASE$(MID$(text, lol + 7 + further, 1))
                    MID$(text, lol + 8 + further, 1) = UCASE$(MID$(text, lol + 8 + further, 1))
                    MID$(text, lol + 9 + further, 1) = UCASE$(MID$(text, lol + 9 + further, 1))
                    IF MID$(text, lol + 10 + further, 1) = "," OR MID$(text, lol + 9 + further, 1) = "," OR MID$(text, lol + 8 + further, 1) = "," THEN
                        IF MID$(text, lol + 10 + further, 1) = "," THEN further = further + 5
                        IF MID$(text, lol + 9 + further, 1) = "," THEN further = further + 4
                        IF MID$(text, lol + 8 + further, 1) = "," THEN further = further + 3
                    ELSE
                        further = 0
                    END IF
                LOOP UNTIL further = 0
            END IF
        END IF
        checking$ = "_define "
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            notok = 0
            IF lol > 1 THEN IF MID$(text, lol - 1, 1) <> CHR$(32) THEN notok = 1
            IF notok = 0 THEN
                further = 0
                DO
                    IF LEN(text) > lol + 10 + further THEN
                        IF ASC(text, lol + 10 + further) = ASC("-") AND ASC(text, lol + 11 + further) <> ASC(",") AND ASC(text, lol + 13 + further) <> ASC("s") AND ASC(text, lol + 13 + further) <> ASC("S") THEN
                            text = MID$(text, 1, lol + 10 + further - 2) + MID$(text, lol + 10 + further)
                        END IF
                        IF ASC(text, lol + 9 + further) = ASC("-") THEN
                            text = MID$(text, 1, lol + 11 - 2 + further) + MID$(text, lol + 11 + further)
                        END IF
                    END IF
                    IF LEN(text) > lol + 8 + further THEN
                        IF ASC(text, lol + 8 + further) = ASC("-") THEN
                            text = MID$(text, 1, lol + 10 - 2 + further) + MID$(text, lol + 10 + further)
                        END IF
                    END IF
                    IF LEN(text) > lol + 9 + further THEN
                        IF ASC(text, lol + 10 + further) = ASC("-") THEN
                            text = MID$(text, 1, lol + 10 - 2 + further) + MID$(text, lol + 10 + further)
                        END IF
                    END IF
                    MID$(text, lol + 8 + further, 1) = UCASE$(MID$(text, lol + 8 + further, 1))
                    MID$(text, lol + 9 + further, 1) = UCASE$(MID$(text, lol + 9 + further, 1))
                    MID$(text, lol + 10 + further, 1) = UCASE$(MID$(text, lol + 10 + further, 1))
                    IF MID$(text, lol + 11 + further, 1) = "," OR MID$(text, lol + 10 + further, 1) = "," OR MID$(text, lol + 9 + further, 1) = "," THEN
                        IF MID$(text, lol + 11 + further, 1) = "," THEN further = further + 5
                        IF MID$(text, lol + 10 + further, 1) = "," THEN further = further + 4
                        IF MID$(text, lol + 9 + further, 1) = "," THEN further = further + 3
                    ELSE
                        further = 0
                    END IF
                LOOP UNTIL further = 0
            END IF
        END IF
        checking$ = "mid$ ("
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( mid$"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( screen"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "= screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "+ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "- screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "(screen ("
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "^ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "\ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "/ screen ("
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " or screen ("
        remove = 11
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " and screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " xor screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " imp screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " not screen ("
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " inkey$ )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( inkey$"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" integer ")) = " integer " THEN
            text = MID$(text, 1, lol + 9 - 2) + MID$(text, lol + 9)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" single ")) = " single " THEN
            text = MID$(text, 1, lol + 8 - 2) + MID$(text, lol + 8)
            lol = lol - 1
        END IF       
        IF MID$(LCASE$(text), lol, LEN(" double ")) = " double " THEN
            text = MID$(text, 1, lol + 8 - 2) + MID$(text, lol + 8)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" long ")) = " long " THEN
            text = MID$(text, 1, lol + 6 - 2) + MID$(text, lol + 6)
            lol = lol - 1
        END IF
        checking$ = " then "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND (lol + remove + 1 > LEN(text)) THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "call interruptx ("
        remove = 16
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            MID$(text, lol + 4, LEN(checking$)) = " InterruptX ("
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "( _clipboard$"
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "timer ("
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "as string ,"
        remove = 10
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "as string )"
        remove = 10
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " integer ,"
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " integer )"
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" as # ")) = " as # " THEN
            text = MID$(text, 1, lol + 6 - 2) + MID$(text, lol + 6)
            lol = lol - 1
        END IF
        checking$ = "print # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "input # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "get # "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "put # "
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "write # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "close # "
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " print # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " input # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " get # "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " put # "
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " write # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " close # "
        remove = 9
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " long ,"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " long )"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " single ,"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " single )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " double ,"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " double )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _float ,"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _float )"
        remove = 8
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _bit ,"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _bit )"
        remove = 6
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " any ,"
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " any )"
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _byte ,"
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _byte )"
        remove = 7
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _integer64 ,"
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = " _integer64 )"
        remove = 12
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" $")) = " $" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" %")) = " %" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" !")) = " !" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" :")) = " :" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" ,")) = " ," THEN
            IF lol <= 2 THEN text = LTRIM$(text)
        END IF
        IF MID$(LCASE$(text), lol, LEN(" ;")) = " ;" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" & ")) = " & " THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        remove = 1
        IF MID$(LCASE$(text), lol, 3) = "= =" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        remove = 3
        IF MID$(LCASE$(text), lol, 3) = "= +" THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        remove = 3
        IF MID$(LCASE$(text), lol, 3) = "* +" THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        remove = 3
        IF MID$(LCASE$(text), lol, 3) = "/ +" THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "- +" THEN
            text = MID$(text, 1, lol + 3 - 2) + MID$(text, lol + 3)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "^ +" THEN
            text = MID$(text, 1, lol + 3 - 2) + MID$(text, lol + 3)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "\ +" THEN
            text = MID$(text, 1, lol + 3 - 2) + MID$(text, lol + 3)
            lol = lol - 1
        END IF
        checking$ = "> - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "> +" THEN
            text = MID$(text, 1, lol + 3 - 2) + MID$(text, lol + 3)
            lol = lol - 1
        END IF
        checking$ = "< - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "< +" THEN
            text = MID$(text, 1, lol + 3 - 2) + MID$(text, lol + 3)
            lol = lol - 1
        END IF
        checking$ = "<> - "
        remove = 5
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "<> +"
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = ">= +"
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "<= +"
        remove = 4
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "> >" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "< <" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "+ +" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, 3) = "$ ," THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 2 - 2) + MID$(text, lol + 2) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        remove = 4
        IF MID$(LCASE$(text), lol, LEN("+ - ")) = "+ - " THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        checking$ = "= - "
        remove = 4
        IF MID$(LCASE$(text), lol, LEN("= - ")) = "= - " THEN
            text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("- - ")) = "- - " THEN
            text = MID$(text, 1, lol + 4 - 2) + MID$(text, lol + 4)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("* - ")) = "* - " THEN
            text = MID$(text, 1, lol + 4 - 2) + MID$(text, lol + 4)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("^ - ")) = "^ - " THEN
            text = MID$(text, 1, lol + 4 - 2) + MID$(text, lol + 4)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(", - ")) = ", - " THEN
            text = MID$(text, 1, lol + 4 - 2) + MID$(text, lol + 4)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("; - ")) = "; - " THEN
            text = MID$(text, 1, lol + 4 - 2) + MID$(text, lol + 4)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("( - ")) = "( - " THEN
            text = MID$(text, 1, lol + 4 - 2) + MID$(text, lol + 4)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("( -")) = "( -" THEN
            text = MID$(text, 1, lol + 2 - 2) + MID$(text, lol + 2)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" or - ")) = " or - " THEN
            text = MID$(text, 1, lol + 6 - 2) + MID$(text, lol + 6)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" and - ")) = " and - " THEN
            text = MID$(text, 1, lol + 7 - 2) + MID$(text, lol + 7)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" xor - ")) = " xor - " THEN
            text = MID$(text, 1, lol + 7 - 2) + MID$(text, lol + 7)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" imp - ")) = " imp - " THEN
            text = MID$(text, 1, lol + 7 - 2) + MID$(text, lol + 7)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" not - ")) = " not - " THEN
            text = MID$(text, 1, lol + 7 - 2) + MID$(text, lol + 7)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" to - ")) = " to - " THEN
            text = MID$(text, 1, lol + 6 - 2) + MID$(text, lol + 6)
            lol = lol - 1
        END IF
        checking$ = " step - "
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + 8 - 2) + MID$(text, lol + 8)
            lol = lol - 1
        END IF
        checking$ = " case - "
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + 8 - 2) + MID$(text, lol + 8)
            lol = lol - 1
        END IF
        checking$ = " data - "
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            text = MID$(text, 1, lol + 8 - 2) + MID$(text, lol + 8)
            lol = lol - 1
        END IF
        checking$ = "case - "
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + 7 - 2) + MID$(text, lol + 7)
            lol = lol - 1
        END IF
        checking$ = "data - "
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ AND lol = 1 THEN
            text = MID$(text, 1, lol + 7 - 2) + MID$(text, lol + 7)
            lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN(" )")) = " )" THEN
            IF lol > 2 THEN text = MID$(text, 1, lol + 1 - 2) + MID$(text, lol + 1) ELSE text = LTRIM$(text)
            IF lol > 2 THEN lol = lol - 1
        END IF
        IF MID$(LCASE$(text), lol, LEN("( ")) = "( " THEN
            IF lol >= 1 THEN text = MID$(text, 1, lol + 2 - 2) + MID$(text, lol + 2) ELSE text = LTRIM$(text)
            IF lol > 1 THEN lol = lol - 1
        END IF
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(") - (")) = ") - (" THEN
            FOR checka = lol + LEN(") - (") TO LEN(text)
                ch$ = MID$(text, checka, 1)
                IF ch$ = "," AND para = 0 THEN validrange = 1: EXIT FOR
                IF ch$ = "(" THEN para = 1
                IF ch$ = ")" THEN para = 0
            NEXT
            IF validrange THEN
                text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
                text = MID$(text, 1, lol + remove - 1) + MID$(text, lol + remove + 1)
                lol = lol - 1
            END IF
        END IF
        checking$ = "- ("
        remove = 2
        IF MID$(LCASE$(text), lol, LEN(checking$)) = checking$ THEN
            FOR checka = lol + LEN(checking$) TO LEN(text)
                ch$ = MID$(text, checka, 1)
                IF ch$ = "," AND para = 0 THEN validrange = 1: EXIT FOR
                IF ch$ = "(" THEN para = 1
                IF ch$ = ")" THEN para = 0
            NEXT
            IF validrange THEN
                text = MID$(text, 1, lol + remove - 2) + MID$(text, lol + remove)
                lol = lol - 1
            END IF
        END IF
    LOOP UNTIL lol >= LEN(text)
END IF
formatremovestuff$ = text
END FUNCTION
« Last Edit: April 15, 2010, 09:53:34 PM by Cyperium » Logged

The downloads for dqb2qb64 and Venture are currently down, links will be shown at the next release of dqb2qb64. Download my custom editor for QB64 (here (zip)).
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.10 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!