natgillin/translations-raw huggingface dataset:
I denne sammenhæng bruges kun erstatningskommandoen i sed: sed 's / REGUDTRYK / ERSTATNING / FLAG' Inden du bruger en ny kommando inde i & kdiff3;, bør du først teste den i en terminal. Her er kommandoen echo nyttig. For eksempel: echo abrakadabra _BAR_ sed 's/ a/ o /' - > obrakadabra Dette eksempel viser en meget enkel sed- kommando som erstatter den første forekomst af "a" med "o". Hvis du vil erstatte alle forekomster behøver du flaget "g": echo abrakadabra _BAR_ sed 's/ a/ o/ g' - > obrokodobro Symbolet "_BAR_" er en pipe- kommando som overfører uddata fra foregående kommando til inddata i efterfølgende kommando. Hvis du vil teste med en længere fil kan du bruge cat på Unix- lignende systemer eller type på Windows- lignende systemer. sed udfører erstatningen for hver linje.
In this context only the sed -substitute-command is used: sed's/ REGEXP / REPLACEMENT / FLAGS 'Before you use a new command within & kdiff3;, you should first test it in a console. Here the echo -command is useful. Example: echo abrakadabra _BAR_ sed's/ a/ o/' - > obrakadabra This example shows a very simple sed-command that replaces the first occurance of "a" with "o". If you want to replace all occurances then you need the "g"-flag: echo abrakadabra _BAR_ sed's/ a/ o/ g '- > obrokodobro The" _BAR_"-symbol is the pipe-command that transfers the output of the previous command to the input of the following command. If you want to test with a longer file then you can use cat on Unix-like systems or type on Windows-like systems. sed will do the substitution for each line.
cat filnavn _BAR_ sed flag
cat filename _BAR_ sed options
Eksempel på brug af sed i & kdiff3;
Examples For sed -Use In & kdiff3;
Ignorering af andre typer kommentarer
Ignoring Other Types Of Comments
For øjeblikket forstår & kdiff3; kun C/ C++ kommentarer. Ved at bruge en linjematchende præprocessorkommando kan du også ignorere andre typer af kommentarer ved at konvertere dem til C/ C++ kommentarer. For eksempel for at ignorere kommentarer som begynder med "#", skulle du ville konvertera dem til "//". Bemærk at du også skal aktivere tilvalget "Ignorér C/ C++ kommentarer" for at få nogen virkning. En passende linjematchende præprocessorkommando ville være: sed 's / # /\\ /\\ //' Eftersom tegnet "/" har en særlig betydning i sed, er det nødvendigt at tilføje tegnet "\\" inden hver "/" i erstatningsstrengen. Sommetider behøves "\\" for at tilføje eller fjerne en særlig betydning for visse tegn. De enkle citationstegn (') inden og efter erstatningskommandoen er nu vigtige, eftersom skallen ellers ville forsøge at tolke visse specialtegn som' # ',' $'eller'\\ 'inden de sendes til sed. Bemærk at i Windows behøver du dobbelte citationstegn (") her. Windows erstatter andre tegn som'% ', så du kan få brug for at eksperimentere noget.
Currently & kdiff3; understands only C/ C++ comments. Using the Line-Matching-Preprocessor-Command you can also ignore other types of comments, by converting them into C/ C++-comments. Example: To ignore comments starting with "#", you would like to convert them to "/ /". Note that you also must enable the "Ignore C/ C++-Comments" option to get an effect. An appropriate Line-Matching-Preprocessor-Command would be: sed's/ #/ \\/ \\/ / 'Since for sed the "/" -character has a special meaning, it is necessary to place the "\\"-character before each" / "in the replacement-string. Sometimes the"\\ "is required to add or remove a special meaning of certain characters. The single quotation marks (') before and after the substitution-command are important now, because otherwise the shell will try to interpret some special characters like '# ', '$' or '\\ 'before passing them to sed. Note that on Windows you will need the double quotation marks (") here. Windows substitutes other characters like'% ', so you might have to experiment a little bit.
Ikke versalfølsom Diff
Caseinsensitive Diff
Brug følgende linjematchende præprocessorkommando til at forvandle al inddata til store bogstaver: sed 's /\\ (. *\\) /\\ U\\ 1 /' Her er ". *" et regulært udtryk som matcher alle strenge, og i denne sammenhæng matcher alle tegn på linjen. Tegnet "\\ 1" i erstatningsstrengen svarer til den matchede tekst mellem det første par "\\ (" og "\\)". "\\ U" konverterer den indsatte tekst til store bogstaver.
Use the following Line-Matching-Preprocessor-Command to convert all input to uppercase: sed's/ \\(. *\\)/ \\U\\1/ 'Here the ". *" is a regular expression that matches any string and in this context matches all characters in the line. The "\\1" in the replacement string refers to the matched text within the first pair of "\\(" and "\\)". The "\\U" converts the inserted text to uppercase.
Ignorering af nøgleord for versionskontrol
Ignoring Version Control Keywords
CVS og andre versionshåndteringssystemer bruger flere nøgleord til at indsætte automatisk genererede strenge (info: / cvs/ Keyword substitution). Alle følger mønstret "$NØGLEORD genereret tekst$". Nu behøver vi en linjematchende præprocessorkommando som kun fjerner den genererede tekst: sed 's /\\ $\\ (Revision\\ _BAR_Author\\ _BAR_Log\\ _BAR_Header\\ _BAR_Date\\). *\\ $/\\ $\\ 1\\ $/' Strengen "\\ _BAR_" skiller de mulige nøgleord ad. Du vil måske ændre listen ifølge dine behov. Tegnet "\\" ud for "$" behøves eftersom "$" ellers matcher linjeslut.
CVS and other version control systems use several keywords to insert automatically generated strings (info: / cvs/ Keyword substitution). All of them follow the pattern "$KEYWORD generated text$". We now need a Line-Matching-Preprocessor-Command that removes only the generated text: sed's/ \\$\\(Revision\\_BAR_Author\\_BAR_Log\\_BAR_Header\\_BAR_Date\\). *\\$/ \\$\\1\\$/ 'The "\\_BAR_" separates the possible keywords. You might want to modify this list according to your needs. The "\\" before the "$" is necessary because otherwise the "$" matches the end of the line.
Mens du eksperimenterer med sed kommer du måske til at forstå og endog at kunne lide disse regulære udtryk. De er nyttige fordi der er mange andre programmer der også understøtter lignende ting.
While experimenting with sed you might come to understand and even like these regular expressions. They are useful because there are many other programs that also support similar things.
Ignorér cifre
Ignoring Numbers
At ignorere tal er i virkeligheden et indbygget tilvalg, men som et andet eksempel, vises hvordan det ville se ud som en linjematchende præprocessorkommando. sed 's / [0123456789. -] // g' Alle tegn indenfor '[' og ']' matcher og vil blive erstattet af ingenting.
Ignoring numbers actually is a built-in option. But as another example, this is how it would look as a Line-Matching-Preprocessor-command. sed's/ [0123456789. -]/ /g 'Any character within '[' and ']' is a match and will be replaced with nothing.
Ignorering af visse søjler
Ignoring Certain Columns
Sommetider er teksten meget strengt formateret, og indeholder søjler som du altid vil ignorere, mens der er andre søjler du vil bevare for analyse. I følgende eksempel ignoreres de fem første søjler (tegn), de følgende ti søjler bevares, derefter ignoreres igen fem søjler og resten af linjen bevares. sed 's /.....\\ (..........\\).....\\ (. *\\) /\\ 1\\ 2 /' Hvert punktum '.' svarer til et hvilket som helst enkelt tegn. Strengene "\\ 1" og "\\ 2" i erstatningsstrengen refererer til den matchende tekst indenfor det første og andre par af "\\ (" og "\\)" som angiver teksten at bevare.
Sometimes a text is very strictly formatted, and contains columns that you always want to ignore, while there are other columns you want to preserve for analysis. In the following example the first five columns (characters) are ignored, the next ten columns are preserved, then again five columns are ignored and the rest of the line is preserved. sed's/..... \\(..........\\)..... \\(. *\\)/ \\1\\2/ 'Each dot'. 'matches any single character. The "\\1" and "\\2" in the replacement string refer to the matched text within the first and second pair of "\\(" and "\\)" denoting the text to be preserved.
Kombination af flere substitutioner
Combining Several Substitutions
Sommetider vil du tilpasse flere erstatninger samtidigt. Så kan du bruge semikolon ';' for at skille dem fra hinanden. For eksempel:
Sometimes you want to apply several substitutions at once. You can then use the semicolon ';' to separate these from each other. Example:
echo abrakadabra _BAR_ sed 's/ a/ o/ g; s /\\ (. *\\) /\\ U\\ 1 /' - > OBROKODOBRO
echo abrakadabra _BAR_ sed's/ a/ o/ g; s/ \\(. *\\)/ \\U\\1/ '- > OBROKODOBRO
Brug af perl i stedet for sed
Using perl instead of sed
I stællet for sed måske du vil bruge noget andet som perl. perl - p - e 's / REGUTTRYCK / ERSÆTTNING / FLAGGOR' Men visse detaljer er anderledes i perl. Bemærk at hvor sed behøver "\\ (" og "\\)" kræver perl det enklare "(" og ")" uden indledende '\\'. Till eksempel:
Instead of sed you might want to use something else like perl. perl -p -e's/ REGEXP / REPLACEMENT / FLAGS 'But some details are different in perl. Note that where sed needed "\\(" and "\\)" perl requires the simpler "(" and ")" without preceding '\\'. Example:
sed 's /\\ (. *\\) /\\ U\\ 1 /' perl - p - e 's / (. *) /\\ U\\ 1 /'
sed's/ \\(. *\\)/ \\U\\1/ 'perl -p -e's/ (. *)/ \\U\\1/'
Rækkefølge for præprocessor- udførsel
Order Of Preprocessor Execution
Data sendes gennem alle interne og eksterne præprocessorer i følgende rækkefølge:
The data is piped through all internal and external preprocessors in the following order:
Normal præprocessor,
Normal preprocessor,
Præprocessor for linjematchning,
Line-Matching-Preprocessor,
Ignorér versaler (konvertér til store bogstaver),
Ignore case (conversion to uppercase),
Detektion af C/ C++ kommentarer,
Detection of C/ C++ comments,
Ignorér cifre,
Ignore numbers,
Ignorér blanke tegn
Ignore white space
Data efter den normale præprocessor vil blive bevaret til visning og indfletning. De andre operationer ændrer kun de data som den linjematchende diff- algoritme ser.
The data after the normal preprocessor will be preserved for display and merging. The other operations only modify the data that the line-matching-diff-algorithm sees.
I de sjældne tilfælde hvor du bruger en normal præprocessor, bemærk at den linjematchende præprocessor ser uddata fra den normale præprocessor som inddata.
In the rare cases where you use a normal preprocessor note that the line-matching-preprocessor sees the output of the normal preprocessor as input.
Forbehandlingskommandoer er ofte meget nyttige, men som med alle tilvalg som ændrer teksten eller skjuler visse forskelle automatisk, kan du ved en fejl springe over visse forskelle og i værste fald ødelægge vigtige data.
The preprocessor-commands are often very useful, but as with any option that modifies your texts or hides away certain differences automatically, you might accidentally overlook certain differences and in the worst case destroy important data.
Af denne grund, hvis en normal præprocessorkommando bruges under en sammenfletning, fortæller & kdiff3; dig om det og spørger om det skal deaktiveres eller ej. Men du får ingen advarsel hvis en linjematchende præprocessorkommando er aktiv. Sammenfletningen sker ikke førend alle konflikter er løste. Hvis du deaktiverede "Vis blanke tegn" bliver også forskellene som blev fjernet med den linjematchende præprocessorkommando usynlige. Hvis knappen Gem forbliver inaktiv under en sammenfletning (på grund af tilbageværende konflikter), så sørg for at aktivere "Vis blanke tegn". Hvis du ikke vil sammenflette disse mindre vigtige forskelle manuelt kan du vælge "Vælg [A_BAR_B_BAR_C] for uløste konflikter med blanke tegn" i menuen "Sammenflet".
For this reason during a merge if a normal preprocessor-command is being used & kdiff3; will tell you so and ask you if it should be disabled or not. But it wo n't warn you if a Line-Matching-Preprocessor-command is active. The merge will not complete until all conflicts are solved. If you disabled "Show White Space" then the differences that were removed with the Line-Matching-Preprocessor-command will also be invisible. If the Save-button remains disabled during a merge (because of remaining conflicts), make sure to enable "Show White Space". If you do n't want to merge these less important differences manually you can select "Choose [A_BAR_B_BAR_C] For All Unsolved White space Conflicts" in the Merge-menu.
Mappesammenligning og sammenfletning med & kdiff3;
Directory Comparison and Merge with & kdiff3;
Introduktion til mappesammenligning og sammenfletning
Introduction into Directory Comparison and Merge
Ofte skal programmører ændre mange filer i en mappe for at opnå deres formål. For at opnå dette lader & kdiff3; dig også sammenligne og sammenflette hele mapper rekursivt!
Often programmers must modify many files in a directory to achieve their purpose. For this & kdiff3; also lets you compare and merge complete directories recursively!
Selvom sammenligning og sammenfletning af mapper synes at være ganske selvklart, er der flere detaljer som du bør kende til. Det vigtigste er naturligvis det faktum at mange filer nu kan påvirkes af hver handling. Hvis du ikke har sikkerhedskopier af originale data, kan det være meget svært eller til og med umuligt at komme tilbage til originaltilstanden. Så inden du påbegynder en sammenfletning, skal du sørge for at data er sikret, og at det er muligt at nulstille. Om du laver et arkiv, eller bruger et versionskontrolsystem er din egen beslutning, men til og med erfarne programmører og integratører behøver sommetider gammel kildekode. Bemærk også at også selvom jeg (forfatteren til & kdiff3;) forsøger at gøre mit bedste, kan jeg ikke garantere at der ikke er fejl. Ifølge GNU GPL er der INGEN GARANTI af nogen slags for dette program. Så hvor ydmyg, og husk altid:
Even though comparing and merging directories seems to be quite obvious, there are several details that you should know about. Most important is of course the fact that now many files might be affected by each operation. If you do n't have backups of your original data, then it can be very hard or even impossible to return to the original state. So before starting a merge, make sure that your data is safe, and going back is possible. If you make an archive or use some version control system is your decision, but even experienced programmers and integrators need the old sources now and then. And note that even though I (the author of & kdiff3;) try to do my best, I ca n't guarantee that there are no bugs. According to the GNU-GPL there is NO WARRANTY whatsoever for this program. So be humble and always keep in mind:
At fejle er menneskeligt, men for at virkelig lave rod i det behøves en maskine.
To err is human, but to really mess things up you need a computer.
Så dette er hvad programmet kan gøre for dig: & kdiff3;...
So this is what this program can do for you: & kdiff3;...
... læser og sammenligner to eller tre mapper rekursivt,
... reads and compares two or three directories recursively,
... håndterer symbolske link særskilt,
... takes special care of symbolic links,
... lader dig bladre gennem filer med et dobbeltklik,
... lets you browse files on mouse double click,
... foreslår en sammenfletningsmulighed for hvert objekt, som du kan ændre inden mappesammenfletningen startes,
... for each item proposes a merge operation, which you can change before starting the directory merge,
... lader dig simulere sammenfletningen og giver en liste af handlingerne som ville ske, uden at virkelig gøre dem,
... lets you simulate the merge and lists the actions that would take place, without actually doing them,
... lader dig udføre sammenfletningen, og lader dig bestemme hvornår manuel interaktion behøves,
... lets you really do the merge, and lets you interact whenever manual interaction is needed,
... lader dig udføre valgt handling for alle punkter (tasten F7) eller markeret punkt (tasten F6),
... lets you run the selected operation for all items (key F7) or the selected item (key F6),
... lader dig fortsætte sammenfletningen efter manuel interaktion med tasten F7,
... lets you continue the merge after manual interaction with key F7,
... laver valgfrie sikkerhedskopier, med filendelsen ". orig".
... optionally creates backups, with the ". orig" extension,
Start mappesammenligning eller sammenfletning
Starting Directory Comparison Or Merge
Dette ligner meget sammenfletning og sammenligning af en enkelt fil. Du skal kun angive mapper på kommandolinjen eller i dialogen for filåbning.
This is very similar to the single file merge and comparison. You just have to specify directories on the command line or in the file-open dialog.
Sammenlign eller sammenflet to mapper:
Compare/ Merge two directories:
kdiff3 kat1 kat2 kdiff3 kat1 kat2 - o målkat
kdiff3 dir1 dir2 kdiff3 dir1 dir2 -o destdir
Hvis ingen målmappe angives, bruger & kdiff3; kat2.
If no destination directory is specified, then & kdiff3; will use dir2.
Sammenlign eller sammenflet tre mapper:
Compare/ Merge three directories:
kdiff3 kat1 kat2 kat3 kdiff3 kat1 kat2 kat3 - o målkat
kdiff3 dir1 dir2 dir3 kdiff3 dir1 dir2 dir3 -o destdir
Når tre mapper sammenflettes, bruges kat1 som basen for sammenfletningen. Hvis ingen målmappe angives, bruger & kdiff3; kat3 som målmappe for sammenfletningen.
When three directories are merged then dir1 is used as the base for the merge. If no destination directory is specified, then & kdiff3; will use dir3 as the destination directory for the merge.
Bemærk at kun sammenligningen startes automatisk, ikke sammenfletningen. For det skal du først vælge et menupunkt eller tasten F7. (Mere information kommer senere.)
Note that only the comparison starts automatically, not the merge. For this you first must select a menu entry or the key F7. (More details later.)
Katalogsammenfletning af synlig information
Directory Merge Visible Information
Mens mapperne læses vises et meddelelsesfelt som informerer dig om forløbet. Hvis du afbryder mappesøgningen, vises kun filer som hidtil er sammenlignet.
While reading the directories a message-box appears that informs you of the progress. If you abort the directory scan, then only files that have been compared until then will be listed.
Når mappegennemsøgningen er færdig, viser & kdiff3; et listefelt med tilbageværende resultater,...
When the directory scan is complete then & kdiff3; will show a listbox with the results left,...
... og detaljer om det markerede punkt til højre:
... and details about the currently selected item on the right:
Navnesøjlen
The Name Column
Hver fil og mappe som blev fundet under søgningen vises her i et træ. Du kan vælge et punkt ved at klikke en gang på det med musen.
Each file and directory that was found during the scan is shown here in a tree. You can select an item by clicking it with the mouse once.
Mapperne er normalt sammentrukket. Du kan ekspandere og trække dem sammen ved at klikke på "+" / "-", ved at dobbeltklikke på punktet eller ved at bruge tasterne "venstrepil" og "højrepil". Menuen "Mappe" indeholder også to tilvalg "Træk alle undermapper sammen" og "Ekspandér alle undermapper" som du kan bruge til at trække sammen eller ekspandere alle mapper på én gang.
The directories are collapsed by default. You can expand and collapse them by clicking on the "+"/" - "or by double-clicking the item or by using the left/ right-arrow-keys. The" Directory"-menu also contains two actions "Fold all subdirs" and "Unfold all subdirs" with which you can collapse or expand all directories at once.
Hvis du dobbeltklikker på et filpunkt, udføres filsammenligning og sammenligningvinduet for filer vises.
If you double-click a file item then the file comparison starts and the file-diff-window will appear.
Ikonen i navnesøjlen svarer til filtypen i den første mappe ("A"). Den kan være en af disse:
The image in the name column reflects the file type in the first directory ("A"). It can be one of these:
Normal fil
Normal file
Normal mappe (mappeikon)
Normal directory (directory-image)
Link til en fil (filikon med en link- pil)
Link to a file (file-image with a link arrow)
Link til en mappe (mappeikon med en link- pil)
Link to a directory (directory-image with a link arrow)
Hvis filtypen er anderledes i de øvrige mapper, ses det i søjlerne A/ B/ C og i vinduet som viser detaljerne om det markerede punkt. Bemærk at i disse tilfælde kan ingen sammenfletningshandling vælges automatisk. Når sammenfletningen startes, informeres brugeren om denne slags problemer.
If the file type is different in the other directories, then this is visible in the columns A/ B/ C and in the window that shows the details about the selected item. Note that for such a case no merge operation can be selected automatically. When starting the merge, then the user will be informed of problems of that kind.
Søjlerne A/ B/ C og farvesammensætninger
The Columns A/ B/ C and the Coloring Scheme
Som det ses i billedet ovenfor, bruges farverne rød, grøn, gul og sort i søjlerne A/ B/ C.
As can be seen in the image above the colors red, green, yellow and black are used in the columns A/ B/ C.
Sort: Dette punkt eksisterer ikke i denne mappe.
Black: This item does n't exist in this directory.
Grøn: Nyeste punkt.
Green: Newest item.
Gul: Ældre end grøn, nyere end rød.
Yellow: Older than green, newer than red.
Rød: Ældst punkt.
Red: Oldest item.
Men for punkter som er identiske i sammenligningen, er farven også identisk selvom alderen ikke er det.
But for items that were identical in the comparison their color also is identical even if the age is not.
Mapper anses for at være ens hvis alle objekter de indeholder er ens. Så har de også samme farve. Alderen på en mappe spiller ingen rolle for dens farve.
Directories are considered equal if all items they contain are identical. Then they also will have the same color. But the age of a directory is not considered for its color.
Idéen til denne farvesammensætning fandt jeg i dirdiff. Farverne svarer til farverne for et blad, som er grønt i begyndelsen, derefter bliver gult og til sidst rødt når det er gammelt.
The idea for this coloring scheme I came upon in dirdiff. The colors resemble the colors of a leaf that is green when new, turns yellow later and red when old.
Handlingssøjlen
The Operation Column
Efter at have sammenlignet mapperne evaluerer & kdiff3; også et forslag til sammenfletningshandling. Den vises i søjlen "Handling". Du kan ændre den ved at klikke på handlingen du vil ændre. En lille menu dukker op og lader dig vælge en handling for dette punkt. (Du kan også vælge den oftest bruge handling via tastaturet. Ctrl+1/ 2/ 3/ 4/ Delete vælger A/ B/ C/ Sammenflet/ Slet hvis de er tilgængelige.) Denne handling udføres under sammenfletningen. Hvilke handlinger som er tilgængelige afhænger af punktet og sammenfletningstilstanden som bruges. Sammenfletningstilstanden er en af:
After comparing the directories & kdiff3; also evaluates a proposal for a merge operation. This is shown in the "Operation" column. You can modify the operation by clicking on the operation you want to change. A small menu will popup and allows you to select an operation for that item. (You can also select the most needed operations via keyboard. Ctrl+1/ 2/ 3/ 4/ Del will select A/ B/ C/ Merge/ Delete respectively if available.) This operation will be executed during the merge. It depends on the item and on the merge-mode you are in, what operations are available. The merge-mode is one of
Sammenfletning af tre mapper ("A" behandles som ældste basis for begge).
Three directory-merge ("A" is treated as older base of both).
Sammenfletning af to mapper.
Two directory-merge.
To- mappes synkroniseringstilstand (aktiveres med tilvalget "Synkronisér mapper").
Two directory-sync-mode (activate via option "Synchronize Directories").
Ved tremappers- sammenfletning er den handling der foreslås: Hvis for et objekt...
In three directory merge the operation proposal will be: If for an item...
... alle tre mapper er ens: Kopiér fra C
... all three directories are equal: Copy from C
... A og C er ens med B er det ikke: Kopiér fra B (eller hvis B ikke eksisterer, slet målet hvis det eksisterer)
... A and C are equal but B is not: Copy from B (or if B does not exist, delete the destination if exists)