diff --git a/reactos/base/applications/applications.rbuild b/reactos/base/applications/applications.rbuild index 232b44c0868..0a1265ce571 100644 --- a/reactos/base/applications/applications.rbuild +++ b/reactos/base/applications/applications.rbuild @@ -22,6 +22,9 @@ + + + diff --git a/reactos/base/applications/findstr/findstr.c b/reactos/base/applications/findstr/findstr.c new file mode 100644 index 00000000000..681bff7ee53 --- /dev/null +++ b/reactos/base/applications/findstr/findstr.c @@ -0,0 +1,295 @@ +/* findstr.c */ + +/* Copyright (C) 1994-2002, Jim Hall */ + +/* Adapted for ReactOS -Edited for Findstr.exe K'Williams */ + +/* + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +*/ + + +/* This program locates a string in a text file and prints those lines + * that contain the string. Multiple files are clearly separated. + */ + +#include +#include +#include +#include +#include + +#include +#include + +#include "resource.h" + + +/* Symbol definition */ +#define MAX_STR 1024 + + +/* This function prints out all lines containing a substring. There are some + * conditions that may be passed to the function. + * + * RETURN: If the string was found at least once, returns 1. + * If the string was not found at all, returns 0. + */ +int +find_str (char *sz, FILE *p, int invert_search, + int count_lines, int number_output, int ignore_case, int at_start, int literal_search, + int at_end, int reg_express, int exact_match, int sub_dirs, int only_fname) +{ + int i, length; + long line_number = 0, total_lines = 0; + char *c, temp_str[MAX_STR], this_line[MAX_STR]; + + /* Convert to upper if needed */ + if (ignore_case) + { + length = strlen (sz); + for (i = 0; i < length; i++) + sz[i] = toupper (sz[i]); + } + + /* Scan the file until EOF */ + while (fgets (temp_str, MAX_STR, p) != NULL) + { + /* Remove the trailing newline */ + length = strlen (temp_str); + if (temp_str[length-1] == '\n') + { + temp_str[length-1] = '\0'; + } + + /* Increment number of lines */ + line_number++; + strcpy (this_line, temp_str); + + /* Convert to upper if needed */ + if (ignore_case) + { + for (i = 0; i < length; i++) + { + temp_str[i] = toupper (temp_str[i]); + } + } + + /* Locate the substring */ + + /* strstr() returns a pointer to the first occurrence in the + string of the substring */ + c = strstr (temp_str, sz); + + if ( ((invert_search) ? (c == NULL) : (c != NULL)) ) + { + if (!count_lines) + { + if (number_output) + printf ("%ld:", line_number); + + /* Print the line of text */ + puts (this_line); + } + + total_lines++; + } /* long if */ + } /* while fgets */ + + if (count_lines) + { + /* Just show num. lines that contain the string */ + printf ("%ld\n", total_lines); + } + + + /* RETURN: If the string was found at least once, returns 1. + * If the string was not found at all, returns 0. + */ + return (total_lines > 0 ? 1 : 0); +} + +/* Show usage */ +void +usage (void) +{ + TCHAR lpUsage[4096]; + + LoadString( GetModuleHandle(NULL), IDS_USAGE, (LPTSTR)lpUsage, 4096); + CharToOem(lpUsage, lpUsage); + printf( lpUsage ); +} + + +/* Main program */ +int +main (int argc, char **argv) +{ + char *opt, *needle = NULL; + int ret = 0; + TCHAR lpMessage[4096]; + + int invert_search = 0; /* flag to invert the search */ + int count_lines = 0; /* flag to whether/not count lines */ + int number_output = 0; /* flag to print line numbers */ + int ignore_case = 0; /* flag to be case insensitive */ + int at_start = 0; /* flag to Match if at the beginning of a line. */ + int at_end = 0; /* flag to Match if at the beginning of a line. */ + int reg_express = 0; /* flag to use/not use regular expressions */ + int exact_match = 0; /* flag to be exact match */ + int sub_dirs= 0; /* this and all subdirectories */ + int only_fname= 0; /* print only the name of the file*/ + int literal_search=0; + + FILE *pfile; /* file pointer */ + int hfind; /* search handle */ + struct _finddata_t finddata; /* _findfirst, filenext block */ + + /* Scan the command line */ + while ((--argc) && (needle == NULL)) + { + if (*(opt = *++argv) == '/') + { + switch (opt[1]) + { + case 'b': + case 'B': /* Matches pattern if at the beginning of a line */ + at_start = 1; + break; + + //case 'c': + //case 'C': /* Literal? */ + // literal_search = 1; + // break; + + case 'e': + case 'E': /* matches pattern if at end of line */ + at_end = 1; + break; + + case 'i': + case 'I': /* Ignore */ + ignore_case = 1; + break; + + case 'm': + case 'M': /* only filename */ + only_fname = 1; + break; + + case 'n': + case 'N': /* Number */ + number_output = 1; + break; + + case 'r': + case 'R': /* search strings as regular expressions */ + reg_express = 1; + break; + + case 's': + case 'S': /* search files in child directory too*/ + sub_dirs = 1; + break; + + case 'v': + case 'V': /* Not with */ + invert_search = 1; + break; + + case 'x': + case 'X': /* exact match */ + exact_match = 1; + break; + + default: + usage (); + exit (2); /* syntax error .. return error 2 */ + break; + } + } + else + { + /* Get the string */ + if (needle == NULL) + { + /* Assign the string to find */ + needle = *argv; + } + } + } + + /* Check for search string */ + if (needle == NULL) + { + /* No string? */ + usage (); + exit (1); + } + + /* Scan the files for the string */ + if (argc == 0) + { + ret = find_str (needle, stdin, invert_search, count_lines, + number_output, ignore_case, at_start, literal_search, at_end, reg_express, exact_match, + sub_dirs, only_fname); + } + + while (--argc >= 0) + { + hfind = _findfirst (*++argv, &finddata); + if (hfind < 0) + { + /* We were not able to find a file. Display a message and + set the exit status. */ + LoadString( GetModuleHandle(NULL), IDS_NO_SUCH_FILE, (LPTSTR)lpMessage, 4096); + CharToOem(lpMessage, lpMessage); + fprintf (stderr, lpMessage, *argv);// + } + else + { + /* repeat find next file to match the filemask */ + do + { + /* We have found a file, so try to open it */ + if ((pfile = fopen (finddata.name, "r")) != NULL) + { + printf ("---------------- %s\n", finddata.name); + ret = find_str (needle, pfile, invert_search, count_lines, + number_output, ignore_case, at_start, literal_search, at_end, reg_express, exact_match, + sub_dirs, only_fname); + fclose (pfile); + } + else + { + LoadString(GetModuleHandle(NULL), IDS_CANNOT_OPEN, (LPTSTR)lpMessage, 4096); + CharToOem(lpMessage, lpMessage); + fprintf (stderr, lpMessage, + finddata.name); + } + } + while (_findnext(hfind, &finddata) > 0); + } + _findclose(hfind); + } /* for each argv */ + + /* RETURN: If the string was found at least once, returns 0. + * If the string was not found at all, returns 1. + * (Note that find_str.c returns the exact opposite values.) + */ + exit ( (ret ? 0 : 1) ); +} + + diff --git a/reactos/base/applications/findstr/findstr.rbuild b/reactos/base/applications/findstr/findstr.rbuild new file mode 100644 index 00000000000..64306e39df8 --- /dev/null +++ b/reactos/base/applications/findstr/findstr.rbuild @@ -0,0 +1,8 @@ + + + + user32 + findstr.c + findstr.rc + rsrc.rc + diff --git a/reactos/base/applications/findstr/findstr.rc b/reactos/base/applications/findstr/findstr.rc new file mode 100644 index 00000000000..8d50fbaa345 --- /dev/null +++ b/reactos/base/applications/findstr/findstr.rc @@ -0,0 +1,6 @@ +#define REACTOS_STR_FILE_DESCRIPTION "W32 findstr command\0" +#define REACTOS_STR_INTERNAL_NAME "findstr\0" +#define REACTOS_STR_ORIGINAL_FILENAME "findstr.exe\0" +#include + +#include "rsrc.rc" diff --git a/reactos/base/applications/findstr/lang/bg-BG.rc b/reactos/base/applications/findstr/lang/bg-BG.rc new file mode 100644 index 00000000000..3f7cd7fde86 --- /dev/null +++ b/reactos/base/applications/findstr/lang/bg-BG.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_BULGARIAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Èçâåæäà âñè÷êè ðåäîâå âúâ ôàéëà, êîèòî ñúäúðæàò óêàçàíèÿ íèç..\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"íèç\" [ ôàéë... ]\n\ + /C Áðîè êîëêî ðåäà ñúäúðæàò íèçà\n\ + /I Ïðåíåáðåãâà ÃëÀâÍÎñÒòà\n\ + /N Áðîé ïîêàçàíè ðåäîâå, êàòî ñå çàïî÷âà îò 1\n\ + /V Èçâåæäàíå íà ðåäîâåòå, ÍÅñúäúðæàùè íèçà." + +IDS_NO_SUCH_FILE, "FIND: %s: Íÿìà òàêúâ ôàéë\n" + +IDS_CANNOT_OPEN, "FIND: %s: Îòâàðÿíåòî íà ôàéëà å íåâúçìîæíî\n" + +END diff --git a/reactos/base/applications/findstr/lang/ca-ES.rc b/reactos/base/applications/findstr/lang/ca-ES.rc new file mode 100644 index 00000000000..932d4bc06bc --- /dev/null +++ b/reactos/base/applications/findstr/lang/ca-ES.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_CATALAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Mostra totes les linies que continguin una determinada cadena de caràcters.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"Cadena de caràcters\" [ file... ]\n\ + /C Conta el numero de linies que contenen la cadena de caràcters\n\ + /I Ignora majúscules i minúscules\n\ + /N Numero de linies mostrades, començant per la primera\n\ + /V Mostra les linies que no contenen la cadena de caràcters" + +IDS_NO_SUCH_FILE, "FIND: %s: No he trobat el fitxer\n" + +IDS_CANNOT_OPEN, "FIND: %s: No puc obrir el fitxer\n" + +END diff --git a/reactos/base/applications/findstr/lang/cs-CZ.rc b/reactos/base/applications/findstr/lang/cs-CZ.rc new file mode 100644 index 00000000000..8a41024c73b --- /dev/null +++ b/reactos/base/applications/findstr/lang/cs-CZ.rc @@ -0,0 +1,23 @@ +/* FILE: applications/cmdutils/find/lang/cs-CZ.rc + * TRANSLATOR: Radek Liska aka Black_Fox (radekliska at gmail dot com) + * THANKS TO: Mario Kacmar aka Kario (kario@szm.sk) + * UPDATED: 2008-02-29 + */ + +LANGUAGE LANG_CZECH, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Zobrazí všechny øádky souboru obsahující hledaný øetìzec.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"øetìzec\" [ soubor... ]\n\ + /C Zobrazí poèet øádkù obsahující øetìzec.\n\ + /I Ignoruje velikost písmen.\n\ + /N Èísluje zobrazené øádky, zaèíná od 1.\n\ + /V Zobrazí všechny øádky, které NEobsahují zadaný øetìžec." + +IDS_NO_SUCH_FILE, "FIND: Soubor %s nebyl nalezen.\n" + +IDS_CANNOT_OPEN, "FIND: Soubor %s nelze otevøít!\n" + +END diff --git a/reactos/base/applications/findstr/lang/de-DE.rc b/reactos/base/applications/findstr/lang/de-DE.rc new file mode 100644 index 00000000000..1663cc7aff7 --- /dev/null +++ b/reactos/base/applications/findstr/lang/de-DE.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_GERMAN, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "Sucht in einer Datei nach einer Zeichenfolge.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"string\" [ file... ]\n\ + /C Zeigt nur die Anzahl der die Zeichenfolge enthaltenen Zeilen an.\n\ + /I Ignoriert Groß-/Kleinbuchstaben bei der Suche.\n\ + /N Zeigt die Zeilen mit ihren Zeilennummern an.\n\ + /V Zeigt alle Zeilen an, die die Zeichenfolge NICHT enhalten." + +IDS_NO_SUCH_FILE, "Datei %s nicht gefunden\n" + +IDS_CANNOT_OPEN, "Datei %s kann nicht geöffnet werden.\n" + +END diff --git a/reactos/base/applications/findstr/lang/el-GR.rc b/reactos/base/applications/findstr/lang/el-GR.rc new file mode 100644 index 00000000000..19e993dda46 --- /dev/null +++ b/reactos/base/applications/findstr/lang/el-GR.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_GREEK, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Åêôõðþíåé üëåò ôéò ãñáììÝò åíüò áñ÷åßïõ ðïõ ðåñéÝ÷ïõí Ýíá áëöáñéèìçôéêü.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"áëöáñéèìçôéêü\" [ áñ÷åßï... ]\n\ + /C ÌÝôñçóç ãñáììþí ðïõ ðåñéÝ÷ïõí ôï áëöáñéèìçôéêü\n\ + /I Áãíüçóç êåöáëáßùí\n\ + /N ÅìöÜíéóç áñéèìþí óôéò åìöáíéæüìåíåò ãñáììÝò, îåêéíþíôáò áðü ôï 1\n\ + /V Åêôýðùóç ãñáììþí ðïõ äåí ðåñéÝ÷ïõí ôï áëöáñéèìçôéêü" + +IDS_NO_SUCH_FILE, "FIND: %s: Äåí õðÜñ÷åé áõôü ôï áñ÷åßï\n" + +IDS_CANNOT_OPEN, "FIND: %s: Äåí Þôáí äõíáôü ôï Üíïéãìá ôïõ áñ÷åßïõ\n" + +END diff --git a/reactos/base/applications/findstr/lang/en-US.rc b/reactos/base/applications/findstr/lang/en-US.rc new file mode 100644 index 00000000000..d4ebfe38d53 --- /dev/null +++ b/reactos/base/applications/findstr/lang/en-US.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FINDSTR: Prints all lines of a file that contain a string.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"string\" [ file... ]\n\ + /C Count the number of lines that contain string\n\ + /I Ignore case\n\ + /N Number the displayed lines, starting at 1\n\ + /V Print lines that do not contain the string" + +IDS_NO_SUCH_FILE, "FINDSTR: %s: No such file\n" + +IDS_CANNOT_OPEN, "FINDSTR: %s: Cannot open file\n" + +END diff --git a/reactos/base/applications/findstr/lang/es-ES.rc b/reactos/base/applications/findstr/lang/es-ES.rc new file mode 100644 index 00000000000..f2fee3f0a4b --- /dev/null +++ b/reactos/base/applications/findstr/lang/es-ES.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_SPANISH, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Imprime todas las líneas de un fichero que contiene una cadena.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"cadena\" [ fichero... ]\n\ + /C Cuenta el número de líneas que contienen la cadena de caracteres\n\ + /I Ignora mayúsculas y minúsculas\n\ + /N Numero de líneas a mostrar en pantalla, a partir de la primera\n\ + /V Muestra las líneas que no contienen la cadena de caracteres." + +IDS_NO_SUCH_FILE, "FIND: %s: No se encontró el fichero\n" + +IDS_CANNOT_OPEN, "FIND: %s: No se pudo abrir el fichero\n" + +END diff --git a/reactos/base/applications/findstr/lang/fr-FR.rc b/reactos/base/applications/findstr/lang/fr-FR.rc new file mode 100644 index 00000000000..076f0930177 --- /dev/null +++ b/reactos/base/applications/findstr/lang/fr-FR.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_FRENCH, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Affiche toutes les lignes d'un fichier qui contiennent un morceau de texte.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"texte\" [ fichier... ]\n\ + /C Compte le nombre de lignes qui contiennent le texte\n\ + /I Insensible à la casse\n\ + /N Numérote les lignes affichées en commençant à 1\n\ + /V Affiche les lignes qui ne contiennent pas le texte" + +IDS_NO_SUCH_FILE, "FIND: %s : fichier inexistant\n" + +IDS_CANNOT_OPEN, "FIND: %s : impossible d'ouvrir le fichier\n" + +END diff --git a/reactos/base/applications/findstr/lang/it-IT.rc b/reactos/base/applications/findstr/lang/it-IT.rc new file mode 100644 index 00000000000..d0dabd405f2 --- /dev/null +++ b/reactos/base/applications/findstr/lang/it-IT.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Visualizza le linee di un file che contengono un stringa.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"stringa\" [ file... ]\n\ + /C Conta il numero di linee che contengono la stringa\n\ + /I Ignora maiuscole/minuscole\n\ + /N Numera le linee visualizzate a partire da 1\n\ + /V Visualizza le linee che non contengono la stringa" + +IDS_NO_SUCH_FILE, "FIND: %s: File non trovato\n" + +IDS_CANNOT_OPEN, "FIND: %s: Impossibile aprire il file\n" + +END diff --git a/reactos/base/applications/findstr/lang/lt-LT.rc b/reactos/base/applications/findstr/lang/lt-LT.rc new file mode 100644 index 00000000000..ce5b86af08a --- /dev/null +++ b/reactos/base/applications/findstr/lang/lt-LT.rc @@ -0,0 +1,26 @@ +/* + * PROJECT: ReactOS find command + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/cmdutils/find/lang/lt-LT.rc + * PURPOSE: Lithuanian Language File + * TRANSLATOR: Vytis "CMan" Girdþijauskas (cman@cman.us) + * DATE: 2007-09-23 + */ + +LANGUAGE LANG_LITHUANIAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Spausdina visas bylos eilutes, kuriose yra ieðkomas tekstas.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"tekstas\" [ byla... ]\n\ + /C Skaièiuoti eilutes, kuriose yra ieðkomas tekstas\n\ + /I Ignoruoti raidþiø dydá\n\ + /N Numeruoti vaizduojamas eilutes, pradedant nuo 1\n\ + /V Spausdinti eilutes, kuriose nëra ieðkomo teksto" + +IDS_NO_SUCH_FILE, "FIND: %s: Tokios bylos nëra\n" + +IDS_CANNOT_OPEN, "FIND: %s: Nepavyko atverti bylos\n" + +END diff --git a/reactos/base/applications/findstr/lang/no-NO.rc b/reactos/base/applications/findstr/lang/no-NO.rc new file mode 100644 index 00000000000..d564684f86f --- /dev/null +++ b/reactos/base/applications/findstr/lang/no-NO.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_NORWEGIAN, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FINN: Skriv alle linjene for filen som inneholder en streng.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"streng\" [ fil... ]\n\ + /C Teller nummer av linjer som inneholder strenger\n\ + /I Ignorere sak\n\ + /N Nummer viste linjer, start med 1\n\ + /V Skriv linjer som ikke inneholder en streng" + +IDS_NO_SUCH_FILE, "FINN: %s: Ingen filer\n" + +IDS_CANNOT_OPEN, "FINN: %s: Kan ikke åpne filen\n" + +END diff --git a/reactos/base/applications/findstr/lang/pl-PL.rc b/reactos/base/applications/findstr/lang/pl-PL.rc new file mode 100644 index 00000000000..744623e2aa4 --- /dev/null +++ b/reactos/base/applications/findstr/lang/pl-PL.rc @@ -0,0 +1,24 @@ +/* + * translated by Caemyr - Olaf Siejka (Dec,2007) + * Use ReactOS forum PM or IRC to contact me + * http://www.reactos.org + * IRC: irc.freenode.net #reactos-pl + */ + +LANGUAGE LANG_POLISH, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Wyœwietla wszystkie linie danego pliku, zawieraj¹ce szukany ci¹g znaków.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"ci¹g znaków\" [ plik... ]\n\ + /C Oblicza w ilu liniach pojawi³ siê szukany ci¹g znaków\n\ + /I Ignoruje wielkoœæ liter\n\ + /N Numeruje wyœwietlane linie, zaczynaj¹c od 1\n\ + /V Wyœwietla te linie które nie zawieraj¹ szukanego ci¹gu znaków" + +IDS_NO_SUCH_FILE, "FIND: %s: Plik nie zosta³ znaleziony\n" + +IDS_CANNOT_OPEN, "FIND: %s: Nie mo¿na otworzyæ pliku\n" + +END diff --git a/reactos/base/applications/findstr/lang/pt-BR.rc b/reactos/base/applications/findstr/lang/pt-BR.rc new file mode 100644 index 00000000000..de6342b71b3 --- /dev/null +++ b/reactos/base/applications/findstr/lang/pt-BR.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_PORTUGUESE, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Localiza uma seqüência de texto em um ou mais arquivos.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"seqüência\" [ arquivo... ]\n\ + /C Exibe apenas o número de linhas que contêm a seqüência.\n\ + /I Ignora maiúsculas/minúsculas ao localizar uma seqüência.\n\ + /N Exibe o número de cada linha, iniciando no 1.\n\ + /V Exibe todas as linhas que NÃO contêm a seqüência especificada." + +IDS_NO_SUCH_FILE, "FIND: %s: Arquivo não encontrado\n" + +IDS_CANNOT_OPEN, "FIND: %s: Não foi possível abrir o arquivo\n" + +END diff --git a/reactos/base/applications/findstr/lang/ru-RU.rc b/reactos/base/applications/findstr/lang/ru-RU.rc new file mode 100644 index 00000000000..94594f56770 --- /dev/null +++ b/reactos/base/applications/findstr/lang/ru-RU.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_RUSSIAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Ïîèñê òåêñòîâîé ñòðîêè â îäíîì èëè íåñêîëüêèõ ôàéëàõ.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"ñòðîêà\" [ ôàéë... ]\n\ + /C Âûâîä òîëüêî îáùåãî ÷èñëà ñòðîê, ñîäåðæàùèõ çàäàííóþ ñòðîêó.\n\ + /I Ïîèñê áåç ó÷åòà ðåãèñòðà ñèìâîëîâ.\n\ + /N Âûâîä íîìåðîâ îòîáðàæàåìûõ ñòðîê (íà÷èíàÿ ñ 1).\n\ + /V Âûâîä âñåõ ñòðîê, ÍÅ ñîäåðæàùèõ çàäàííóþ ñòðîêó." + +IDS_NO_SUCH_FILE, "FIND: %s: Ôàéë íå ñóùåñòâóåò.\n" + +IDS_CANNOT_OPEN, "FIND: %s: Íåâîçìîæíî îòêðûòü ôàéë.\n" + +END diff --git a/reactos/base/applications/findstr/lang/sk-SK.rc b/reactos/base/applications/findstr/lang/sk-SK.rc new file mode 100644 index 00000000000..93037288a93 --- /dev/null +++ b/reactos/base/applications/findstr/lang/sk-SK.rc @@ -0,0 +1,21 @@ +/* TRANSLATOR: M rio KaŸm r /Mario Kacmar/ aka Kario (kario@szm.sk) + * DATE OF TR: 12-02-2008 + */ + +LANGUAGE LANG_SLOVAK, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Zobraz¡ vçetky riadky s£boru obsahuj£ce h–adanì reœazec.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"reœazec\" [ s£bor... ]\n\ + /C Zobraz¡ poŸet riadkov, ktor‚ obsahuj£ reœazec.\n\ + /I Ignoruje ve–kosœ p¡smen.\n\ + /N ¬¡sluje zobrazen‚ riadky, zaŸ¡na od 1.\n\ + /V Zobraz¡ vçetky riadky, ktor‚ neobsahuj£ h–adanì reœazec." + +IDS_NO_SUCH_FILE, "FIND: S£bor %s sa nenaçiel.\n" + +IDS_CANNOT_OPEN, "FIND: S£bor %s sa ned  otvoriœ.\n" + +END diff --git a/reactos/base/applications/findstr/lang/sv-SE.rc b/reactos/base/applications/findstr/lang/sv-SE.rc new file mode 100644 index 00000000000..e8d0d6eefdc --- /dev/null +++ b/reactos/base/applications/findstr/lang/sv-SE.rc @@ -0,0 +1,17 @@ +LANGUAGE LANG_SWEDISH, SUBLANG_NEUTRAL + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Skriver ut alla rader i en fil som innehåller en sträng.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"sträng\" [ fil... ]\n\ + /C Räkna nummren av linjer som innehåller en strängen\n\ + /I Ignorera skiftläge\n\ + /N Antal visade rader, börjar på 1\n\ + /V Skriver ut rader som inte innehåller strängen" + +IDS_NO_SUCH_FILE, "FIND: %s: Ingen sorts fil\n" + +IDS_CANNOT_OPEN, "FIND: %s: Kan inte öppna filen\n" + +END diff --git a/reactos/base/applications/findstr/lang/uk-UA.rc b/reactos/base/applications/findstr/lang/uk-UA.rc new file mode 100644 index 00000000000..b7df8b4e635 --- /dev/null +++ b/reactos/base/applications/findstr/lang/uk-UA.rc @@ -0,0 +1,25 @@ +/* + * PROJECT: Find + * LICENSE: GPL - See COPYING in the top level directory + * FILE: base/applications/cmdutils/find/lang/uk-UA.rc + * PURPOSE: Ukraianian Language File for find + * TRANSLATOR: Artem Reznikov + */ + +LANGUAGE LANG_UKRAINIAN, SUBLANG_DEFAULT + +STRINGTABLE DISCARDABLE +BEGIN + +IDS_USAGE, "FIND: Âèâåäåííÿ âñ³õ ðÿäê³â ôàéëó, ÿê³ ì³ñòÿòü ðÿäîê.\n\n\ + FIND [ /C ] [ /I ] [ /N ] [ /V ] \"ðÿäîê\" [ ôàéë... ]\n\ + /C Ïîðàõóâàòè ê³ëüê³ñòü ðÿäê³â, ÿê³ ì³ñòÿòü ðÿäîê\n\ + /I Íå âðàõîâóâàòè ðåã³ñòð ñèìâîë³â\n\ + /N Íóìåðóâàòè ðÿäêè, ÿê³ â³äîáðàæàþòüñÿ (ïî÷èíàþ÷è ç 1)\n\ + /V Âèâåäåííÿ ðÿäê³â, ÿê³ íå ì³ñòÿòü çàäàíèé ðÿäîê" + +IDS_NO_SUCH_FILE, "FIND: %s: Ôàéë íå ³ñíóº\n" + +IDS_CANNOT_OPEN, "FIND: %s: Íåìîæëèâî â³äêðèòè ôàéë\n" + +END diff --git a/reactos/base/applications/findstr/resource.h b/reactos/base/applications/findstr/resource.h new file mode 100644 index 00000000000..444cd8cc457 --- /dev/null +++ b/reactos/base/applications/findstr/resource.h @@ -0,0 +1,3 @@ +#define IDS_USAGE 1000 +#define IDS_NO_SUCH_FILE 1001 +#define IDS_CANNOT_OPEN 1002 diff --git a/reactos/base/applications/findstr/rsrc.rc b/reactos/base/applications/findstr/rsrc.rc new file mode 100644 index 00000000000..99baec73cbe --- /dev/null +++ b/reactos/base/applications/findstr/rsrc.rc @@ -0,0 +1,20 @@ +#include +#include "resource.h" + +#include "lang/bg-BG.rc" +#include "lang/ca-ES.rc" +#include "lang/cs-CZ.rc" +#include "lang/de-DE.rc" +#include "lang/el-GR.rc" +#include "lang/en-US.rc" +#include "lang/es-ES.rc" +#include "lang/fr-FR.rc" +#include "lang/it-IT.rc" +#include "lang/lt-LT.rc" +#include "lang/no-NO.rc" +#include "lang/pl-PL.rc" +#include "lang/pt-BR.rc" +#include "lang/ru-RU.rc" +#include "lang/sk-SK.rc" +#include "lang/sv-SE.rc" +#include "lang/uk-UA.rc" diff --git a/reactos/boot/bootdata/packages/reactos.dff b/reactos/boot/bootdata/packages/reactos.dff index f08fb2489c0..778dac88b98 100644 --- a/reactos/boot/bootdata/packages/reactos.dff +++ b/reactos/boot/bootdata/packages/reactos.dff @@ -45,6 +45,7 @@ base\applications\cmdutils\xcopy\xcopy.exe 1 base\applications\control\control.exe 1 base\applications\dxdiag\dxdiag.exe 1 base\applications\extrac32\extrac32.exe 1 +base\applications\findstr\findstr.exe 1 base\applications\fontview\fontview.exe 1 base\applications\games\solitaire\sol.exe 1 base\applications\games\spider\spider.exe 1