home *** CD-ROM | disk | FTP | other *** search
- ======== SPELLING CMDS ======
-
- Start spell-checking mode by loading in the dictionary table.
- <rAmiga-u: if (spellerUp)
- putMsg("Speller is up")
- else if (startSpell("Udtable","Udict",1))
- putMsg("Speller is up")
- else if (startSpell("s:Udtable","s:Udict",1)) .. K. Perano
- putMsg("Speller is up")
- else if (startSpell("u:Udtable","u:Udict",1)) .. K. Perano
- putMsg("Speller is up")
- else {
- putMsg("No memory or dictionary not found")
- returnFalse
- } >
-
- Find first misspelled word, starting at cursor. Abort with Amiga-ESC.
- <rAmiga-c:
- if (not spellerUp) {
- putMsg("Speller not up")
- returnFalse
- }
- putMsg(" ")
- while (not spell(buf54,curFile,buf41)) runKey(virtual-z) >
-
- Click word in msg line (buf54), select word to replace word before cursor.
- <virtual-z:
- if (isEmpty(buf54)) return
- insertRgn(buf54,efile," ***",all)
- putMsg(buf54)
- vscroll(atCursor)
- updateDisplay
- getKeyVal(n3,n4)
- if (eqNum(n3,normal-esc)) abort
- mousexy(n1,n2)
- while (inputKey(n54)) nothing
- if (mouseDown) while (not inputWaiting) {
- if (not mouseDown) goto label(0)
- inputKey(n54)
- }
- label(0)
- if (geNum(n3,normal-gadget1) & geNum(normal-gadget4,n3)
- & gtNum(n2,10) & gtNum(20,n2)) {
- div(n1,n1,8)
- incNum(n1)
- moveCursor(buf54,sfile)
- moveCursor(buf54,eword)
- locToIndex(buf54,n54,atcursor)
- if (gtNum(n1,n54)) {
- indexToLoc(buf54,atCursor,n1)
- if (is(buf54,alpha)) {
- movecursor(buf54,eword)
- movecursor(buf54,sword)
- movecursor(curfile,sword)
- if (is(curfile,upperCase)) toUpper(buf54)
- clearRgn(curfile,word)
- insertrgn(curfile,atcursor,buf54,word)
- updateDisplay
- }
- }
- }
- putMsg(" ")
- freeBuf(buf54)
- while (inputKey(n54)) nothing
- if (mouseDown) while (not inputWaiting) {
- if (not mouseDown) return
- inputKey(n54)
- }
- >
-
- Spell-check from cursor fwd. Mark bad words with "@".
- <rAmiga-m:
- if (not runKey(rAmiga-u)) returnFalse
- putMsg("Spell checking ... abort with Amiga-ESC")
- while (not spell(" ",curFile,buf41)) insertChar(curFile,"@") >
-
- Force file saving to finish so buffer is unlocked
- <104: while (getStackSize(n99,n99,n98) & gtNum(n98,0)) delay(5) >
-
- Load supplemental dictionary & spell from cursor fwd. Add to supplement.
- <rAmiga-l:
- if (not runKey(rAmiga-u)) returnFalse
- equateNum(n54,curFile)
- putMsg("Dict supplement to use (pmESC = UdSupplement)")
- freebuf(buf54)
- equateNum(n99,0)
- if (inputString(buf54)) {
- if (not loadFile(buf54)) goto label(3)
- } else {
- label(3)
- if (not loadFile("UdSupplement")) {
- if (not newFile) {
- putMsg("Close a file for me!")
- returnFalse
- }
- setFileName(curfile,"UdSupplement")
- }
- }
- putMsg("Spell checking ... abort with Amiga-ESC")
- if (getFlag(curFile,searchCaps)) flipFlag(curFile,searchCaps)
- label(0)
- while (not spell(" ",buf[n54],curFile)) {
- moveCursor(buf[n54],sWord)
- freeBuf(buf54)
- insertRgn(buf54,eFile,buf[n54],word)
- moveCursor(buf[n54],eWord)
- moveCursor(buf54,sFile)
- if (not is(buf54,"'") & not is(buf54,alpha)) goto label(0)
- moveCursor(buf54,eFile)
- putMsg(buf54) .. remove for faster speed
-
- .. this sect for speed
- moveCursor(buf54,sFile)
- copyChar(buf54,n47) .. copy 1st char of word
- freeBuf(buf52)
- insertChar(buf52,eLine) .. load in eline-1stchar
- insertChar(buf52,n47)
- moveCursor(curFile,eFile) .. search for starting place
- setSearch(buf52)
- search(curfile,locA,locB,-1)
- moveCursor(curFile,eWord) .. move fwd, so sWord works
- if (is(curFile,sFile)) goto label(1)
- while (nothing) {
- moveCursor(curFile,sWord)
- freeBuf(buf53)
- insertRgn(buf53,eFile,curFile,word)
- stringComp(n53,buf54,buf53,1) .. ignore case
- if (eqNum(n53,0)) goto label(0) .. found it, continue
- if (gtNum(n53,0)) {
- label(1)
- moveCursor(curFile,eWord)
- moveCursor(curFile,eChar)
- label(2)
- insertRgn(curFile,atCursor,buf54,all)
- insertChar(curFile,eLine)
- updateDisplay .. remove for faster speed
- incNum(n99)
- if (gtNum(n99,19)) {
- fileSize(curFile,n99) .. force buffer packing
- equateNum(n99,0)
- }
- goto label(0)
- }
- if (is(curFile,sFile)) goto label(2)
- }
- }
- moveCursor(curFile,sFile)
- putMsg("These words weren't in dictionary")
- .. stopSpell .. use if want speller removed
- >
-
- Merge dict supplement with dict-files. dict.A-Z must be in Current Directory.
- <rAmiga-d:
- if (isEmpty(curFile)) returnFalse
- moveCursor(curFile,sFile)
- freeBuf(buf52)
- freeBuf(buf54)
- insertRgn(buf54,eFile,"S:dict. ",all)
- if (getFlag(curFile,searchCaps)) flipFlag(curFile,searchCaps)
- equateNum(n50,0)
- while (nothing) {
- moveCursor(curFile,eWord)
- moveCursor(curFile,sWord)
- freeBuf(buf53)
- if (not insertRgn(buf53,eFile,curFile,word)) {
- label(6) if (getFlag(buf52,changed)) saveFile(buf52)
- runKey(104) .. force save to complete
- goto label(0)
- }
- moveCursor(buf53,sFile)
- toUpper(buf53)
- copyChar(buf53,n54) .. copy 1st letter of word A-Z
- toLower(buf53)
- if (eqNum(n54,39)) equateNum(n54,65) .. apost becomes 'A'
- else {
- if (gtNum(n54,90)) goto label(1) .. must be A-Z
- if (gtNum(65,n54)) goto label(1)
- }
- moveCursor(buf54,eFile)
- moveCursor(buf54,sChar)
- swapChar(buf54,n54) .. make it "dict.A" etc.
-
- if (not eqNum(n54,n50)) {
- if (not eqNum(n50,0)
- & getFlag(buf52,changed)) saveFile(buf52)
- runKey(104) .. force save to complete
- clearRgn(buf52,all)
- fileSize(buf52,n49) .. make it pack buffer
- if (not insertFile(buf52,eFile,buf54)) {
- putMsg("Can't find dict.A-Z!")
- returnFalse
- }
- setFileName(buf52,buf54)
- if (getFlag(buf52,changed)) flipFlag(buf52,changed)
- equateNum(n50,n54) .. save dict-letter
- }
- .. put word in dict.
- moveCursor(buf53,eFile)
- putMsg(buf53)
- insertChar(buf53,eLine)
- moveCursor(buf52,eFile)
- label(2)
- setSearch(buf53)
- if (search(buf52,locA,locB,-1)) {
- if (is(buf52,sWord)) goto label(1)
- goto label(2) .. continue searching
- }
- .. didn't find it. Do the slow scan & insert the word.
- moveCursor(buf53,eFile)
- moveCursor(buf53,sChar)
- clearChar(buf53) .. remove eLine
- moveCursor(buf52,eFile)
- equateNum(n49,1)
- label(4)
- while (nothing) {
- if (eqNum(n49,1)) do(n48,1,40) moveCursor(buf52,sWord)
- moveCursor(buf52,sWord)
- freeBuf(buf51)
- insertRgn(buf51,eFile,buf52,word)
- stringComp(n53,buf53,buf51,1) .. ignore case
- if (eqNum(n53,0)) goto label(1) .. found it, continue
- if (gtNum(n53,0)) {
- if (eqNum(n49,1)) goto label(5)
- moveCursor(buf52,eWord)
- moveCursor(buf52,eChar)
- label(3)
- insertRgn(buf52,atCursor,buf53,all)
- insertChar(buf52,eLine)
- goto label(1)
- }
- if (is(buf52,sFile)) {
- if (eqNum(n49,1)) {
- label(5)
- equateNum(n49,0)
- do (n48,1,41) moveCursor(buf52,eWord)
- goto label(4)
- }
- goto label(3)
- }
- }
-
- label(1) .. next word
- moveCursor(curFile,eLine)
- moveCursor(curFile,eChar)
- updateDisplay
- if (is(curFile,eFile)) goto label(6)
- }
- label(0)
- putMsg("Done. Run Udbuild to rebuild working dict & table")
- freeBuf(buf52)
- >
-
- Remove words from dict-files. dict.A-Z must be in Current Directory.
- <rAmiga-e:
- if (isEmpty(curFile)) returnFalse
- moveCursor(curFile,sFile)
- freeBuf(buf52)
- freeBuf(buf54)
- insertRgn(buf54,eFile,"S:dict. ",all)
- if (getFlag(curFile,searchCaps)) flipFlag(curFile,searchCaps)
- equateNum(n50,0)
- while (nothing) {
- moveCursor(curFile,eWord)
- moveCursor(curFile,sWord)
- freeBuf(buf53)
- if (not insertRgn(buf53,eFile,curFile,word)) {
- label(6)
- if (getFlag(buf52,changed)) saveFile(buf52)
- runKey(104) .. force save to complete
- goto label(0)
- }
- moveCursor(buf53,sFile)
- toUpper(buf53)
- copyChar(buf53,n54) .. copy 1st letter of word A-Z
- toLower(buf53)
- if (eqNum(n54,"'")) equateNum(n54,"A") .. apost becomes 'A'
- else {
- if (gtNum(n54,"Z")) goto label(1) .. must be A-Z
- if (gtNum(65,n54)) goto label(1)
- }
- moveCursor(buf54,eFile)
- moveCursor(buf54,sChar)
- swapChar(buf54,n54) .. make it "dict.A" etc.
-
- if (not eqNum(n54,n50)) {
- if (not eqNum(n50,0) & getFlag(buf52,changed)) saveFile(buf52)
- runKey(104) .. force save to complete
- clearRgn(buf52,all)
- fileSize(buf52,n49) .. make it pack buffer
- if (not insertFile(buf52,eFile,buf54)) {
- putMsg("Can't find dict.A-Z!")
- returnFalse
- }
- setFileName(buf52,buf54)
- if (getFlag(buf52,changed)) flipFlag(buf52,changed)
- equateNum(n50,n54) .. save dict-letter
- }
- .. remove word from dict.
- moveCursor(buf53,eFile)
- putMsg(buf53)
- insertChar(buf53,eLine)
- moveCursor(buf52,eFile)
- label(2)
- setSearch(buf53)
- if (search(buf52,locA,locB,-1)) {
- if (is(buf52,sWord)) {
- clearRgn(buf52,loc)
- goto label(1) .. next word
- }
- goto label(2) .. continue searching
- }
-
- label(1) .. next word
- moveCursor(curFile,eLine)
- moveCursor(curFile,eChar)
- if (is(curFile,eFile)) goto label(6)
- updateDisplay
- }
- label(0)
- putMsg("Done. Run Udbuild to rebuild working dict & table")
- freeBuf(buf52)
- >
-
- Stop spell-checking mode. (Frees up about 12k of memory.)
- <rAmiga-f: if (spellerUp) { stopSpell putMsg("Speller removed") } >
-
- ========== Split Windows =========
-
- Remove current split window
- <lAmiga-0: splitWindow(curFile,0)>
-
- Split window to show current file
- <lAmiga-c: splitWindow(curFile,splitSize)>
-
- Split window to show Undo buffer
- <lAmiga-1: splitWindow(buf45,splitSize)>
-
- Split window to show search buffer
- <lAmiga-2: splitWindow(buf49,splitSize)>
-
- Split window to show replace buffer
- <lAmiga-3: splitWindow(buf48,splitSize)>
-
- Split window to show copied-hilite buffer
- <lAmiga-4: splitWindow(buf47,splitSize)>
-
- Split window to show copied-invert buffer
- <lAmiga-5: splitWindow(buf46,splitSize)>
-
- Split window to show copied-columnar buffer
- <lAmiga-6: splitWindow(buf37,splitSize)>
-
- Split window to show directory names
- <lAmiga-7: splitWindow(buf38,splitSize) >
-
- Set split window size
- <lAmiga-8:
- putMsg("# lines in split window (2 or more):")
- if (inputNum(n54) & geNum(n54,2)) equateNum(splitSize,n54)
- putMsg(" ")>
-
- Switch to next window split
- <lAmiga-9: toggle(windowSplit)>
-
-