Översikt
Vi gör ett klippbibliotek
NoteTab är som jag har skrivit ett utomordentligt verktyg för
textredigering.
NoteTab klarar mycket som enklare textredigerare inte kan. Men NoteTab kan inte
allt och programmet kan inte vara utformat för att passa alla.
Därför är det bra att NoteTab kan anpassas, så att programmet fyller
många fler funktioner än det från början ser ut att göra. Ett sätt att
anpassa NoteTab är att göra egna klippbibliotek som utför de uppgifter man
behöver.
Uppgiften
Vi vill ha möjligheten att öppna ett och samma dokument i två fönster
bredvid varandra, så att vi kan redigera i det ena fönstret samtidigt som vi
ser originaltexten i det andra. Innan vi börjar redigera i det nya fönstret,
vill vi ha originalet sparat under ett nytt namn och dessutom skrivskyddat så
att vi iten av misstag redigerar i fel fönster!
Till detta behöver vi ett klippbibliotek.
Först skriver vi den inledande raden som gör att NoteTab känner igen filen som en Editor Clipbook Library-fil och laddar den när NoteTab öppnas. Denna första rad skall följas av en blankrad:
= V5 MultiLine NoSorting TabWidth=30
Efter blankraden börjar vi med en "programförklaring". Denna kommer att visas längst upp i klippboken som en röd rubrik. När
vi dubbelklickar på denna öppnas ett fönster där vi kan läsa vad klippet gör.

Så här kommer det att se ut i NoteTabs Clipbook.
Och det här är fönstret som öppnas.
H=";Redigera i två fönster"
ÖPPNA YTTERLIGARE ETT FÖNSTER FÖR ATT REDIGERA DOKUMENTET
Det här klippet gör först en kopia av det öppna dokumentet och ger kopian namnet "Kopia av" + filnamnet.
Exempel: Kopian av "brev.txt" kommer att heta "Kopia av brev.txt". Denna kopia skrivskyddas och sparas i originalets mapp.
Därefter kopieras hela innehållet i originalfilen. Sedan skapas ett nytt dokument och texten från originalet klistras in i detta.
Nästa steg är att öppna ett nytt textfönster med den nya filen, varpå markören flyttas till början av det nya dokumentet och detta sparas under det gamla dokumentets namn.
Klippet
Sedan är det dags för koden som kommer att utföra det här. Vi börjar med en rad som innehåller det som skall visas i klippboken:
H="Öppna det andra fönstret"
Efter den raden följer programkoden. Ungefär varannan rad inleds här med ett semikolon. Dessa rader är kommentarsrader som förklarar vad den efterföljande koden gör, och de påverkar inte programkörningen.
Var noga med att kommentera din kod. Det underlättar betydligt när du senare återvänder till klippet och vill förstå vad du egentligen gjorde. Man glömmer fortare än man tror!
;Hämta filnamnet på det öppna dokumentet
^!Set %originalnamn%=^$GetDocName$
;Hämta sökvägen på hårddisken till det öppna dokumentet
^!Set %path%=^$Getpath(^%originalnamn%)$
;Ange filnamnet utan sökväg
^!Set %filnamn%=^$GetFileName(^%originalnamn%)$
;Lägg till "Kopia av " i början av originalfilens namn
^!Set %kopia%="Kopia av "
;Skapa det nya filnamnet och spara kopian
^!Set %nyfilnamn%=^%path%
^!Append %nyfilnamn%= ^%kopia%
^!Append %nyfilnamn%= ^%filnamn%
^!Save AS ^%nyfilnamn%
;Skrivskydda kopian av originalet
^!Keyboard Alt+D O
;Kopiera all text från originalfilen
^!Toolbar Copy All
;Skapa en ny fil och klistra in texten från originalet i den
^!Toolbar Paste New
;Öppna den nya filen i ett nytt textfönster
^!Keyboard Shift+Ctrl+W
;Flytta markören till det nya dokumentets början
^!Keyboard Ctrl+Home
;Spara det nya dokumentet under det gamla dokumentets namn
^!Save AS ^%originalnamn%
Hela kodenKoden skall nu se ut så här:
= V5 MultiLine NoSorting TabWidth=30
H=";Redigera i två fönster"
ÖPPNA YTTERLIGARE ETT FÖNSTER FÖR ATT REDIGERA DOKUMENTET
Det här klippet gör först en kopia av det öppna dokumentet och ger kopian namnet "Kopia av" + filnamnet.
Exempel: Kopian av "brev.txt" kommer att heta "Kopia av brev.txt". Denna kopia skrivskyddas och sparas i originalets mapp.
Därefter kopieras hela innehållet i originalfilen. Sedan skapas ett nytt dokument och texten från originalet klistras in i detta.
Nästa steg är att öppna ett nytt textfönster med den nya filen, varpå markören flyttas till början av det nya dokumentet och detta sparas under det gamla dokumentets namn.
H="Öppna det andra fönstret"
;Hämta filnamnet på det öppna dokumentet
^!Set %originalnamn%=^$GetDocName$
;Hämta sökvägen på hårddisken till det öppna dokumentet
^!Set %path%=^$Getpath(^%originalnamn%)$
;Ange filnamnet utan sökväg
^!Set %filnamn%=^$GetFileName(^%originalnamn%)$
;Lägg till "Kopia av " i början av originalfilens namn
^!Set %kopia%="Kopia av "
;Skapa det nya filnamnet och spara kopian
^!Set %nyfilnamn%=^%path%
^!Append %nyfilnamn%= ^%kopia%
^!Append %nyfilnamn%= ^%filnamn%
^!Save AS ^%nyfilnamn%
;Skrivskydda kopian av originalet
^!Keyboard Alt+D O
;Kopiera all text från originalfilen
^!Toolbar Copy All
;Skapa en ny fil och klistra in texten från originalet i den
^!Toolbar Paste New
;Öppna den nya filen i ett nytt textfönster
^!Keyboard Shift+Ctrl+W
;Flytta markören till det nya dokumentets början
^!Keyboard Ctrl+Home
;Spara det nya dokumentet under det gamla dokumentets namn
^!Save AS ^%originalnamn%
Spara det här som "Två fönster.clb" i mappen Libraries i
NoteTabs programmapp. I NoteTabs "Libraries Bar" öppnas nu en ny flik
med texten "Två fönster". Klicka på fliken och ditt klipp öppas i
klippboken till vänster om textfönstret. Öppna en textfil och pröva!
|