# HG changeset patch # User vimboss # Date 1143407210 0 # Node ID 4f1b94b51e99370161ceb5a923573772ca068582 # Parent 111e109dad1301c7699d18e5689f1842f4b67e6c updated for version 7.0b02 diff --git a/Filelist b/Filelist --- a/Filelist +++ b/Filelist @@ -658,6 +658,8 @@ LANG_GEN = \ runtime/doc/*-fr.UTF-8.1 \ runtime/doc/*-it.1 \ runtime/doc/*-it.UTF-8.1 \ + runtime/doc/*-pl.1 \ + runtime/doc/*-pl.UTF-8.1 \ runtime/doc/*-ru.1 \ runtime/doc/*-ru.UTF-8.1 \ runtime/lang/README.txt \ diff --git a/runtime/colors/koehler.vim b/runtime/colors/koehler.vim --- a/runtime/colors/koehler.vim +++ b/runtime/colors/koehler.vim @@ -2,7 +2,7 @@ " vim: tw=0 ts=4 sw=4 " Vim color file " Maintainer: Ron Aaron -" Last Change: 2003 May 02 +" Last Change: 2006 Mar 26 hi clear set background=dark @@ -37,6 +37,12 @@ hi PreProc term=underline ctermfg=da hi Type term=underline cterm=bold ctermfg=lightgreen gui=bold guifg=#60ff60 hi Error term=reverse ctermfg=darkcyan ctermbg=black guifg=Red guibg=Black hi Todo term=standout ctermfg=black ctermbg=darkcyan guifg=Blue guibg=Yellow +hi CursorLine term=underline guibg=#555555 +hi CursorColumn term=underline guibg=#555555 +hi MatchParen term=reverse guibg=Blue +hi TabLine term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white gui=bold guifg=blue guibg=white +hi TabLineFill term=bold,reverse cterm=bold ctermfg=lightblue ctermbg=white gui=bold guifg=blue guibg=white +hi TabLineSel term=reverse ctermfg=white ctermbg=lightblue guifg=white guibg=blue hi link IncSearch Visual hi link String Constant hi link Character Constant diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.0b. Last change: 2006 Mar 25 +*eval.txt* For Vim version 7.0b. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -2471,6 +2471,7 @@ finddir({name}[, {path}[, {count}]]) If {path} is omitted or empty then 'path' is used. If the optional {count} is given, find {count}'s occurrence of {name} in {path} instead of the first one. + When {count} is negative return all the matches in a |List|. This is quite similar to the ex-command |:find|. {only available when compiled with the +file_in_path feature} diff --git a/runtime/doc/evim-pl.1 b/runtime/doc/evim-pl.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/evim-pl.1 @@ -0,0 +1,53 @@ +.TH EVIM 1 "2002 Lut 16" +.SH NAZWA +evim \- łatwy Vim, edytuj plik w Vimie z ustawieniami dla edycji bez +trybów +.SH SYNOPSIS +.br +.B evim +[opcje] [plik ...] +.br +.B eview +.SH OPIS +.B eVim +uruchamia +.B Vima +i ustawia opcje tak by zachowywał się jak edytor bez trybów. +To jest cały czas Vim ale używany jako edytor wskaż-i-kliknij. +Zachowanie w stlu Notepada dla MS-Windows. +.B eVim +będzie zawsze uruchomiony w GUI by włączyć menu i pasek narzędzi. +.PP +Przeznaczony tylko dla ludzi, którzy naprawdę nie potrafią pracować +z Vimem w normalny sposób. Edycja będzie o wiele mniej efektywna. +.PP +.B eview +działa tak samo, ale zaczyna w trybie tylko do odczytu. Działa tak +samo jak evim \-R. +.PP +Zobacz vim(1) by poznać więcej szczegółów o Vimie, opcjach, itd. +.PP +Opcja 'insertmode' jest ustawiona by można było od razu wpisywać +tekst. +.br +Mapowania są ustawione tak by Kopiowanie i Wklejanie działało +z klawiszami MS-Windows. CTRL-X wycina tekst, CTRL-C kopiuje +a CTRL-V wkleja. Użyj CTRL-Q by uzyskać oryginalne znaczenie +CTRL-V. +.SH OPCJE +Zobacz vim(1). +.SH PLIKI +.TP 15 +/usr/local/lib/vim/evim.vim +Skrypt uruchamiania dla eVima. +.SH ZNANY JAKO +Znany jako "Vim dla frajerów". +Jeśli używasz evima oczekuje się, że wyjmiesz chusteczkę do nosa, +zrobisz węzęł w każdym rogu i będziesz to nosił na głowie. +.SH ZOBACZ TAKŻE +vim(1) +.SH AUTOR +Większość +.B Vima +została napisana przez Brama Moolenaara z dużą pomocą innych osób. +Zobacz menu Help/Credits. diff --git a/runtime/doc/evim-pl.UTF-8.1 b/runtime/doc/evim-pl.UTF-8.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/evim-pl.UTF-8.1 @@ -0,0 +1,53 @@ +.TH EVIM 1 "2002 Lut 16" +.SH NAZWA +evim \- łatwy Vim, edytuj plik w Vimie z ustawieniami dla edycji bez +trybĂłw +.SH SYNOPSIS +.br +.B evim +[opcje] [plik ...] +.br +.B eview +.SH OPIS +.B eVim +uruchamia +.B Vima +i ustawia opcje tak by zachowywał się jak edytor bez trybĂłw. +To jest cały czas Vim ale uĹźywany jako edytor wskaĹź-i-kliknij. +Zachowanie w stlu Notepada dla MS-Windows. +.B eVim +będzie zawsze uruchomiony w GUI by włączyć menu i pasek narzędzi. +.PP +Przeznaczony tylko dla ludzi, ktĂłrzy naprawdę nie potrafią pracować +z Vimem w normalny sposĂłb. Edycja będzie o wiele mniej efektywna. +.PP +.B eview +działa tak samo, ale zaczyna w trybie tylko do odczytu. Działa tak +samo jak evim \-R. +.PP +Zobacz vim(1) by poznać więcej szczegółów o Vimie, opcjach, itd. +.PP +Opcja 'insertmode' jest ustawiona by moĹźna było od razu wpisywać +tekst. +.br +Mapowania są ustawione tak by Kopiowanie i Wklejanie działało +z klawiszami MS-Windows. CTRL-X wycina tekst, CTRL-C kopiuje +a CTRL-V wkleja. UĹźyj CTRL-Q by uzyskać oryginalne znaczenie +CTRL-V. +.SH OPCJE +Zobacz vim(1). +.SH PLIKI +.TP 15 +/usr/local/lib/vim/evim.vim +Skrypt uruchamiania dla eVima. +.SH ZNANY JAKO +Znany jako "Vim dla frajerĂłw". +Jeśli uĹźywasz evima oczekuje się, Ĺźe wyjmiesz chusteczkę do nosa, +zrobisz węzęł w kaĹźdym rogu i będziesz to nosił na głowie. +.SH ZOBACZ TAKĹťE +vim(1) +.SH AUTOR +Większość +.B Vima +została napisana przez Brama Moolenaara z dużą pomocą innych osĂłb. +Zobacz menu Help/Credits. diff --git a/runtime/doc/if_ruby.txt b/runtime/doc/if_ruby.txt --- a/runtime/doc/if_ruby.txt +++ b/runtime/doc/if_ruby.txt @@ -1,4 +1,4 @@ -*if_ruby.txt* For Vim version 7.0b. Last change: 2006 Mar 06 +*if_ruby.txt* For Vim version 7.0b. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Shugo Maeda @@ -78,23 +78,26 @@ 2. The VIM module *ruby-vim* Ruby code gets all of its access to vim via the "VIM" module. Overview > - print "Hello" # displays a message - VIM.command(cmd) # execute an ex command - num = VIM::Window.count # gets the number of windows - w = VIM::Window[n] # gets window "n" - cw = VIM::Window.current # gets the current window - num = VIM::Buffer.count # gets the number of buffers - b = VIM::Buffer[n] # gets buffer "n" - cb = VIM::Buffer.current # gets the current buffer - w.height = lines # sets the window height - w.cursor = [row, col] # sets the window cursor position - pos = w.cursor # gets an array [row, col] - name = b.name # gets the buffer file name - line = b[n] # gets a line from the buffer - num = b.count # gets the number of lines - b[n] = str # sets a line in the buffer - b.delete(n) # deletes a line - b.append(n, str) # appends a line after n + print "Hello" # displays a message + VIM.command(cmd) # execute an ex command + num = VIM::Window.count # gets the number of windows + w = VIM::Window[n] # gets window "n" + cw = VIM::Window.current # gets the current window + num = VIM::Buffer.count # gets the number of buffers + b = VIM::Buffer[n] # gets buffer "n" + cb = VIM::Buffer.current # gets the current buffer + w.height = lines # sets the window height + w.cursor = [row, col] # sets the window cursor position + pos = w.cursor # gets an array [row, col] + name = b.name # gets the buffer file name + line = b[n] # gets a line from the buffer + num = b.count # gets the number of lines + b[n] = str # sets a line in the buffer + b.delete(n) # deletes a line + b.append(n, str) # appends a line after n + line = VIM::Buffer.current.line # gets the current line + num = VIM::Buffer.current.line_number # gets the current line number + VIM::Buffer.current.line = "test" # sets the current line number < Module Functions: @@ -144,6 +147,11 @@ self[{n}] = {str} delete({n}) Deletes a line from the buffer. {n} is the line number. append({n}, {str}) Appends a line after the line {n}. +line Returns the current line of the buffer if the buffer is + active. +line = {str} Sets the current line of the buffer if the buffer is active. +line_number Returns the number of the current line if the buffer is + active. ============================================================================== 4. VIM::Window objects *ruby-window* diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1,4 +1,4 @@ -*options.txt* For Vim version 7.0b. Last change: 2006 Mar 25 +*options.txt* For Vim version 7.0b. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -78,7 +78,7 @@ 1. Setting options *set-option* *E76 If the option is a list of flags, superfluous flags are removed. When adding a flag that was already present the option value doesn't change. -< Also see |:set-args| above. + Also see |:set-args| above. {not in Vi} :se[t] {option}^={value} *:set^=* @@ -269,7 +269,13 @@ You will not get back the 'list' value a shown (but that might change in the future). {not in Vi} -:setl[ocal] {option}< Set the local value of {option} to its global value. +:setl[ocal] {option}< Set the local value of {option} to its global value by + copying the value. + {not in Vi} + +:se[t] {option}< Set the local value of {option} to its global value by + making it empty. Only makes sense for |global-local| + options. {not in Vi} *:setg* *:setglobal* @@ -316,7 +322,11 @@ This only works for a string option. Fo :setlocal autoread< Note that for non-boolean options using "<" copies the global value to the local value, it doesn't switch back to using the global value (that matters -when changing the global value later). +when the global value changes later). You can also use: > + :set path< +This will make the local value of 'path' empty, so that the global value is +used. Thus it does the same as: > + :setlocal path= Note: In the future more global options can be made global-local. Using ":setlocal" on a global option might work differently then. diff --git a/runtime/doc/spell.txt b/runtime/doc/spell.txt --- a/runtime/doc/spell.txt +++ b/runtime/doc/spell.txt @@ -1,4 +1,4 @@ -*spell.txt* For Vim version 7.0b. Last change: 2006 Mar 10 +*spell.txt* For Vim version 7.0b. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -975,7 +975,7 @@ The first line is a header and has four For PFX the fields are exactly the same. The basic format for the following lines is: - SFX {flag} {strip} {add} {condition} + SFX {flag} {strip} {add} {condition} {extra} {flag} Must be the same as the {flag} used in the first line. @@ -987,6 +987,8 @@ The basic format for the following lines When {strip} is 0 (zero) then nothing is stripped. {add} Characters added to the basic word, after removing {strip}. + Optionally there is a '/' followed by flags. The flags apply + to the word plus affix. See |spell-affix-flags| {condition} A simplistic pattern. Only when this matches with a basic word will the suffix be used for that word. This is normally @@ -1002,6 +1004,13 @@ The basic format for the following lines complement of the specified characters. [^abc] matches any character but a, b and c. +{extra} Optional extra text: + rare word + affix is rare + nocomp no compounding for word + affix + # comment Comment is ignored + - Hunspell uses this, ignored + "rare" and "nocomp" are deprecated. + For PFX the fields are the same, but the {strip}, {add} and {condition} apply to the start of the word. @@ -1228,7 +1237,7 @@ A specific example: Allow a compound to In the .aff file: COMPOUNDRULE sde ~ NEEDAFFIX x ~ - COMPOUNDMAX 3 ~ + COMPOUNDWORDMAX 3 ~ COMPOUNDMIN 1 ~ In the .dic file: start/s ~ @@ -1252,10 +1261,10 @@ When omitted there is no minimal length. the compound flag from short words instead, this feature is present for compatibility with Myspell. - *spell-COMPOUNDMAX* + *spell-COMPOUNDWORDMAX* The maximum number of words that can be concatenated into a compound word is -specified with COMPOUNDMAX. Example: - COMPOUNDMAX 3 ~ +specified with COMPOUNDWORDMAX. Example: + COMPOUNDWORDMAX 3 ~ When omitted there is no maximum. It applies to all compound words. @@ -1270,14 +1279,13 @@ with COMPOUNDSYLMAX. Example: This has no effect if there is no SYLLABLE item. Without COMPOUNDSYLMAX there is no limit on the number of syllables. -If both COMPOUNDMAX and COMPOUNDSYLMAX are defined, a compound word is +If both COMPOUNDWORDMAX and COMPOUNDSYLMAX are defined, a compound word is accepted if it fits one of the criteria, thus is either made from up to -COMPOUNDMAX words or contains up to COMPOUNDSYLMAX syllables. +COMPOUNDWORDMAX words or contains up to COMPOUNDSYLMAX syllables. *spell-COMPOUNDFORBIDFLAG* The COMPOUNDFORBIDFLAG specifies a flag that can be used on an affix. It means that the word plus affix cannot be used in a compound word. -NOT IMPLEMENTED YET. *spell-COMPOUNDPERMITFLAG* The COMPOUNDPERMITFLAG specifies a flag that can be used on an affix. It @@ -1285,6 +1293,13 @@ means that the word plus affix can also where the affix ends up halfway the word. NOT IMPLEMENTED YET. + *spell-COMPOUNDROOT* +The COMPOUNDROOT flag is used for words in the dictionary that are already a +compound. This means it counts for two words when checking the compounding +rules. Can also be used for an affix to count the affix as a compounding +word. +NOT IMPLEMENTED YET. + *spell-SYLLABLE* The SYLLABLE item defines characters or character sequences that are used to count the number of syllables in a word. Example: @@ -1487,6 +1502,9 @@ COMPOUND (Hunspell) *spell-COMPOUND* Remove the first line with the count and rename the other items to COMPOUNDRULE |spell-COMPOUNDRULE| +COMPOUNDFIRST (Hunspell) *spell-COMPOUNDFIRST* + Use COMPOUNDRULE instead. |spell-COMPOUNDRULE| + COMPOUNDBEGIN (Hunspell) *spell-COMPOUNDBEGIN* Use COMPOUNDRULE instead. |spell-COMPOUNDRULE| @@ -1496,17 +1514,10 @@ COMPOUNDEND (Hunspell) *spell-COMPOUN COMPOUNDMIDDLE (Hunspell) *spell-COMPOUNDMIDDLE* Use COMPOUNDRULE instead. |spell-COMPOUNDRULE| -COMPOUNDROOT (Hunspell) *spell-COMPOUNDROOT* - Flag for words in the dictionary that are already a compound. - Vim doesn't use it. - COMPOUNDSYLLABLE (Hunspell) *spell-COMPOUNDSYLLABLE* Use SYLLABLE and COMPOUNDSYLMAX instead. |spell-SYLLABLE| |spell-COMPOUNDSYLMAX| -COMPOUNDWORDMAX (Hunspell) *spell-COMPOUNDWORDMAX* - Use COMPOUNDMAX instead. |spell-COMPOUNDMAX| - FORBIDDENWORD (Hunspell) *spell-FORBIDDENWORD* Use BAD instead. |spell-BAD| @@ -1517,7 +1528,7 @@ LANG (Hunspell) *spell-LANG* must be specified separately. LEMMA_PRESENT (Hunspell) *spell-LEMMA_PRESENT* - Only needed for mprphological analysis. + Only needed for morphological analysis. MAXNGRAMSUGS (Hunspell) *spell-MAXNGRAMSUGS* Not supported. diff --git a/runtime/doc/tags b/runtime/doc/tags --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -6813,9 +6813,9 @@ spell-COMPLEXPREFIXES spell.txt /*spell- spell-COMPOUND spell.txt /*spell-COMPOUND* spell-COMPOUNDBEGIN spell.txt /*spell-COMPOUNDBEGIN* spell-COMPOUNDEND spell.txt /*spell-COMPOUNDEND* +spell-COMPOUNDFIRST spell.txt /*spell-COMPOUNDFIRST* spell-COMPOUNDFLAG spell.txt /*spell-COMPOUNDFLAG* spell-COMPOUNDFORBIDFLAG spell.txt /*spell-COMPOUNDFORBIDFLAG* -spell-COMPOUNDMAX spell.txt /*spell-COMPOUNDMAX* spell-COMPOUNDMIDDLE spell.txt /*spell-COMPOUNDMIDDLE* spell-COMPOUNDMIN spell.txt /*spell-COMPOUNDMIN* spell-COMPOUNDPERMITFLAG spell.txt /*spell-COMPOUNDPERMITFLAG* diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt --- a/runtime/doc/todo.txt +++ b/runtime/doc/todo.txt @@ -1,4 +1,4 @@ -*todo.txt* For Vim version 7.0b. Last change: 2006 Mar 25 +*todo.txt* For Vim version 7.0b. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -30,6 +30,18 @@ be worked on, but only if you sponsor Vi *known-bugs* -------------------- Known bugs and current work ----------------------- +In completion using Enter to accept the current match causes trouble. +Leave it out? Typing a space already works + +New Hungarian dictionary. (Laci Nemeth) + test COMPOUNDFORBIDFLAG + implement use of COMPOUNDPERMITFLAG + implement use of CHECKCOMPOUND* flags, + implement using CHECKCOMPOUNDPATTERN: match words with sl_comppat[]. + +Mac: When started from finder path isn't set and curdir is /. +Benji Fisher suggests using system() (2006 Mar 26) + Add more tests for all new functionality in Vim 7. Especially new functions. Win32: Describe how to do debugging. (George Reilly) @@ -1121,9 +1133,8 @@ Spell checking: support both). - Support breakpoint character ? 0xb7 and ignore it? Makes it possible to use same wordlist for hyphenation. -- Compound word is accepted if nr of words is <= COMPOUNDMAX OR nr of +- Compound word is accepted if nr of words is <= COMPOUNDWORDMAX OR nr of syllables <= COMPOUNDSYLMAX. Specify using AND in the affix file? -- COMPOUNDMAX -> COMPOUNDWORDMAX? - NEEDCOMPOUND also used for affix? Or is this called ONLYINCOMPOUND now? Or is ONLYINCOMPOUND only for inside a compound, not at start or end? - Do we need a flag for the rule that when compounding is done the following @@ -1133,7 +1144,7 @@ Spell checking: - Lots of code depends on LANG, that isn't right. Enable each mechanism in the affix file separately. - Example with compounding dash is bad, gets in the way of setting - COMPOUNDMIN and COMPOUNDMAX to a reasonable value. + COMPOUNDMIN and COMPOUNDWORDMAX to a reasonable value. - PSEUDOROOT == NEEDAFFIX - COMPOUNDROOT -> COMPOUNDED? For a word that already is a compound word Or use COMPOUNDED2, COMPOUNDED3, etc. @@ -1148,7 +1159,7 @@ 8 Alternate Dutch word list at www.ned We might not need this at all, you can use the NEEDAFFIX flag and the affix which is required. - When a suffix has more than one syllable, it may count as a word for - COMPOUNDMAX. + COMPOUNDWORDMAX. - Add flags to count extra syllables in a word. SYLLABLEADD1 SYLLABLEADD2, etc.? Or make it possible to specify the syllable count of a word directly, e.g., after another slash: /abc/3 diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt --- a/runtime/doc/version7.txt +++ b/runtime/doc/version7.txt @@ -1,4 +1,4 @@ -*version7.txt* For Vim version 7.0b. Last change: 2006 Mar 25 +*version7.txt* For Vim version 7.0b. Last change: 2006 Mar 26 VIM REFERENCE MANUAL by Bram Moolenaar @@ -356,6 +356,7 @@ several other languages. French - translated by David Blanchet Italian - translated by Antonio Colombo Russian - translated by Vassily Ragosin +Polish - translated by Mikolaj Machowski The Unix Makefile installs the Italian manual pages in .../man/it/man1/, .../man/it.ISO8859-1/man1/ and .../man/it.UTF-8/man1/. There appears to be no @@ -899,6 +900,7 @@ limits syntax and ftplugin file. (Nikola Lisp indent file. (Sergey Khorev) loginaccess and logindefs syntax and ftplugin file. (Nikolai Weibull) m4 ftplugin file. (Nikolai Weibull) +mailaliases syntax file. (Nikolai Weibull) mailcap ftplugin file. (Nikolai Weibull) manconf syntax and ftplugin file. (Nikolai Weibull) matlab ftplugin file. (Jake Wasserman) @@ -2187,4 +2189,19 @@ install directory. To make the 16 bit DOS version compile exclude not used highlight initializations and build a tiny instead of small version. +finddir() and findfile() accept a negative cound and return a List then. + +The Python indent file contained a few debugging statements, removed. + +Expanding {} for a function name, resulting in a name starting with "s:" was +not handled correctly. + +Spelling: renamed COMPOUNDMAX to COMPOUNDWORDMAX. Added several items to be +able to handle the new Hungarian dictionary. + +Mac: Default to building for the current platform only, that is much faster +than building a universal binary. Also, using Perl/Python/etc. only works for +the current platform. + + vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/vim-pl.1 b/runtime/doc/vim-pl.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/vim-pl.1 @@ -0,0 +1,555 @@ +.TH VIM 1 "2002 Lut 22" +.SH NAME +vim \- Vi rozbudowany, edytor tekstu dla programisty +.SH SYNOPSIS +.br +.B vim +[opcje] [plik ..] +.br +.B vim +[opcje] \- +.br +.B vim +[opcje] \-t znacznik +.br +.B vim +[opcje] \-q [plik błędu] +.PP +.br +.B ex +.br +.B view +.br +.B gvim +.B gview +.B evim +.B eview +.br +.B rvim +.B rview +.B rgvim +.B rgview +.SH OPIS +.B Vim +jest edytorem tekstu kompatybilnym z Vi. Może być +używany do edycji wszelkiego rodzaju plików tekstowych. +Użyteczny zwłaszcza przy edycji programów. +.PP +Posiada wiele usprawnień w porównaniu z Vi: wielo poziomowe cofanie zmian, +wiele okien i buforów, podświetlanie składni, edycja linii poleceń, +uzupełnianie nazw plików, pomoc on-line, wizualna selekcja, itd. +Zobacz ":help vi_diff.txt" dla podsumowania różnić pomiędzy +.B Vimem +i Vi. +.PP +W czasie korzystania z +.B Vima +można uzyskać obszerną pomoc z systemu pomocy on-line dzięki poleceniu ":help". +Zobacz rozdział POMOC ON-LINE poniżej. +.PP +Najczęściej +.B Vim +jest uruchamiany do edycji pojedynczego pliku poleceniem +.PP + vim plik +.PP +Bardziej ogólnie +.B Vim +jest uruchamiany poprzez: +.PP + vim [opcje] [lista plików] +.PP +Jeśli brak listy plików edytor rozpocznie z pustym buforem. W innym +wypadku istnieje dokładnie jedna z czterech możliwości by wybrać jeden +lub więcej plików do edycji. +.TP 12 +plik .. +Lista nazw plików. +Pierwsza nazwa będzie nazwą bieżącego pliku, który zostanie wczytany +do bufora. Kursor zostanie umieszczony w pierwszym wierszu. Do +kolejnych plików można przejść dzięki poleceniu ":next". By otworzyć +plik, którego nazwa zaczyna się od myślnika należy listę plików +poprzedzić "\-\-". +.TP +\- +Plik do edycji jest wczytany ze standardowego wejścia. Polecenia są +odczytywane ze standardowego wyjścia błędów, którym powinien być +terminal (tty). +.TP +\-t {znacznik} +Plik do edycji i początkowa pozycja kursora zależy od "znacznika", +rodzaju etykiety goto. +{znacznika} szuka się w pliku tags, związany z nim plik staje się +plikiem bieżącym i wykonuje się powiązane polecenie. +Zazwyczaj używa się tego sposobu dla programów w C, w których wypadku +{znacznik} powinien być nazwą funkcji. +W efekcie plik zawierający określoną funkcję staje się plikiem +bieżącym a kursor jest umieszczony na początku funkcji. +Zobacz ":help tag-commands". +.TP +\-q [plik_błędów] +Zacznij w trybie quickFix. +Plik [plik_błędów] zostaje zinterpretowany i pokaże się pierwszy błąd. +Jeśli brak opcji [plik_błędów] nazwa pliku zostanie pobrana z opcji +'errorfile' (domyślnie "AztecC.Err" dla Amigi, "errros.err" dla innych +systemów. +Do kolejnych błędów można przeskoczyć dzięki poleceniu ":cn". +Zobacz ":help quickfix". +.PP +W zależności od wywołania +.B Vim +zachowuje się inaczej (program może być cały czas tym samym +plikiem). +.TP 10 +vim +"Normalny" sposób, wszystko jest domyślne. +.TP +ex +Zacznij w trybie Ex. +Przejdź do trybu Normalnego poleceniem ":vi". +Można także uruchomić poprzez argument "\-e". +.TP +view +Zacznij w trybie tylko do odczytu. W ten sposób będziesz chroniony +przed zapisywaniem pliku. Można także uruchomić poprzez argument +"\-R". +.TP +gvim gview +Wersja GUI. +Uruchamia nowe okno. +Można także uruchomić poprzez argument "\-g". +.TP +evim eview +Wersja GUI w łatwym trybie. +Uruchamia nowe okno. +Można także uruchomić poprzez argument "\-y". +.TP +rvim rview rgvim rgview +Podobnie jak powyżej, ale z ograniczeniami. Nie będzie można uruchomić +poleceń powłoki lub zawiesić +.B Vima. +Można także uruchomić poprzez argument "\-Z". +.SH OPCJE +Opcje można podać w dowolnej kolejności, przed lub po nazwach plików. +Opcje bez argumentów można łączyć po pojedynczym myślniku. +.TP 12 ++[num] +W pierwszym pliku kursor zostanie umieszczony w wierszu "num". +Jeśli brak "num" kursor zostanie umieszczony w ostatnim wierszu. +.TP ++/{wzór} +W pierwszym pliku kursor zostanie umieszczony na pierwszym wystąpieniu +{wzór}. +Zobacz ":help search-pattern" by dowiedzieć się jakie są możliwości +wzorów wyszukiwania. +.TP ++{polecenie} +.TP +\-c {polecenie} +{polecenie} zostanie wykonane po tym jak wczyta się pierwszy plik. +{polecenie} jest interpretowane jako polecenie Ex. +Jeśli {poleceni} zawiera białe znaki musi być umieszczone w podwójnych +cudzysłowach (zależy to od używanej powłoki). +Przykład: Vim "+set si" main.c +.br +Uwaga: Można użyć do 10 poleceń "+" lub "\-c". +.TP +\-S {plik} +{plik} zostanie zinterpretowany po wczytaniu pierwszego pliku. +Jest równoważne \-c "source {plik}". +{plik} nie może zaczynać się '\-'. +Jeśli nie podano {plik} zostanie użyty "Session.vim" (działa tylko +wtedy jeśli \-S jest ostatnim argumentem). +.TP +\-\-cmd {polecenie} +Podobne do "\-c", ale polecenie jest wykonywane tuż przed +interpretacją jakiegokolwiek pliku vimrc. +Można użyć do 10 takich poleceń, niezależni od poleceń od "\-c" +.TP +\-A +Jeśli +.B Vim +został skompilowany ze wsparciem dla języków arabskich (edycja od +prawej do lewej i arabska mapa klawiatury) ta opcja uruchamia +.B Vima +w trybie arabskim, np. ustawia się opcja 'arabic'. W innym wypadku +pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-b +Tryb binarny. +Ustawi się kilka opcji, które umożliwią edycję plików binarnych lub +wykonywalnych. +.TP +\-C +Kompatybilny. Ustawia opcję 'compatible'. +W ten sposób +.B Vim +będzie zachowywał się jak Vi, nawet jeśli istnieje plik .vimrc. +.TP +\-d +Uruchom w trybie diff. +Powinno być dwa lub trzy nazwy plików jako argumenty. +.B Vim +otworzy wszystkie te pliki i pokaże różnice między nimi. +Działa jak vimdiff(1). +.TP +\-d {urządzenie} +Otwórz {urządzenie} by używać jako terminal. +Tylko na Amidze. +Przykład: +"\-d con:20/30/600/150". +.TP +\-D +Debugowanie. Przejdź do trybu debugowanie wykonując pierwsze polecenie +ze skryptu. +.TP +\-e +Uruchom +.B Vima +w trybie Ex, działa tak samo jakby wywołano program jako "ex". +.TP +\-E +Uruchom +.B Vima +w ulepszonym trybie Ex, działa tak samo jakby wywołano program jako +"exim". +.TP +\-f +Pierszy plan. Dla wersji GUI. +.B Vim +nie nie oddzieli się od powłoki w jakiej został uruchomiony. Na Amidze +.B Vim +nie jest uruchomiony ponownie by otworzyć nowe okno. +Opcja powinna być użyta kiedy +.B Vim +jest wywoływany przez program, który ma zaczekać na koniec sesji (np. +mail). +Na Amidze polecenia ":sh" i ":!" nie będą działać. +.TP +\-\-nofork +Pierwszy plan. Dla wersji GUI. +.B Vim +nie oddzieli się od powłoki w jakiej został uruchomiony. +.TP +\-F +Jeśli Vim został skompilowany ze wsparciem FKMAP dla edycji tekstów od +prawej do lewej i mapowania klawiatury Farsi, ta opcja uruchomi +.B Vima +w trybie Farsi, np. zostawią ustawione opcje 'fkmap' i 'rightleft'. +W innym wypadku pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-g +Jeśli +.B Vim +został skompilowany ze wsparciem dla GUI ta opcja uruchomi GUI. +W innym wypadku pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-h +Wyświetli krótką pomoc o argumentach linii poleceń i opcjach. Potem +.B Vim +zakończy działanie. +.TP +\-H +Jeśli +.B Vim +został skompilowany ze wsparciem RIGHTLEFT dla edycji od prawej do +lewej oraz ma mapowanie klawiatury dla hebrajskiego, ta opcja uruchomi +.B Vima +w trybie hebrajskim, np. ustawi opcje 'hkmap' i 'rightleft'. +W innym wypadku pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-i {viminfo} +Kiedy +.B Vim +używa pliku viminfo ta opcja wskaże jakiego pliku użyć zamiast +domyślnego "~/.viminfo". +Można też ominąć użycie pliku .viminfo przez podanie nazwy "NONE". +.TP +\-L +To samo co \-r. +.TP +\-l +Tryb Lisp. +Ustawia opcje 'lisp' i 'showmatch'. +.TP +\-m +Zmiana pliku jest niemożliwa. +Przestawia opcję 'write'. +Można cały czas zmienić zawartość bufora, ale zapisanie pliku nie jest +możliwa. +.TP +\-M +Opcje 'modifiable' i 'write' zostaną wyłączone, tak więc zmiany +w pliku oraz ich zapisanie nie są możliwe. Można wartość tych opcji +zmienić. +.TP +\-N +Tryb niekompatibylny. Przestawia opcję 'compatible'. Dzięki temu +.B Vim +będzie zachowywał się odrobinę lepiej, ale mniej zgodznie z Vi nawet +jeśli nie istnieje plik .vimrc. +.TP +\-n +Nie powstanie plik wymiany. Odzyskanie pliku po wypadku nie będzie +możliwe. +Wygodne jeśli instnieje potrzeba edycji na bardzo wolnym medium (np. +dyskietce). Ten cel można osiągnąć także przez ":set uc=0". Można +odwrócić przez ":set uc=200". +.TP +\-nb +Uruchom jako serwer edytora dla NetBeans. Zobacz dokumentację by +dowiedzieć się więcej. +.TP +\-o[N] +Otwórz N okien w stosie. +Kiedy brak N, otwórz jedno okno dla każdego pliku. +.TP +\-O[N] +Otwórz N okien obok siebie. +Kiedy brak N, otwórz jedno okno dla każdego pliku. +.TP +\-p[N] +Otwórz N kart. +Kiedy brak N, otwórz jedną kartę dla każdego pliku. +.TP +\-R +Tryb tylko do odczytu. +Zostanie ustawiona opcja 'readonly'. +Cały czas można zmieniać bufor, ale będzie istniała blokada przed przypadkowym +zapisaniem pliku. +Jeśli chcesz zapisać plik dodaj wykrzyknik do polecenia Ex, np. ":w!". +Opcja \-R implikuje opcję \-n (zobacz poniżej). +Opcja 'readonly' może zostać przestawiona poprzez ":set noro". +Zobacz ":help 'readonly'". +.TP +\-r +Wypisz listę plików wymiany razem z informacjami o nich. +.TP +\-r {plik} +Tryb odzyskiwania danych. +Plik wymiany zostanie wykorzystany do odzyskania gwałtownie przerwanej sesji. +Plik wymiany to plik z taką samą nazwą co plik oryginalny z dodanym ".swp". +Zobacz ":help recovery". +.TP +\-s +Tryb cichy. Rozpoczęty tylko kiedy uruchomiony jako "Ex" lub opcja +"\-e" została podana przed opcją "\-s". +.TP +\-s {skrypt} +Zostanie wczytany plik {skrypt}. +Znaki w pliku zostaną zinterpretowane jakby były wpisywane. +To samo można osiągnąć poprzez polecenie ":source! {skrypt}". +Jeśli osiągnięto koniec pliku zanim edytor zakończył działanie, dalsze +znaki odczytywane są z klawiatury. +.TP +\-T {terminal} +Przekazuje +.B Vimowi +nazwę terminalu jakiego używasz. +Wymagane tylko wtedy jeśli nie działa automatycznie. +Powinien być to terminal znany +.B Vimowi +(builtin) lub zdefiniowany w plikach termcap lub terminfo. +.TP +\-u {vimrc} +Użyj poleceń z pliku {vimrc} w czasie uruchamiania. +Wszystkie inne możliwe pliki uruchamiania zostaną pominięte. +Używaj do edytowania plików specjalnych. +Można pominąć także wszystkie możliwe pliki uruchamiania poprzez +podanie nazwy "NONE". +Zobacz ":help initialization" by poznać więcej szczegółów. +.TP +\-U {gvimrc} +Użyj poleceń z pliku {gvimrc} w czasie uruchamiania GUI. +Wszystkie inne możliwe pliki uruchamiania GUI zostaną pominięte. +Można pominąć także wszystkie możliwe pliki uruchamiania GUI poprzez +podanie nazwy "NONE". +Zobacz ":help gui-init" by poznać więcej szczegółów. +.TP +\-V[N] +Tryb gadatliwy. Wypisz wiadomości o tym jaki pliki są wczytywane +i o informacjach pobieranych i dodawanych do pliku viminfo. Opcjonalny +argument N jest wartością 'verbose'. Domyślnie 10. +.TP +\-v +Uruchom +.B Vima +w trybie Vi, tak jakby program był nazwany "vi". Ma znaczenie +tylko wtedy jeśli program nazwany jest "ex". +.TP +\-w {plik} +Wszystkie wciśnięcia klawiszy, aż do zakończenia działania programu, +są zapisywane w {plik} . +Użyteczne jeśli chce się stworzyć skrypt do użycia z "vim \-s" lub +":source!". +Jeśli {plik} istnieje, znaki są dopisywane. +.TP +\-W {plik} +Podobnie do \-w, ale istniejący plik jest nadpisywany. +.TP +\-x +Użyj szyfrowania podczas zapisywania plików. Zostaniesz poproszony +o podanie klucza. +.TP +\-X +Nie łącz z serwerem X. Skraca czas uruchamiania w terminalu, ale tytuł +okna i schowek nie będą wykorzystywane. +.TP +\-y +Uruchom +.B Vima +w łatwym trybie, tak jakby program został wywołany "evim" lub "eview". +.B Vim +będzie zachowywał się bardziej jak edytor kliknij-i-wpisz. +.TP +\-Z +Tryb ograniczony. Zachowuje się jakby nazwa programu zaczynała się od +"r". +.TP +\-\- +Oznacza koniec opcji. +Argumenty po tej opcji będą traktowane jak nazwy plików. Używa się do +otwierania plików, których nazwy zaczynają się od '\-'. +.TP +\-\-echo\-wid +Wyłącznie GTK GUI: wypisz ID okna na standardowe wyjście. +.TP +\-\-help +Wyświetl informację o pomocy i zakończy, to samo co"\-h". +.TP +\-\-literal +Potraktuj nazwy plików dosłownie i nie rozwiązuj kwantyfikatorów. Nie +ma znaczenia na Uniksach gdzie powłoka rozwiązuje kwantyfikatorów +.TP +\-\-noplugin +Pomiń ładowanie wtyczek. Implikowane przy \-u NONE. +.TP +\-\-remote +Połącz się z serwerem Vima i edytuj w nim resztę argumentów. Jeśli nie +znaleziono serwera zostanie zgłoszony błąd a pliki będą otwarte +w bieżącym Vimie. +.TP +\-\-remote\-expr {wyrażenie} +Połącz z serwerem Vima, rozwiąż w nim {wyrażenie} i wypisz rozwiązanie +na standardowe wyjście. +.TP +\-\-remote\-send {klawisze} +Połącz z serwerem Vima i wyślij do niego {klawisze}. +.TP +\-\-remote\-silent +Tak samo jak \-remote, ale bez ostrzeżenia kiedy nie znaleziono +serwera. +.TP +\-\-remote\-wait +Tak samo jak \-remote, ale Vim nie zakończy dopóki pliki nie zostaną +otwarte. +.TP +\-\-remote\-wait\-silent +Tak samo jak \-\-remote\-wait, ale bez ostrzeżenie kiedy nie +znaleziono serwera. +.TP +\-\-serverlist +Wypisz nazwy wszystkich serwerów Vima jakie można znaleźć. +.TP +\-\-servername {nazwa} +Użyj {nazwa} jako nazwy serwera. Wykorzystane dla bieżącego Vima o ile +nie połączone z argumentem \-\-remote, wtedy jest to nazwa serwera do +połączenia. +.TP +\-\-socketid {id} +Wyłącznie GTK GUI: Użyj mechanizmu GtkPlug by uruchomić gvima w innym +oknie. +.TP +\-\-version +Wypisz informację o wersji i zakończ. +.SH POMOC ON-LINE +By rozpocząć wpisz ":help" w +.B Vimie +Wpisz ":help temat" by uzyskać pomoc na określony temat. +Przykład: ":help ZZ" by uzyskać pomoc na temat polecenia "ZZ". +Użyj i CTRL\-D aby uzupełnić tematy (":help +cmdline\-completion"). W plikach pomocy istnieją znaczniki by ułatwić +skakanie z jednego miejsca do innego (rodzaj linków hipertekstowych, +zobacz ":help"). +Można w ten sposób zobaczyć całą dokumentację, np. ":help syntax.txt". +.SH PLIKI +.TP 15 +/usr/local/lib/vim/doc/*.txt +Dokumentacja +.B Vima +Użyj ":help doc\-file\-list" aby uzyskać pełną listę. +.TP +/usr/local/lib/vim/syntax/syntax.vim +Globalne uruchamianie podświetlania składni. +.TP +/usr/local/lib/vim/syntax/*.vim +Pliki składni dla różnych języków. +.TP +/usr/local/lib/vim/vimrc +Globalny plik uruchamiania +.B Vima +.TP +~/.vimrc +Osobiste parametry uruchamiania +.B Vima +.TP +/usr/local/lib/vim/gvimrc +Globalne uruchamianie gvima. +.TP +~/.gvimrc +Osobiste parametry uruchamiania gvima. +.TP +/usr/local/lib/vim/optwin.vim +Skrypt używany w poleceniu ":options", dobry sposób do przeglądania +i ustawiania opcji. +.TP +/usr/local/lib/vim/menu.vim +Globalne uruchamianie menu gvima. +.TP +/usr/local/lib/vim/bugreport.vim +Skrypt służący do tworzenia raportów o błędach. Zobacz ":help bugs". +.TP +/usr/local/lib/vim/filetype.vim +Skrypt do wykrywania typu pliku według jego nazwy. Zobacz ":help 'filetype'". +.TP +/usr/local/lib/vim/scripts.vim +Skrypt do wykrywania typu pliku według jego zawartości. Zobacz ":help 'filetype'". +.TP +/usr/local/lib/vim/*.ps +Pliku używane do drukowania PostScriptu. +.PP +Najświeższe wiadomości na stronie +.B Vima: +.br + +.SH ZOBACZ TAKŻE +vimtutor(1) +.SH AUTOR +.B Vim +został napisany przez Brama Moolenaara z dużą pomocą innych osób. +Zobacz ":help credits" w +.B Vimie. +.br +.B Vim +bazuje na Steviem, nad którym pracowali: Tim Thompson, Tony Andrews +i G.R. (Fred) Walter. +Mało już zostało z oryginalnego kodu. +.SH BŁĘDY +Prawdopodobne. +Zobacz ":help todo" by poznać listę znanych problemów. +.PP +Pamiętaj że pewna ilość problemów, które mogą być uznawane przez +niektórych ludzi za błędy są w rzeczywistości spowodowane wiernością +w odtwarzaniu zachowania Vi. +Jeśli sądzisz, że inne rzeczy są błędami "ponieważ Vi robi to +inaczej", powinieneś przyjrzeć się bliżej plikowi vi_diff.txt (lub +wpisać ":help vi_diff.txt" w Vimie). +Sprawdź także opis opcji 'compatible' i 'cpoptions'. diff --git a/runtime/doc/vim-pl.UTF-8.1 b/runtime/doc/vim-pl.UTF-8.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/vim-pl.UTF-8.1 @@ -0,0 +1,555 @@ +.TH VIM 1 "2002 Lut 22" +.SH NAME +vim \- Vi rozbudowany, edytor tekstu dla programisty +.SH SYNOPSIS +.br +.B vim +[opcje] [plik ..] +.br +.B vim +[opcje] \- +.br +.B vim +[opcje] \-t znacznik +.br +.B vim +[opcje] \-q [plik błędu] +.PP +.br +.B ex +.br +.B view +.br +.B gvim +.B gview +.B evim +.B eview +.br +.B rvim +.B rview +.B rgvim +.B rgview +.SH OPIS +.B Vim +jest edytorem tekstu kompatybilnym z Vi. MoĹźe być +uĹźywany do edycji wszelkiego rodzaju plikĂłw tekstowych. +UĹźyteczny zwłaszcza przy edycji programĂłw. +.PP +Posiada wiele usprawnień w porĂłwnaniu z Vi: wielo poziomowe cofanie zmian, +wiele okien i buforĂłw, podświetlanie składni, edycja linii poleceń, +uzupełnianie nazw plikĂłw, pomoc on-line, wizualna selekcja, itd. +Zobacz ":help vi_diff.txt" dla podsumowania róşnić pomiędzy +.B Vimem +i Vi. +.PP +W czasie korzystania z +.B Vima +moĹźna uzyskać obszerną pomoc z systemu pomocy on-line dzięki poleceniu ":help". +Zobacz rozdział POMOC ON-LINE poniĹźej. +.PP +Najczęściej +.B Vim +jest uruchamiany do edycji pojedynczego pliku poleceniem +.PP + vim plik +.PP +Bardziej ogĂłlnie +.B Vim +jest uruchamiany poprzez: +.PP + vim [opcje] [lista plikĂłw] +.PP +Jeśli brak listy plikĂłw edytor rozpocznie z pustym buforem. W innym +wypadku istnieje dokładnie jedna z czterech moĹźliwości by wybrać jeden +lub więcej plikĂłw do edycji. +.TP 12 +plik .. +Lista nazw plikĂłw. +Pierwsza nazwa będzie nazwą bieżącego pliku, ktĂłry zostanie wczytany +do bufora. Kursor zostanie umieszczony w pierwszym wierszu. Do +kolejnych plikĂłw moĹźna przejść dzięki poleceniu ":next". By otworzyć +plik, ktĂłrego nazwa zaczyna się od myślnika naleĹźy listę plikĂłw +poprzedzić "\-\-". +.TP +\- +Plik do edycji jest wczytany ze standardowego wejścia. Polecenia są +odczytywane ze standardowego wyjścia błędĂłw, ktĂłrym powinien być +terminal (tty). +.TP +\-t {znacznik} +Plik do edycji i początkowa pozycja kursora zaleĹźy od "znacznika", +rodzaju etykiety goto. +{znacznika} szuka się w pliku tags, związany z nim plik staje się +plikiem bieżącym i wykonuje się powiązane polecenie. +Zazwyczaj uĹźywa się tego sposobu dla programĂłw w C, w ktĂłrych wypadku +{znacznik} powinien być nazwą funkcji. +W efekcie plik zawierający określoną funkcję staje się plikiem +bieżącym a kursor jest umieszczony na początku funkcji. +Zobacz ":help tag-commands". +.TP +\-q [plik_błędĂłw] +Zacznij w trybie quickFix. +Plik [plik_błędĂłw] zostaje zinterpretowany i pokaĹźe się pierwszy błąd. +Jeśli brak opcji [plik_błędĂłw] nazwa pliku zostanie pobrana z opcji +'errorfile' (domyślnie "AztecC.Err" dla Amigi, "errros.err" dla innych +systemĂłw. +Do kolejnych błędĂłw moĹźna przeskoczyć dzięki poleceniu ":cn". +Zobacz ":help quickfix". +.PP +W zaleĹźności od wywołania +.B Vim +zachowuje się inaczej (program moĹźe być cały czas tym samym +plikiem). +.TP 10 +vim +"Normalny" sposĂłb, wszystko jest domyślne. +.TP +ex +Zacznij w trybie Ex. +PrzejdĹş do trybu Normalnego poleceniem ":vi". +MoĹźna takĹźe uruchomić poprzez argument "\-e". +.TP +view +Zacznij w trybie tylko do odczytu. W ten sposĂłb będziesz chroniony +przed zapisywaniem pliku. MoĹźna takĹźe uruchomić poprzez argument +"\-R". +.TP +gvim gview +Wersja GUI. +Uruchamia nowe okno. +MoĹźna takĹźe uruchomić poprzez argument "\-g". +.TP +evim eview +Wersja GUI w łatwym trybie. +Uruchamia nowe okno. +MoĹźna takĹźe uruchomić poprzez argument "\-y". +.TP +rvim rview rgvim rgview +Podobnie jak powyĹźej, ale z ograniczeniami. Nie będzie moĹźna uruchomić +poleceń powłoki lub zawiesić +.B Vima. +MoĹźna takĹźe uruchomić poprzez argument "\-Z". +.SH OPCJE +Opcje moĹźna podać w dowolnej kolejności, przed lub po nazwach plikĂłw. +Opcje bez argumentĂłw moĹźna łączyć po pojedynczym myślniku. +.TP 12 ++[num] +W pierwszym pliku kursor zostanie umieszczony w wierszu "num". +Jeśli brak "num" kursor zostanie umieszczony w ostatnim wierszu. +.TP ++/{wzĂłr} +W pierwszym pliku kursor zostanie umieszczony na pierwszym wystąpieniu +{wzĂłr}. +Zobacz ":help search-pattern" by dowiedzieć się jakie są moĹźliwości +wzorĂłw wyszukiwania. +.TP ++{polecenie} +.TP +\-c {polecenie} +{polecenie} zostanie wykonane po tym jak wczyta się pierwszy plik. +{polecenie} jest interpretowane jako polecenie Ex. +Jeśli {poleceni} zawiera białe znaki musi być umieszczone w podwĂłjnych +cudzysłowach (zaleĹźy to od uĹźywanej powłoki). +Przykład: Vim "+set si" main.c +.br +Uwaga: MoĹźna uĹźyć do 10 poleceń "+" lub "\-c". +.TP +\-S {plik} +{plik} zostanie zinterpretowany po wczytaniu pierwszego pliku. +Jest rĂłwnowaĹźne \-c "source {plik}". +{plik} nie moĹźe zaczynać się '\-'. +Jeśli nie podano {plik} zostanie uĹźyty "Session.vim" (działa tylko +wtedy jeśli \-S jest ostatnim argumentem). +.TP +\-\-cmd {polecenie} +Podobne do "\-c", ale polecenie jest wykonywane tuĹź przed +interpretacją jakiegokolwiek pliku vimrc. +MoĹźna uĹźyć do 10 takich poleceń, niezaleĹźni od poleceń od "\-c" +.TP +\-A +Jeśli +.B Vim +został skompilowany ze wsparciem dla językĂłw arabskich (edycja od +prawej do lewej i arabska mapa klawiatury) ta opcja uruchamia +.B Vima +w trybie arabskim, np. ustawia się opcja 'arabic'. W innym wypadku +pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-b +Tryb binarny. +Ustawi się kilka opcji, ktĂłre umoĹźliwią edycję plikĂłw binarnych lub +wykonywalnych. +.TP +\-C +Kompatybilny. Ustawia opcję 'compatible'. +W ten sposĂłb +.B Vim +będzie zachowywał się jak Vi, nawet jeśli istnieje plik .vimrc. +.TP +\-d +Uruchom w trybie diff. +Powinno być dwa lub trzy nazwy plikĂłw jako argumenty. +.B Vim +otworzy wszystkie te pliki i pokaĹźe róşnice między nimi. +Działa jak vimdiff(1). +.TP +\-d {urządzenie} +OtwĂłrz {urządzenie} by uĹźywać jako terminal. +Tylko na Amidze. +Przykład: +"\-d con:20/30/600/150". +.TP +\-D +Debugowanie. PrzejdĹş do trybu debugowanie wykonując pierwsze polecenie +ze skryptu. +.TP +\-e +Uruchom +.B Vima +w trybie Ex, działa tak samo jakby wywołano program jako "ex". +.TP +\-E +Uruchom +.B Vima +w ulepszonym trybie Ex, działa tak samo jakby wywołano program jako +"exim". +.TP +\-f +Pierszy plan. Dla wersji GUI. +.B Vim +nie nie oddzieli się od powłoki w jakiej został uruchomiony. Na Amidze +.B Vim +nie jest uruchomiony ponownie by otworzyć nowe okno. +Opcja powinna być uĹźyta kiedy +.B Vim +jest wywoływany przez program, ktĂłry ma zaczekać na koniec sesji (np. +mail). +Na Amidze polecenia ":sh" i ":!" nie będą działać. +.TP +\-\-nofork +Pierwszy plan. Dla wersji GUI. +.B Vim +nie oddzieli się od powłoki w jakiej został uruchomiony. +.TP +\-F +Jeśli Vim został skompilowany ze wsparciem FKMAP dla edycji tekstĂłw od +prawej do lewej i mapowania klawiatury Farsi, ta opcja uruchomi +.B Vima +w trybie Farsi, np. zostawią ustawione opcje 'fkmap' i 'rightleft'. +W innym wypadku pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-g +Jeśli +.B Vim +został skompilowany ze wsparciem dla GUI ta opcja uruchomi GUI. +W innym wypadku pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-h +Wyświetli krĂłtką pomoc o argumentach linii poleceń i opcjach. Potem +.B Vim +zakończy działanie. +.TP +\-H +Jeśli +.B Vim +został skompilowany ze wsparciem RIGHTLEFT dla edycji od prawej do +lewej oraz ma mapowanie klawiatury dla hebrajskiego, ta opcja uruchomi +.B Vima +w trybie hebrajskim, np. ustawi opcje 'hkmap' i 'rightleft'. +W innym wypadku pojawi się komunikat błędu i +.B Vim +zakończy działanie. +.TP +\-i {viminfo} +Kiedy +.B Vim +uĹźywa pliku viminfo ta opcja wskaĹźe jakiego pliku uĹźyć zamiast +domyślnego "~/.viminfo". +MoĹźna teĹź ominąć uĹźycie pliku .viminfo przez podanie nazwy "NONE". +.TP +\-L +To samo co \-r. +.TP +\-l +Tryb Lisp. +Ustawia opcje 'lisp' i 'showmatch'. +.TP +\-m +Zmiana pliku jest niemoĹźliwa. +Przestawia opcję 'write'. +MoĹźna cały czas zmienić zawartość bufora, ale zapisanie pliku nie jest +moĹźliwa. +.TP +\-M +Opcje 'modifiable' i 'write' zostaną wyłączone, tak więc zmiany +w pliku oraz ich zapisanie nie są moĹźliwe. MoĹźna wartość tych opcji +zmienić. +.TP +\-N +Tryb niekompatibylny. Przestawia opcję 'compatible'. Dzięki temu +.B Vim +będzie zachowywał się odrobinę lepiej, ale mniej zgodznie z Vi nawet +jeśli nie istnieje plik .vimrc. +.TP +\-n +Nie powstanie plik wymiany. Odzyskanie pliku po wypadku nie będzie +moĹźliwe. +Wygodne jeśli instnieje potrzeba edycji na bardzo wolnym medium (np. +dyskietce). Ten cel moĹźna osiągnąć takĹźe przez ":set uc=0". MoĹźna +odwrĂłcić przez ":set uc=200". +.TP +\-nb +Uruchom jako serwer edytora dla NetBeans. Zobacz dokumentację by +dowiedzieć się więcej. +.TP +\-o[N] +OtwĂłrz N okien w stosie. +Kiedy brak N, otwĂłrz jedno okno dla kaĹźdego pliku. +.TP +\-O[N] +OtwĂłrz N okien obok siebie. +Kiedy brak N, otwĂłrz jedno okno dla kaĹźdego pliku. +.TP +\-p[N] +OtwĂłrz N kart. +Kiedy brak N, otwĂłrz jedną kartę dla kaĹźdego pliku. +.TP +\-R +Tryb tylko do odczytu. +Zostanie ustawiona opcja 'readonly'. +Cały czas moĹźna zmieniać bufor, ale będzie istniała blokada przed przypadkowym +zapisaniem pliku. +Jeśli chcesz zapisać plik dodaj wykrzyknik do polecenia Ex, np. ":w!". +Opcja \-R implikuje opcję \-n (zobacz poniĹźej). +Opcja 'readonly' moĹźe zostać przestawiona poprzez ":set noro". +Zobacz ":help 'readonly'". +.TP +\-r +Wypisz listę plikĂłw wymiany razem z informacjami o nich. +.TP +\-r {plik} +Tryb odzyskiwania danych. +Plik wymiany zostanie wykorzystany do odzyskania gwałtownie przerwanej sesji. +Plik wymiany to plik z taką samą nazwą co plik oryginalny z dodanym ".swp". +Zobacz ":help recovery". +.TP +\-s +Tryb cichy. Rozpoczęty tylko kiedy uruchomiony jako "Ex" lub opcja +"\-e" została podana przed opcją "\-s". +.TP +\-s {skrypt} +Zostanie wczytany plik {skrypt}. +Znaki w pliku zostaną zinterpretowane jakby były wpisywane. +To samo moĹźna osiągnąć poprzez polecenie ":source! {skrypt}". +Jeśli osiągnięto koniec pliku zanim edytor zakończył działanie, dalsze +znaki odczytywane są z klawiatury. +.TP +\-T {terminal} +Przekazuje +.B Vimowi +nazwę terminalu jakiego uĹźywasz. +Wymagane tylko wtedy jeśli nie działa automatycznie. +Powinien być to terminal znany +.B Vimowi +(builtin) lub zdefiniowany w plikach termcap lub terminfo. +.TP +\-u {vimrc} +UĹźyj poleceń z pliku {vimrc} w czasie uruchamiania. +Wszystkie inne moĹźliwe pliki uruchamiania zostaną pominięte. +UĹźywaj do edytowania plikĂłw specjalnych. +MoĹźna pominąć takĹźe wszystkie moĹźliwe pliki uruchamiania poprzez +podanie nazwy "NONE". +Zobacz ":help initialization" by poznać więcej szczegółów. +.TP +\-U {gvimrc} +UĹźyj poleceń z pliku {gvimrc} w czasie uruchamiania GUI. +Wszystkie inne moĹźliwe pliki uruchamiania GUI zostaną pominięte. +MoĹźna pominąć takĹźe wszystkie moĹźliwe pliki uruchamiania GUI poprzez +podanie nazwy "NONE". +Zobacz ":help gui-init" by poznać więcej szczegółów. +.TP +\-V[N] +Tryb gadatliwy. Wypisz wiadomości o tym jaki pliki są wczytywane +i o informacjach pobieranych i dodawanych do pliku viminfo. Opcjonalny +argument N jest wartością 'verbose'. Domyślnie 10. +.TP +\-v +Uruchom +.B Vima +w trybie Vi, tak jakby program był nazwany "vi". Ma znaczenie +tylko wtedy jeśli program nazwany jest "ex". +.TP +\-w {plik} +Wszystkie wciśnięcia klawiszy, aĹź do zakończenia działania programu, +są zapisywane w {plik} . +UĹźyteczne jeśli chce się stworzyć skrypt do uĹźycia z "vim \-s" lub +":source!". +Jeśli {plik} istnieje, znaki są dopisywane. +.TP +\-W {plik} +Podobnie do \-w, ale istniejący plik jest nadpisywany. +.TP +\-x +UĹźyj szyfrowania podczas zapisywania plikĂłw. Zostaniesz poproszony +o podanie klucza. +.TP +\-X +Nie łącz z serwerem X. Skraca czas uruchamiania w terminalu, ale tytuł +okna i schowek nie będą wykorzystywane. +.TP +\-y +Uruchom +.B Vima +w łatwym trybie, tak jakby program został wywołany "evim" lub "eview". +.B Vim +będzie zachowywał się bardziej jak edytor kliknij-i-wpisz. +.TP +\-Z +Tryb ograniczony. Zachowuje się jakby nazwa programu zaczynała się od +"r". +.TP +\-\- +Oznacza koniec opcji. +Argumenty po tej opcji będą traktowane jak nazwy plikĂłw. UĹźywa się do +otwierania plikĂłw, ktĂłrych nazwy zaczynają się od '\-'. +.TP +\-\-echo\-wid +Wyłącznie GTK GUI: wypisz ID okna na standardowe wyjście. +.TP +\-\-help +Wyświetl informację o pomocy i zakończy, to samo co"\-h". +.TP +\-\-literal +Potraktuj nazwy plikĂłw dosłownie i nie rozwiązuj kwantyfikatorĂłw. Nie +ma znaczenia na Uniksach gdzie powłoka rozwiązuje kwantyfikatorĂłw +.TP +\-\-noplugin +Pomiń ładowanie wtyczek. Implikowane przy \-u NONE. +.TP +\-\-remote +Połącz się z serwerem Vima i edytuj w nim resztę argumentĂłw. Jeśli nie +znaleziono serwera zostanie zgłoszony błąd a pliki będą otwarte +w bieżącym Vimie. +.TP +\-\-remote\-expr {wyraĹźenie} +Połącz z serwerem Vima, rozwiąż w nim {wyraĹźenie} i wypisz rozwiązanie +na standardowe wyjście. +.TP +\-\-remote\-send {klawisze} +Połącz z serwerem Vima i wyślij do niego {klawisze}. +.TP +\-\-remote\-silent +Tak samo jak \-remote, ale bez ostrzeĹźenia kiedy nie znaleziono +serwera. +.TP +\-\-remote\-wait +Tak samo jak \-remote, ale Vim nie zakończy dopĂłki pliki nie zostaną +otwarte. +.TP +\-\-remote\-wait\-silent +Tak samo jak \-\-remote\-wait, ale bez ostrzeĹźenie kiedy nie +znaleziono serwera. +.TP +\-\-serverlist +Wypisz nazwy wszystkich serwerĂłw Vima jakie moĹźna znaleźć. +.TP +\-\-servername {nazwa} +UĹźyj {nazwa} jako nazwy serwera. Wykorzystane dla bieżącego Vima o ile +nie połączone z argumentem \-\-remote, wtedy jest to nazwa serwera do +połączenia. +.TP +\-\-socketid {id} +Wyłącznie GTK GUI: UĹźyj mechanizmu GtkPlug by uruchomić gvima w innym +oknie. +.TP +\-\-version +Wypisz informację o wersji i zakończ. +.SH POMOC ON-LINE +By rozpocząć wpisz ":help" w +.B Vimie +Wpisz ":help temat" by uzyskać pomoc na określony temat. +Przykład: ":help ZZ" by uzyskać pomoc na temat polecenia "ZZ". +UĹźyj i CTRL\-D aby uzupełnić tematy (":help +cmdline\-completion"). W plikach pomocy istnieją znaczniki by ułatwić +skakanie z jednego miejsca do innego (rodzaj linkĂłw hipertekstowych, +zobacz ":help"). +MoĹźna w ten sposĂłb zobaczyć całą dokumentację, np. ":help syntax.txt". +.SH PLIKI +.TP 15 +/usr/local/lib/vim/doc/*.txt +Dokumentacja +.B Vima +UĹźyj ":help doc\-file\-list" aby uzyskać pełną listę. +.TP +/usr/local/lib/vim/syntax/syntax.vim +Globalne uruchamianie podświetlania składni. +.TP +/usr/local/lib/vim/syntax/*.vim +Pliki składni dla róşnych językĂłw. +.TP +/usr/local/lib/vim/vimrc +Globalny plik uruchamiania +.B Vima +.TP +~/.vimrc +Osobiste parametry uruchamiania +.B Vima +.TP +/usr/local/lib/vim/gvimrc +Globalne uruchamianie gvima. +.TP +~/.gvimrc +Osobiste parametry uruchamiania gvima. +.TP +/usr/local/lib/vim/optwin.vim +Skrypt uĹźywany w poleceniu ":options", dobry sposĂłb do przeglądania +i ustawiania opcji. +.TP +/usr/local/lib/vim/menu.vim +Globalne uruchamianie menu gvima. +.TP +/usr/local/lib/vim/bugreport.vim +Skrypt służący do tworzenia raportĂłw o błędach. Zobacz ":help bugs". +.TP +/usr/local/lib/vim/filetype.vim +Skrypt do wykrywania typu pliku według jego nazwy. Zobacz ":help 'filetype'". +.TP +/usr/local/lib/vim/scripts.vim +Skrypt do wykrywania typu pliku według jego zawartości. Zobacz ":help 'filetype'". +.TP +/usr/local/lib/vim/*.ps +Pliku uĹźywane do drukowania PostScriptu. +.PP +NajświeĹźsze wiadomości na stronie +.B Vima: +.br + +.SH ZOBACZ TAKĹťE +vimtutor(1) +.SH AUTOR +.B Vim +został napisany przez Brama Moolenaara z dużą pomocą innych osĂłb. +Zobacz ":help credits" w +.B Vimie. +.br +.B Vim +bazuje na Steviem, nad ktĂłrym pracowali: Tim Thompson, Tony Andrews +i G.R. (Fred) Walter. +Mało juĹź zostało z oryginalnego kodu. +.SH BŁĘDY +Prawdopodobne. +Zobacz ":help todo" by poznać listę znanych problemĂłw. +.PP +Pamiętaj Ĺźe pewna ilość problemĂłw, ktĂłre mogą być uznawane przez +niektĂłrych ludzi za błędy są w rzeczywistości spowodowane wiernością +w odtwarzaniu zachowania Vi. +Jeśli sądzisz, Ĺźe inne rzeczy są błędami "poniewaĹź Vi robi to +inaczej", powinieneś przyjrzeć się bliĹźej plikowi vi_diff.txt (lub +wpisać ":help vi_diff.txt" w Vimie). +SprawdĹş takĹźe opis opcji 'compatible' i 'cpoptions'. diff --git a/runtime/doc/vimdiff-pl.1 b/runtime/doc/vimdiff-pl.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/vimdiff-pl.1 @@ -0,0 +1,46 @@ +.TH VIMDIFF 1 "2001 Mar 30" +.SH NAZWA +vimdiff \- edytuj dwie lub trzy wersje pliku w Vimie i zobacz różnice +.SH SYNOPSIS +.br +.B vimdiff +[opcje] plik1 plik2 [plik3] +.PP +.B gvimdiff +.SH OPIS +.B Vimdiff +uruchomi +.B Vima +z dwoma (lub trzema plikami), każdy z nich we własnym oknie. +Różnice między plikami zostaną podświetlone. +Jest to dobry sposób by przeanalizować różnice i przenieść zmiany z jednej +wersji pliku do innej. +.PP +Zobacz vim(1) by poznać więcej szczegółów o samym Vimie. +.PP +Kiedy uruchomiony jako +.B gvimdiff +zostanie uruchomione GUI (jeśli dostępne). +.PP +W każdym oknie zostanie ustawiona opcja 'diff', która spowoduje +podświetlenie różnic. +.br +Opcje 'wrap' i 'scrollbind' zostaną ustawione by tekst dobrze się +przeglądało. +.br +Opcja 'foldmethod' zostanie ustawiona na "diff", dzięki temu +niezmienione linie zostaną zwinięte. 'foldcolumn' będzie równe 2 aby +łatwo wyszukiwać, otwierać i zamykać zwinięcia. +.SH OPCJE +Pionowy podział jest użyty do wyrównania linii, tak jakby użyto +opcji "\-O". Aby uzyskać poziomy podział użyj opcji "\-o". +.PP +Aby poznać inne opcje zobacz vim(1). +.SH ZOBACZ TAKŻE +vim(1) +.SH AUTOR +Większość +.B Vima +została napisana przez Brama Moolenaara przy pomocy wielu innych osób. +Zobacz ":help credits w +.B Vimie. diff --git a/runtime/doc/vimdiff-pl.UTF-8.1 b/runtime/doc/vimdiff-pl.UTF-8.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/vimdiff-pl.UTF-8.1 @@ -0,0 +1,46 @@ +.TH VIMDIFF 1 "2001 Mar 30" +.SH NAZWA +vimdiff \- edytuj dwie lub trzy wersje pliku w Vimie i zobacz róşnice +.SH SYNOPSIS +.br +.B vimdiff +[opcje] plik1 plik2 [plik3] +.PP +.B gvimdiff +.SH OPIS +.B Vimdiff +uruchomi +.B Vima +z dwoma (lub trzema plikami), kaĹźdy z nich we własnym oknie. +Róşnice między plikami zostaną podświetlone. +Jest to dobry sposĂłb by przeanalizować róşnice i przenieść zmiany z jednej +wersji pliku do innej. +.PP +Zobacz vim(1) by poznać więcej szczegółów o samym Vimie. +.PP +Kiedy uruchomiony jako +.B gvimdiff +zostanie uruchomione GUI (jeśli dostępne). +.PP +W kaĹźdym oknie zostanie ustawiona opcja 'diff', ktĂłra spowoduje +podświetlenie róşnic. +.br +Opcje 'wrap' i 'scrollbind' zostaną ustawione by tekst dobrze się +przeglądało. +.br +Opcja 'foldmethod' zostanie ustawiona na "diff", dzięki temu +niezmienione linie zostaną zwinięte. 'foldcolumn' będzie rĂłwne 2 aby +łatwo wyszukiwać, otwierać i zamykać zwinięcia. +.SH OPCJE +Pionowy podział jest uĹźyty do wyrĂłwnania linii, tak jakby uĹźyto +opcji "\-O". Aby uzyskać poziomy podział uĹźyj opcji "\-o". +.PP +Aby poznać inne opcje zobacz vim(1). +.SH ZOBACZ TAKĹťE +vim(1) +.SH AUTOR +Większość +.B Vima +została napisana przez Brama Moolenaara przy pomocy wielu innych osĂłb. +Zobacz ":help credits w +.B Vimie. diff --git a/runtime/doc/vimtutor-pl.1 b/runtime/doc/vimtutor-pl.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/vimtutor-pl.1 @@ -0,0 +1,48 @@ +.TH VIMTUTOR 1 "2001 Kwi 2" +.SH NAZWA +vimtutor \- nauczyciel Vima +.SH SYNOPSIS +.br +.B vimtutor [język] +.SH OPIS +.B Vimtutor +uruchamia nauczycie +.B Vima. +Najpierw kopiuje właściwy plik, dzięki temu można go zmieniać bez obaw +utraty treści. +.PP +.B Vimtutor +przyda się ludziom, którzy chcą się nauczyć pierwszych poleceń +.B Vima +.PP +Opcjonalny argument [język] jest dwu literowym kodem języka, tak jak +"it" lub "es". +Jeśli brak argumentu [język] zostanie użyty język bieżącej +lokalizacji. +Jeśli nauczyciel w tym języku jest dostępny, zostanie użyty \- w innym +wypadku zostanie wykorzystana wersja angielska. +.PP +.B Vim +jest uruchamiany zawsze w trybie kompatybilności z Vi +.SH PLIKI +.TP 15 +/usr/local/lib/vim/tutor/tutor[.languague] +Tekstowe pliki +.B Vimtutora. +.TP 15 +/usr/local/lib/vim/tutor/tutor.vim +Skrypt Vima używany do kopiowania pliku +.B Vimtutora. +.SH AUTOR +.B Vimtutor +został początkowo napisany dla Vim przez Michaela C. Pierce'a +i Roberta K. Ware'a z Colorado School of Mines zainspirowani przez +Charlesa Smitha z Colorado State University. +E-mail: bware@mines.colorado.edu +.br +Zmodyfikowany na potrzeby +.B Vima +przez Brama Moolenaara. +Nazwiska tłumaczy w plikach. +.SH ZOBACZ TAKŻE +vim(1) diff --git a/runtime/doc/vimtutor-pl.UTF-8.1 b/runtime/doc/vimtutor-pl.UTF-8.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/vimtutor-pl.UTF-8.1 @@ -0,0 +1,48 @@ +.TH VIMTUTOR 1 "2001 Kwi 2" +.SH NAZWA +vimtutor \- nauczyciel Vima +.SH SYNOPSIS +.br +.B vimtutor [język] +.SH OPIS +.B Vimtutor +uruchamia nauczycie +.B Vima. +Najpierw kopiuje właściwy plik, dzięki temu moĹźna go zmieniać bez obaw +utraty treści. +.PP +.B Vimtutor +przyda się ludziom, ktĂłrzy chcą się nauczyć pierwszych poleceń +.B Vima +.PP +Opcjonalny argument [język] jest dwu literowym kodem języka, tak jak +"it" lub "es". +Jeśli brak argumentu [język] zostanie uĹźyty język bieżącej +lokalizacji. +Jeśli nauczyciel w tym języku jest dostępny, zostanie uĹźyty \- w innym +wypadku zostanie wykorzystana wersja angielska. +.PP +.B Vim +jest uruchamiany zawsze w trybie kompatybilności z Vi +.SH PLIKI +.TP 15 +/usr/local/lib/vim/tutor/tutor[.languague] +Tekstowe pliki +.B Vimtutora. +.TP 15 +/usr/local/lib/vim/tutor/tutor.vim +Skrypt Vima uĹźywany do kopiowania pliku +.B Vimtutora. +.SH AUTOR +.B Vimtutor +został początkowo napisany dla Vim przez Michaela C. Pierce'a +i Roberta K. Ware'a z Colorado School of Mines zainspirowani przez +Charlesa Smitha z Colorado State University. +E-mail: bware@mines.colorado.edu +.br +Zmodyfikowany na potrzeby +.B Vima +przez Brama Moolenaara. +Nazwiska tłumaczy w plikach. +.SH ZOBACZ TAKĹťE +vim(1) diff --git a/runtime/doc/xxd-pl.1 b/runtime/doc/xxd-pl.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/xxd-pl.1 @@ -0,0 +1,389 @@ +.TH XXD 1 "Sierpień 1996" "Strona podręcznika dla xxd" +.\" +.\" 21st May 1996 +.\" Man page author: +.\" Tony Nugent +.\" Changes by Bram Moolenaar +.SH NAZWA +.I xxd +\- zrzut pliku do hex lub odwrotnie +.SH SYNOPSIS +.B xxd +\-h[elp] +.br +.B xxd +[opcje] [plik_we [plik_wy]] +.br +.B xxd +\-r[evert] [opcje] [plik_we [plik_wy]] +.SH OPIS +.I xxd +tworzy zrzut heksowy podanego pliku na standardowe wyjście. +Może także przetworzyć zrzut heksowy z powrotem do oryginalnej, +binarnej formy. +Podobnie jak +.BR uuencode (1) +i +.BR uudecode (1) +pozwala na przekazanie danych binarnych w bezpiecznej w poczcie formie +ASCII, ale ma zalety dekodowania na standardowe wyjście. +Ponadto można go użyć do przeprowadzenia łatania plików binarnych. +.SH OPCJE +Jeśli nie podano +.I plik_we +xxd czyta ze standardowego wejście. +Jeśli określono +.I plik_wy +jako znak +.RB \` \- ' +wtedy dane wejściowe czytane są ze standardowego wejścia. +Jeśli nie podano +.I plik_wy +(lub podano jako +.RB \` \- ' +), wyniki są wysyłane na standardowe wyjście. +.PP +Pamiętaj, że użyty został "leniwy" parser, który nie sprawdza więcej +niż pierwszej litery opcji (o ile ta nie została obdarzona +parametrem). Spacje między jedno literowymi opcjami i ich parametrami +są opcjonalne. Parametry opcji mogą być określone w notacji dziesiętnej, +heksadecymalej lub oktalnej. +Stąd +.BR \-c8 , +.BR "\-c 8" , +.B \-c 010 +i +.B \-cols 8 +są sobie równoważne. +.PP +.TP +.IR \-a " | " \-autoskip +przełącza autoskip: pojedyncza '*' zastępuje linie nul. Domyślnie +wyłączone. +.TP +.IR \-b " | " \-bits +Przełącza do zrzutu bitowego (cyfr binarnych) zamiast heksowego. +Opcja ta zapisuje oktety ajko osiem cyfr 1 lub 0 zamias normalnego +zrzutu heksowego. Każda linia jest poprzedzona przez +heksadecymalny numer linii a za nim jego reprezentacja w ascii (lub +ebcdic). Opcje linii poleceń \-r, \-p, \-i nie działają w tym +trybie. +.TP +.IR "\-c cols " | " \-cols cols" +formatuje liczbę +.RI < cols > +oktetów na wiersz. Domyślnie 16 (\-i: 12, \-ps: 30, \-b: 6). Maks. +256. +.TP +.IR \-E " | "\-EBCDIC +zmienia kodowanie znaków w prawej kolumnie z ASCII na EBCDIC. +Nie zmienia prezentacji heksadecymalej. Opcja nie działa w połączeniu +z \-r, \-p lub \-i. +.TP +.IR "\-g bajtów " | " \-groupsize bajtów" +oddziela wyjście każdych +.RI < bajtów > +bajtów (dwa heksowe znaki lub osiem cyfr binarnych każde) przez biały +znak. +Określ +.I \-g 0 +by wyłączyć grupowanie. +.RI < Bajtów "> domyślnie jest " 2 +w trybie normalnym i \fI1\fP w trybie bitów. +Grupowanie nie działa w trybie postscriptu lub włączania. +.TP +.IR \-h " | " \-help +wypisuje podsumowanie dostępnych poleceń i kończy działanie. Nie +zostaje przeprowadzony żaden zrzut. +.TP +.IR \-i " | " \-include +wyjście w stylu włączania pliku w C. Zostaje zapisana kompletna +statyczna tablica definicji (nazwana według pliku wejścia), o ile xxd +nie czyta ze standardowego wejścia. +.TP +.IR "\-l len " | "\-len len" +zakończ po wypisaniu +.RI < len> +oktetów. +.TP +.IR \-p " | " \-ps " | " \-postscript " | " \-plain +wyjście w postcriptowym ciągłym stylu zrzutu heksowego. Znany także +jako zwykły zrzut heksowy. +.TP +.IR \-r " | " \-revert +odwróć operację: przekonwertuj (lub załataj) zrzut heksowy w binarkę. +Jeśli nie zapisuje na standardowe wyjście, xxd zapisze plik wyjściowy +bez obcinania go. Użyj kombinacji +.I \-r \-p +by odczytać zwykły zrzut heksadecymalny bez numerów linii +i określonego układu kolumn. Dodatkowe białe znaki i łamanie wierszy +są dozwolone wszędzie. +.TP +.I \-seek offset +Kiedy użyty po +.IR \-r : +odwraca z +.RI < offset > +dodanym do pozycji w pliku odnalezionym w zrzucie heksowym. +.TP +.I \-s [+][\-]seek +zaczyna na +.RI < seek > +bajtów abs. (lub wzg.) offsecie pliku wejściowego. +\fI+ fRwskazuje, że seek jest względne do bieżącej pozycji pliku (bez +znaczenia jeśli nie wczytuje ze standardowego wejścia). \fI\- \fRwskazuje +że seek powinno być o tyle znaków od końca wejścia (lub jeśli +połączone z \fI+\fR: przezhd bieżącą pozycją pliku na standardowym +wejściu). +Bez opcji \-s xxd zaczyna od bieżącej pozycji w pliku. +.TP +.I \-u +użyj wielkich liter w znakach heksowych. Domyślnie są małe znaki. +.TP +.IR \-v " | " \-version +pokazuje wersję programu. +.SH OSTRZEŻENIA +.PP +.I xxd \-r +potrafi określić numery linii. Jeśli plik wyjścia jest możliwy do +przeszukania wtedy numery linii na początku wiersza zrzutu heksowego +mogą być nie po kolei, może brakować wierszy lub nakładać się na +siebie. W takich wypadkach xxd użyje lseek(2) by znaleźć następną +pozycję. Jeśli plik wyjściowy nie jest możliwy do przeszukania możliwe +są tylko przerwy, które zostaną wypełnione bajtami null. +.PP +.I xxd \-r +nigdy nie podaje błędów analizy. Śmieci są ignorowane. +.PP +W czasie edycji zrzutów heksowych, proszę zauważyć że +.I xxd \-r +pomija wszystko w linii wejścia po odczytaniu wystarczającej ilości +kolumn danych heksadecymalnych (zobacz opcję \-c). Oznacza to także, +że zmiany w drukowanych kolumnach ascii (lub ebcdic) są zawsze +ignorowane. Odwrócenie zwykłego (lub postscriptowego) stylu zrzutu +poprzez xxd \-r \-p nie zależy od kolejności kolumn. Tutaj cokolwiej +co wygląda jak para cyfr heks jest interpretowane. +.PP +Zauważ różnicę między +.br +\fI% xxd \-i plik\fR +.br +i +.br +\fI% xxd \-i < plik\fR +.PP +.I xxd \-s \+seek +może być różne od +.IR "xxd \-s seek" , +ponieważ lseek(2) jest użyty do "przewinięcie" wejścia. '+' robi +różnicę jeśli źródłem wejścia jest standardowe wejście i jeśli pozycja +w pliku ze standardowego wejścia nie jest początkiem pliku w chwili +uruchomienia xxd. Następujące przykłady mogą wyjaśnić (lub bardziej +zmylić!)... +.PP +Przewiń standardowe wejście przed przeczytaniem; potrzebne ponieważ +`cat' już odczytał do końca standardowego wejścia. +.br +\fI% sh \-c 'cat > zwykła_kopia; xxd \-s 0 > hex_kopia' < plik +.PP +Zrzut heksowy od pozycji pliku 0x480 (=1024+128) w przód. +Znak `+' oznacza "względny wobec bieżącej pozycji", stąd `128' dodaje +do 1k gdzie zakończył dd. +.br +\fI% sh \-c 'dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet' < file +.PP +Zrzut heksowy od pozycji pliku 0x100 ( = 1024\-768) dalej. +.br +\fI% sh \-c 'dd of=plain_snippet bs=1k count=1; xxd \-s +-768 > hex_snippet' < file +.PP +Jakkolwiek, jest to rzadka sytuacja i użycie `+' jest rzadko +potrzebne. +Autor woli monitorować działanie xxd przy pomocy strace(1) lub truss(1) kiedy \-s jest użyte. +.SH PRZYKŁADY +.PP +.br +Wypisz wszystko z wyjątkiem pierwszych trzech linii (heksowe 0x30 bajtów) +.B pliku +\. +.br +\fI% xxd \-s 0x30 plik +.PP +.br +Wypisz trzy linie (heksowe 0x30 bajtów) z końca +.B pliku +\. +.br +\fI% xxd \-s \-0x30 plik +.PP +.br +Wypisz 120 bajtów jako ciągły zrzut heksowy z 40 oktetami na linię. +.br +\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR +.br +2e54482058584420312022417567757374203139 +.br +39362220224d616e75616c207061676520666f72 +.br +20787864220a2e5c220a2e5c222032317374204d +.br +617920313939360a2e5c22204d616e2070616765 +.br +20617574686f723a0a2e5c2220202020546f6e79 +.br +204e7567656e74203c746f6e79407363746e7567 +.br + +.br +Zrzut heksowy z pierwszymi 120 bajtami tej strony podręcznika z 12 +oktetami na linię. +.br +\fI% xxd \-l 120 \-c 12 xxd.1\fR +.br +0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A +.br +000000c: 7567 7573 7420 3139 3936 2220 ugust 1996" +.br +0000018: 224d 616e 7561 6c20 7061 6765 "Manual page +.br +0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\\ +.br +0000030: 220a 2e5c 2220 3231 7374 204d "..\\" 21st M +.br +000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\\" +.br +0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut +.br +0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\\" +.br +0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent +.br +000006c: 3c74 6f6e 7940 7363 746e 7567 plik_wy\fR +.br + +.br +Podmień datę w pliku xxd.1 +.br +\fI% echo '0000037: 3574 68' | xxd \-r \- xxd.1\fR +.br +\fI% xxd \-s 0x36 \-l 13 \-c 13 xxd.1\fR +.br +0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996 +.PP +.br +Utwórz plik o 65537 bajtach, wszystkich równych 0x00, +z wyjątkiem ostatniego, który ma być 'A' (hex 0x41). +.br +\fI% echo '010000: 41' | xxd \-r \> plik\fR +.PP +.br +Zrzut heksowy tego pliku z autoskipem. +.br +\fI% xxd \-a \-c 12 plik\fR +.br +0000000: 0000 0000 0000 0000 0000 0000 ............ +.br +* +.br +000fffc: 0000 0000 40 ....A +.PP +Utwórz jedno bajtowy plik zawierający pojednczą literę 'A'. +Liczba po '\-r \-s' dodaje numery linii znalezione w pliku; +w efekcie poprzedzające bajty są ukryte. +.br +\fI% echo '010000: 41' | xxd \-r \-s \-0x10000 \> plik\fR +.PP +Użyj xxd jako filtra wewnątrz edytora takiego jak +.B vim(1) +aby uzyskać zrzut heksowy zakresu między markerami `a' i `z'. +.br +\fI:'a,'z!xxd\fR +.PP +Użyj xxd jako filtra wewnątrz edytora takiego jak +.B vim(1) +by odzyskać binarny zrzut heksowy zakresu pomiędzy markerami `a' +i `z'. +.br +\fI:'a,'z!xxd \-r\fR +.PP +Użyj xxd jako filtra wewnątrz edytora takiego jak +.B vim(1) +by odzyskać jedną linię zrzutu heksowego. Przejdź z kursorem na linię +i wpisz: +.br +\fI!!xxd \-r\fR +.PP +Odczytaj pojednycze znaki z portu szeregowego +.br +\fI% xxd \-c1 < /dev/term/b &\fR +.br +\fI% stty < /dev/term/b \-echo \-opost \-isig \-icanon min 1\fR +.br +\fI% echo \-n foo > /dev/term/b\fR +.PP +.SH "ZWRACANE WARTOŚCI" +Zwracane są następujące wartości błędów: +.TP +0 +nie znaleziono błędów. +.TP +\-1 +operacja nie jest wspierana ( +.I xxd \-r \-i +cały czas niemożliwa). +.TP +1 +błąd w czasie analizowania opcji. +.TP +2 +problemy z plikiem wejściowym. +.TP +3 +problemy z plikiem wyjściowym. +.TP +4,5 +żądana pozycja jest nieosiągalna. +.SH "ZOBACZ TAKŻE" +uuencode(1), uudecode(1), patch(1) +.br +.SH OSTRZEŻENIA +Dziwaczność narzędzi dorównuje dziwaczności mózgu twórcy. +Używaj wyłącznie na własną odpowiedzialność. Kopiuj pliki. Analizuj +je. Stań się czarodziejem. +.br +.SH WERSJA +Strona podręcznika opisuje xxd w wersji 1.7 +.SH AUTOR +.br +(c) 1990-1997 by Juergen Weigert +.br + +.LP +Kopiuj do woli i podaj moje dane, +.br +zarabiaj pieniądze i dziel się ze mną, +.br +trać pieniądze i nie miej do mnie pretensji. +.PP +Strona podręcznika zapoczątkowana przez Tony'ego Nugenta +.br + +.br +Małe zmiany: Bram Moolenaar. +Redakcja: Juergen Weigert. +.PP diff --git a/runtime/doc/xxd-pl.UTF-8.1 b/runtime/doc/xxd-pl.UTF-8.1 new file mode 100644 --- /dev/null +++ b/runtime/doc/xxd-pl.UTF-8.1 @@ -0,0 +1,389 @@ +.TH XXD 1 "Sierpień 1996" "Strona podręcznika dla xxd" +.\" +.\" 21st May 1996 +.\" Man page author: +.\" Tony Nugent +.\" Changes by Bram Moolenaar +.SH NAZWA +.I xxd +\- zrzut pliku do hex lub odwrotnie +.SH SYNOPSIS +.B xxd +\-h[elp] +.br +.B xxd +[opcje] [plik_we [plik_wy]] +.br +.B xxd +\-r[evert] [opcje] [plik_we [plik_wy]] +.SH OPIS +.I xxd +tworzy zrzut heksowy podanego pliku na standardowe wyjście. +MoĹźe takĹźe przetworzyć zrzut heksowy z powrotem do oryginalnej, +binarnej formy. +Podobnie jak +.BR uuencode (1) +i +.BR uudecode (1) +pozwala na przekazanie danych binarnych w bezpiecznej w poczcie formie +ASCII, ale ma zalety dekodowania na standardowe wyjście. +Ponadto moĹźna go uĹźyć do przeprowadzenia łatania plikĂłw binarnych. +.SH OPCJE +Jeśli nie podano +.I plik_we +xxd czyta ze standardowego wejście. +Jeśli określono +.I plik_wy +jako znak +.RB \` \- ' +wtedy dane wejściowe czytane są ze standardowego wejścia. +Jeśli nie podano +.I plik_wy +(lub podano jako +.RB \` \- ' +), wyniki są wysyłane na standardowe wyjście. +.PP +Pamiętaj, Ĺźe uĹźyty został "leniwy" parser, ktĂłry nie sprawdza więcej +niĹź pierwszej litery opcji (o ile ta nie została obdarzona +parametrem). Spacje między jedno literowymi opcjami i ich parametrami +są opcjonalne. Parametry opcji mogą być określone w notacji dziesiętnej, +heksadecymalej lub oktalnej. +Stąd +.BR \-c8 , +.BR "\-c 8" , +.B \-c 010 +i +.B \-cols 8 +są sobie rĂłwnowaĹźne. +.PP +.TP +.IR \-a " | " \-autoskip +przełącza autoskip: pojedyncza '*' zastępuje linie nul. Domyślnie +wyłączone. +.TP +.IR \-b " | " \-bits +Przełącza do zrzutu bitowego (cyfr binarnych) zamiast heksowego. +Opcja ta zapisuje oktety ajko osiem cyfr 1 lub 0 zamias normalnego +zrzutu heksowego. KaĹźda linia jest poprzedzona przez +heksadecymalny numer linii a za nim jego reprezentacja w ascii (lub +ebcdic). Opcje linii poleceń \-r, \-p, \-i nie działają w tym +trybie. +.TP +.IR "\-c cols " | " \-cols cols" +formatuje liczbę +.RI < cols > +oktetĂłw na wiersz. Domyślnie 16 (\-i: 12, \-ps: 30, \-b: 6). Maks. +256. +.TP +.IR \-E " | "\-EBCDIC +zmienia kodowanie znakĂłw w prawej kolumnie z ASCII na EBCDIC. +Nie zmienia prezentacji heksadecymalej. Opcja nie działa w połączeniu +z \-r, \-p lub \-i. +.TP +.IR "\-g bajtĂłw " | " \-groupsize bajtĂłw" +oddziela wyjście kaĹźdych +.RI < bajtĂłw > +bajtĂłw (dwa heksowe znaki lub osiem cyfr binarnych kaĹźde) przez biały +znak. +Określ +.I \-g 0 +by wyłączyć grupowanie. +.RI < BajtĂłw "> domyślnie jest " 2 +w trybie normalnym i \fI1\fP w trybie bitĂłw. +Grupowanie nie działa w trybie postscriptu lub włączania. +.TP +.IR \-h " | " \-help +wypisuje podsumowanie dostępnych poleceń i kończy działanie. Nie +zostaje przeprowadzony Ĺźaden zrzut. +.TP +.IR \-i " | " \-include +wyjście w stylu włączania pliku w C. Zostaje zapisana kompletna +statyczna tablica definicji (nazwana według pliku wejścia), o ile xxd +nie czyta ze standardowego wejścia. +.TP +.IR "\-l len " | "\-len len" +zakończ po wypisaniu +.RI < len> +oktetĂłw. +.TP +.IR \-p " | " \-ps " | " \-postscript " | " \-plain +wyjście w postcriptowym ciągłym stylu zrzutu heksowego. Znany takĹźe +jako zwykły zrzut heksowy. +.TP +.IR \-r " | " \-revert +odwróć operację: przekonwertuj (lub załataj) zrzut heksowy w binarkę. +Jeśli nie zapisuje na standardowe wyjście, xxd zapisze plik wyjściowy +bez obcinania go. UĹźyj kombinacji +.I \-r \-p +by odczytać zwykły zrzut heksadecymalny bez numerĂłw linii +i określonego układu kolumn. Dodatkowe białe znaki i łamanie wierszy +są dozwolone wszędzie. +.TP +.I \-seek offset +Kiedy uĹźyty po +.IR \-r : +odwraca z +.RI < offset > +dodanym do pozycji w pliku odnalezionym w zrzucie heksowym. +.TP +.I \-s [+][\-]seek +zaczyna na +.RI < seek > +bajtĂłw abs. (lub wzg.) offsecie pliku wejściowego. +\fI+ fRwskazuje, Ĺźe seek jest względne do bieżącej pozycji pliku (bez +znaczenia jeśli nie wczytuje ze standardowego wejścia). \fI\- \fRwskazuje +Ĺźe seek powinno być o tyle znakĂłw od końca wejścia (lub jeśli +połączone z \fI+\fR: przezhd bieżącą pozycją pliku na standardowym +wejściu). +Bez opcji \-s xxd zaczyna od bieżącej pozycji w pliku. +.TP +.I \-u +uĹźyj wielkich liter w znakach heksowych. Domyślnie są małe znaki. +.TP +.IR \-v " | " \-version +pokazuje wersję programu. +.SH OSTRZEĹťENIA +.PP +.I xxd \-r +potrafi określić numery linii. Jeśli plik wyjścia jest moĹźliwy do +przeszukania wtedy numery linii na początku wiersza zrzutu heksowego +mogą być nie po kolei, moĹźe brakować wierszy lub nakładać się na +siebie. W takich wypadkach xxd uĹźyje lseek(2) by znaleźć następną +pozycję. Jeśli plik wyjściowy nie jest moĹźliwy do przeszukania moĹźliwe +są tylko przerwy, ktĂłre zostaną wypełnione bajtami null. +.PP +.I xxd \-r +nigdy nie podaje błędĂłw analizy. Śmieci są ignorowane. +.PP +W czasie edycji zrzutĂłw heksowych, proszę zauwaĹźyć Ĺźe +.I xxd \-r +pomija wszystko w linii wejścia po odczytaniu wystarczającej ilości +kolumn danych heksadecymalnych (zobacz opcję \-c). Oznacza to takĹźe, +Ĺźe zmiany w drukowanych kolumnach ascii (lub ebcdic) są zawsze +ignorowane. OdwrĂłcenie zwykłego (lub postscriptowego) stylu zrzutu +poprzez xxd \-r \-p nie zaleĹźy od kolejności kolumn. Tutaj cokolwiej +co wygląda jak para cyfr heks jest interpretowane. +.PP +ZauwaĹź róşnicę między +.br +\fI% xxd \-i plik\fR +.br +i +.br +\fI% xxd \-i < plik\fR +.PP +.I xxd \-s \+seek +moĹźe być róşne od +.IR "xxd \-s seek" , +poniewaĹź lseek(2) jest uĹźyty do "przewinięcie" wejścia. '+' robi +róşnicę jeśli ĹşrĂłdłem wejścia jest standardowe wejście i jeśli pozycja +w pliku ze standardowego wejścia nie jest początkiem pliku w chwili +uruchomienia xxd. Następujące przykłady mogą wyjaśnić (lub bardziej +zmylić!)... +.PP +Przewiń standardowe wejście przed przeczytaniem; potrzebne poniewaĹź +`cat' juĹź odczytał do końca standardowego wejścia. +.br +\fI% sh \-c 'cat > zwykła_kopia; xxd \-s 0 > hex_kopia' < plik +.PP +Zrzut heksowy od pozycji pliku 0x480 (=1024+128) w przĂłd. +Znak `+' oznacza "względny wobec bieżącej pozycji", stąd `128' dodaje +do 1k gdzie zakończył dd. +.br +\fI% sh \-c 'dd of=plain_snippet bs=1k count=1; xxd \-s +128 > hex_snippet' < file +.PP +Zrzut heksowy od pozycji pliku 0x100 ( = 1024\-768) dalej. +.br +\fI% sh \-c 'dd of=plain_snippet bs=1k count=1; xxd \-s +-768 > hex_snippet' < file +.PP +Jakkolwiek, jest to rzadka sytuacja i uĹźycie `+' jest rzadko +potrzebne. +Autor woli monitorować działanie xxd przy pomocy strace(1) lub truss(1) kiedy \-s jest uĹźyte. +.SH PRZYKŁADY +.PP +.br +Wypisz wszystko z wyjątkiem pierwszych trzech linii (heksowe 0x30 bajtĂłw) +.B pliku +\. +.br +\fI% xxd \-s 0x30 plik +.PP +.br +Wypisz trzy linie (heksowe 0x30 bajtĂłw) z końca +.B pliku +\. +.br +\fI% xxd \-s \-0x30 plik +.PP +.br +Wypisz 120 bajtĂłw jako ciągły zrzut heksowy z 40 oktetami na linię. +.br +\fI% xxd \-l 120 \-ps \-c 20 xxd.1\fR +.br +2e54482058584420312022417567757374203139 +.br +39362220224d616e75616c207061676520666f72 +.br +20787864220a2e5c220a2e5c222032317374204d +.br +617920313939360a2e5c22204d616e2070616765 +.br +20617574686f723a0a2e5c2220202020546f6e79 +.br +204e7567656e74203c746f6e79407363746e7567 +.br + +.br +Zrzut heksowy z pierwszymi 120 bajtami tej strony podręcznika z 12 +oktetami na linię. +.br +\fI% xxd \-l 120 \-c 12 xxd.1\fR +.br +0000000: 2e54 4820 5858 4420 3120 2241 .TH XXD 1 "A +.br +000000c: 7567 7573 7420 3139 3936 2220 ugust 1996" +.br +0000018: 224d 616e 7561 6c20 7061 6765 "Manual page +.br +0000024: 2066 6f72 2078 7864 220a 2e5c for xxd"..\\ +.br +0000030: 220a 2e5c 2220 3231 7374 204d "..\\" 21st M +.br +000003c: 6179 2031 3939 360a 2e5c 2220 ay 1996..\\" +.br +0000048: 4d61 6e20 7061 6765 2061 7574 Man page aut +.br +0000054: 686f 723a 0a2e 5c22 2020 2020 hor:..\\" +.br +0000060: 546f 6e79 204e 7567 656e 7420 Tony Nugent +.br +000006c: 3c74 6f6e 7940 7363 746e 7567 plik_wy\fR +.br + +.br +Podmień datę w pliku xxd.1 +.br +\fI% echo '0000037: 3574 68' | xxd \-r \- xxd.1\fR +.br +\fI% xxd \-s 0x36 \-l 13 \-c 13 xxd.1\fR +.br +0000036: 3235 7468 204d 6179 2031 3939 36 25th May 1996 +.PP +.br +UtwĂłrz plik o 65537 bajtach, wszystkich rĂłwnych 0x00, +z wyjątkiem ostatniego, ktĂłry ma być 'A' (hex 0x41). +.br +\fI% echo '010000: 41' | xxd \-r \> plik\fR +.PP +.br +Zrzut heksowy tego pliku z autoskipem. +.br +\fI% xxd \-a \-c 12 plik\fR +.br +0000000: 0000 0000 0000 0000 0000 0000 ............ +.br +* +.br +000fffc: 0000 0000 40 ....A +.PP +UtwĂłrz jedno bajtowy plik zawierający pojednczą literę 'A'. +Liczba po '\-r \-s' dodaje numery linii znalezione w pliku; +w efekcie poprzedzające bajty są ukryte. +.br +\fI% echo '010000: 41' | xxd \-r \-s \-0x10000 \> plik\fR +.PP +UĹźyj xxd jako filtra wewnątrz edytora takiego jak +.B vim(1) +aby uzyskać zrzut heksowy zakresu między markerami `a' i `z'. +.br +\fI:'a,'z!xxd\fR +.PP +UĹźyj xxd jako filtra wewnątrz edytora takiego jak +.B vim(1) +by odzyskać binarny zrzut heksowy zakresu pomiędzy markerami `a' +i `z'. +.br +\fI:'a,'z!xxd \-r\fR +.PP +UĹźyj xxd jako filtra wewnątrz edytora takiego jak +.B vim(1) +by odzyskać jedną linię zrzutu heksowego. PrzejdĹş z kursorem na linię +i wpisz: +.br +\fI!!xxd \-r\fR +.PP +Odczytaj pojednycze znaki z portu szeregowego +.br +\fI% xxd \-c1 < /dev/term/b &\fR +.br +\fI% stty < /dev/term/b \-echo \-opost \-isig \-icanon min 1\fR +.br +\fI% echo \-n foo > /dev/term/b\fR +.PP +.SH "ZWRACANE WARTOŚCI" +Zwracane są następujące wartości błędĂłw: +.TP +0 +nie znaleziono błędĂłw. +.TP +\-1 +operacja nie jest wspierana ( +.I xxd \-r \-i +cały czas niemoĹźliwa). +.TP +1 +błąd w czasie analizowania opcji. +.TP +2 +problemy z plikiem wejściowym. +.TP +3 +problemy z plikiem wyjściowym. +.TP +4,5 +żądana pozycja jest nieosiągalna. +.SH "ZOBACZ TAKĹťE" +uuencode(1), uudecode(1), patch(1) +.br +.SH OSTRZEĹťENIA +Dziwaczność narzędzi dorĂłwnuje dziwaczności mĂłzgu twĂłrcy. +UĹźywaj wyłącznie na własną odpowiedzialność. Kopiuj pliki. Analizuj +je. Stań się czarodziejem. +.br +.SH WERSJA +Strona podręcznika opisuje xxd w wersji 1.7 +.SH AUTOR +.br +(c) 1990-1997 by Juergen Weigert +.br + +.LP +Kopiuj do woli i podaj moje dane, +.br +zarabiaj pieniądze i dziel się ze mną, +.br +trać pieniądze i nie miej do mnie pretensji. +.PP +Strona podręcznika zapoczątkowana przez Tony'ego Nugenta +.br + +.br +Małe zmiany: Bram Moolenaar. +Redakcja: Juergen Weigert. +.PP diff --git a/runtime/filetype.vim b/runtime/filetype.vim --- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -1,7 +1,7 @@ " Vim support file to detect file types " " Maintainer: Bram Moolenaar -" Last Change: 2006 Mar 25 +" Last Change: 2006 Mar 26 " Listen very carefully, I will say this only once if exists("did_load_filetypes") @@ -195,7 +195,7 @@ au BufNewFile,BufRead *.mar setf vmasm au BufNewFile,BufRead *.atl,*.as setf atlas " Automake -au BufNewFile,BufRead [mM]akefile.am setf automake +au BufNewFile,BufRead [mM]akefile.am,GNUmakefile.am setf automake " Autotest .at files are actually m4 au BufNewFile,BufRead *.at setf m4 @@ -340,9 +340,20 @@ au BufNewFile,BufRead *.css setf css au BufNewFile,BufRead *.con setf cterm " Changelog -au BufNewFile,BufRead changelog.Debian,changelog.dch setf debchangelog -au BufNewFile,BufRead [cC]hange[lL]og if getline(1) =~ '; urgency=' - \| setf debchangelog | else | setf changelog | endif +au BufNewFile,BufRead changelog.Debian,changelog.dch,NEWS.Debian,NEWS.dch + \ setf debchangelog + +au BufNewFile,BufRead [cC]hange[lL]og + \ if getline(1) =~ '; urgency=' + \| setf debchangelog + \| else + \| setf changelog + \| endif + +au BufNewFile,BufRead NEWS + \ if getline(1) =~ '; urgency=' + \| setf debchangelog + \| endif " CHILL au BufNewFile,BufRead *..ch setf chill @@ -417,7 +428,14 @@ au BufNewFile,BufRead *.prg \ endif " Cobol -au BufNewFile,BufRead *.cbl,*.cob,*.cpy,*.lib setf cobol +au BufNewFile,BufRead *.cbl,*.cob,*.lib setf cobol +" cobol or zope form controller python script? (heuristic) +au BufNewFile,BufRead *.cpy + \ if getline(1) =~ '^##' | + \ setf python | + \ else | + \ setf cobol | + \ endif " Cold Fusion au BufNewFile,BufRead *.cfm,*.cfi,*.cfc setf cf @@ -843,6 +861,9 @@ au BufNewFile,BufRead *.mgp setf mgp " Mail (for Elm, trn, mutt, rn, slrn) au BufNewFile,BufRead snd.\d\+,.letter,.letter.\d\+,.followup,.article,.article.\d\+,pico.\d\+,mutt{ng,}-*-\w\+,mutt\w\{6\},ae\d\+.txt,/tmp/SLRN[0-9A-Z.]\+,*.eml setf mail +" Mail aliases +au BufNewFile,BufRead /etc/mail/aliases,/etc/aliases setf mailaliases + " Mailcap configuration file au BufNewFile,BufRead .mailcap,mailcap setf mailcap @@ -1384,7 +1405,7 @@ au BufNewFile,BufRead *.sas setf sas au BufNewFile,BufRead *.sa setf sather " Scilab -au BufNewFile,BufRead *.sci setf scilab +au BufNewFile,BufRead *.sci,*.sce setf scilab " SDL au BufNewFile,BufRead *.sdl,*.pr setf sdl @@ -1930,6 +1951,13 @@ endfun " Yaml au BufNewFile,BufRead *.yaml,*.yml setf yaml +" Zope +" dtml (zope dynamic template markup language), pt (zope page template), +" cpt (zope form controller page template) +au BufNewFile,BufRead *.dtml,*.pt,*.cpt call FTCheck_html() +" zsql (zope sql method) +au BufNewFile,BufRead *.zsql call s:SQL() + " Z80 assembler asz80 au BufNewFile,BufRead *.z8a setf z8a diff --git a/runtime/indent/config.vim b/runtime/indent/config.vim --- a/runtime/indent/config.vim +++ b/runtime/indent/config.vim @@ -1,7 +1,7 @@ " Vim indent file " Language: Autoconf configure.{ac,in} file " Maintainer: Nikolai Weibull -" Latest Revision: 2005-06-30 +" Latest Revision: 2006-02-11 " TODO: how about nested [()]'s in one line " what's wrong with '\\\@!'? @@ -63,7 +63,7 @@ function GetConfigIndent() " if previous line had an unmatched closing parantheses, " indent to the matching opening parantheses - if line =~ '[^(]*\\\@ " Original Author: David Bustos -" Last Change: 2005 Feb 24 +" Last Change: 2006 Mar 26 " Only load this indent file when no other was loaded. if exists("b:did_indent") @@ -117,10 +117,7 @@ function GetPythonIndent(lnum) let min = col + 1 endif endwhile - echomsg min let pline = strpart(pline, 0, min - 1) - echomsg pline - sleep 1 endif else let col = 0 @@ -153,10 +150,8 @@ function GetPythonIndent(lnum) if getline(a:lnum) =~ '^\s*\(except\|finally\)\>' let lnum = a:lnum - 1 while lnum >= 1 - echomsg 'got here' if getline(lnum) =~ '^\s*\(try\|except\)\>' let ind = indent(lnum) - echomsg 'got here, indent is ' . ind if ind >= indent(a:lnum) return -1 " indent is already less than this endif @@ -164,7 +159,6 @@ function GetPythonIndent(lnum) endif let lnum = lnum - 1 endwhile - echomsg 'got to the end' return -1 " no matching "try"! endif diff --git a/runtime/makemenu.vim b/runtime/makemenu.vim --- a/runtime/makemenu.vim +++ b/runtime/makemenu.vim @@ -1,6 +1,6 @@ " Script to define the syntax menu in synmenu.vim " Maintainer: Bram Moolenaar -" Last Change: 2006 Mar 25 +" Last Change: 2006 Mar 26 " This is used by "make menu" in the src directory. edit :p:h/synmenu.vim @@ -267,6 +267,7 @@ SynMenu L-Ma.Lynx\ config:lynx SynMenu L-Ma.M4:m4 SynMenu L-Ma.MaGic\ Point:mgp SynMenu L-Ma.Mail:mail +SynMenu L-Ma.Mail\ aliases:mailaliases SynMenu L-Ma.Mailcap:mailcap SynMenu L-Ma.Makefile:make SynMenu L-Ma.MakeIndex:ist diff --git a/runtime/scripts.vim b/runtime/scripts.vim --- a/runtime/scripts.vim +++ b/runtime/scripts.vim @@ -184,10 +184,12 @@ else " - "*** " in first line and "--- " in second line (context diff). " - "# It was generated by makepatch " in the second line (makepatch diff). " - "Index: " in the first line (CVS file) + " - "=== ", line of "=", "---", "+++ " (SVK diff) elseif s:line1 =~ '^\(diff\>\|Only in \|\d\+\(,\d\+\)\=[cda]\d\+\>\|# It was generated by makepatch \|Index:\s\+\f\+\r\=$\|===== \f\+ \d\+\.\d\+ vs edited\|==== //\f\+#\d\+\)' \ || (s:line1 =~ '^--- ' && s:line2 =~ '^+++ ') \ || (s:line1 =~ '^\* looking for ' && s:line2 =~ '^\* comparing to ') \ || (s:line1 =~ '^\*\*\* ' && s:line2 =~ '^--- ') + \ || (s:line1 =~ '^=== ' && s:line2 =~ '^=\{66\}' && s:line3 =~ '^--- ' && s:line4 =~ '^+++') set ft=diff " PostScript Files (must have %!PS as the first line, like a2ps output) diff --git a/runtime/spell/hu/hu_HU.diff b/runtime/spell/hu/hu_HU.diff --- a/runtime/spell/hu/hu_HU.diff +++ b/runtime/spell/hu/hu_HU.diff @@ -1,94 +1,135 @@ -*** hu_HU.orig.aff Tue Aug 16 18:21:10 2005 ---- hu_HU.aff Fri Aug 19 21:28:45 2005 +*** hu_HU.orig.aff Sun Mar 26 15:05:13 2006 +--- hu_HU.aff Sun Mar 26 21:17:08 2006 *************** -*** 57,62 **** - -! NAME Magyar Ispell helyesírási szótár +*** 57,59 **** + NAME Magyar Ispell helyesírási szótár ! LANG hu_HU -! HOME http://magyarispell.sourceforge.net -! VERSION Magyar 0.99.4.2 - SET ISO8859-2 ---- 57,62 ---- - -! #NAME Magyar Ispell helyesírási szótár + HOME http://magyarispell.sourceforge.net +--- 57,59 ---- + NAME Magyar Ispell helyesírási szótár ! #LANG hu_HU -! #HOME http://magyarispell.sourceforge.net -! #VERSION Magyar 0.99.4.2 - SET ISO8859-2 + HOME http://magyarispell.sourceforge.net *************** -*** 64,77 **** - COMPOUNDMIN 2 -! COMPOUNDFLAG Y -! COMPOUNDWORD 2 y +*** 62,63 **** +--- 62,68 ---- + TRY íóúÍÓÚtaeslzánorhgkiédmyőpvöbucfjüűxwqTAESLZÁNORHGKIÉDMYŐPVÖBUCFJÜŰXWQ-. ++ ++ # There are soooo many affixes. Postpone the prefixes to keep the time needed ++ # for generating the .spl within reasonable limits. ++ PFXPOSTPONE ++ + COMPOUNDMIN 1 +*************** +*** 66,69 **** + COMPOUNDPERMITFLAG @ ! COMPOUNDSYLLABLE 6 aáeéiíoóöőuúüű ! SYLLABLENUM klmc -! COMPOUNDFIRST v -! COMPOUNDLAST x -! FORBIDDENWORD w -! ONLYROOT u -! ACCENT áéíóöőúüű aeiooouuu -! CHECKNUM -! WORDCHARS -.§%°0123456789 -! HU_KOTOHANGZO Z ---- 64,116 ---- - COMPOUNDMIN 2 -! #COMPOUNDWORD 2 y -! COMPOUNDMAX 2 -! # I don't understand what the "y" is for; if it's to disable compounding simply -! # remove the compound flag from the word. -! +--- 71,81 ---- + COMPOUNDPERMITFLAG @ +! # +! # Strange that every vowel is counted as a syllable, that's how the hunspell +! # code works. ! #COMPOUNDSYLLABLE 6 aáeéiíoóöőuúüű ! COMPOUNDSYLMAX 6 ! SYLLABLE a/á/e/é/i/í/o/ó/ö/ő/u/ú/ü/ű -! # Strange that every vowel is counted as a syllable, that's how the hunspell -! # code works. ! +! # the effect of SYLLABLENUM is not documented ! #SYLLABLENUM klmc -! # Don't understand what this is for -! -! #COMPOUNDFLAG Y + +*************** +*** 74,88 **** + +! # obsoloted +! COMPOUNDFIRST v +! COMPOUNDLAST x +! ONLYROOT u + #COMPOUNDWORD 2 y +! HU_KOTOHANGZO ? + + # new (> Hunspell-1.0-RC2) +! COMPOUNDBEGIN v +! COMPOUNDEND x +! PSEUDOROOT u + # 2. parameter only for back compatibility: +! COMPOUNDWORDMAX 2 y + COMPOUNDROOT y +--- 86,110 ---- + +! # obsolete ! #COMPOUNDFIRST v ! #COMPOUNDLAST x -! COMPOUNDFLAGS Y+ -! COMPOUNDFLAGS vY*x -! COMPOUNDFLAGS Y+x -! COMPOUNDFLAGS vY+ +! #ONLYROOT u +! + #COMPOUNDWORD 2 y ! -! #FORBIDDENWORD w -! # I don't understand what FORBIDDENWORD is needed for, using NEEDAFFIX -! # (ONLYROOT) should be sufficient. +! # Undocumented and ? is already used for KEEPCASE +! #HU_KOTOHANGZO ? + + # new (> Hunspell-1.0-RC2) +! #COMPOUNDBEGIN v +! #COMPOUNDEND x +! COMPOUNDRULE vx ! -! #ONLYROOT u +! # PSEUDOROOT was renamed to NEEDAFFIX +! #PSEUDOROOT u ! NEEDAFFIX u ! -! #ACCENT áéíóöőúüű aeiooouuu + # 2. parameter only for back compatibility: +! # What is the extra "y" for? +! #COMPOUNDWORDMAX 2 y +! COMPOUNDWORDMAX 2 + COMPOUNDROOT y +*************** +*** 93,94 **** +--- 115,117 ---- + CHECKCOMPOUNDCASE ++ + CHECKCOMPOUNDPATTERN 7 +*************** +*** 102,111 **** + +! FORBIDDENWORD w +! WORDCHARS -.§%°0123456789– +! + +! NOT_GENERATE & +! GENERATE ( + +! LEMMA_PRESENT ) + +--- 125,151 ---- + +! #FORBIDDENWORD w +! BAD w + +! #WORDCHARS -.§%°0123456789– + +! # List the word characters for ISO-8859-2. +! FOL ą˘łľś¨šşťźžżą˛ł´ľśˇ¸šşťź˝žżŕáâăäĺćçčéęëěíîďđńňóôőöřůúűüýţß˙-§%° +! LOW ą˘łľś¨šşťźžżą˛ł´ľśˇ¸šşťź˝žżŕáâăäĺćçčéęëěíîďđńňóôőöřůúűüýţß˙-§%° +! UPP Ą˘ŁĽŚ¨ŠŞŤŹŽŻą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖŘŮÚŰÜÝŢß˙-§%° +! MIDWORD . +! +! # These are not documented and not in the source code either +! #NOT_GENERATE & +! #GENERATE ( +! +! # Only for morphological analysis +! #LEMMA_PRESENT ) +! +! # This works better than REP items ! MAP 5 ! MAP aáä ! MAP eé ! MAP ií ! MAP oóöő ! MAP uúüű -! -! #CHECKNUM -! # Vim always handles numbers in the same way. -! -! #WORDCHARS -.§%°0123456789 -! FOL ą˘łľś¨šşťźžżą˛ł´ľśˇ¸šşťź˝žżŕáâăäĺćçčéęëěíîďđńňóôőöřůúűüýţß˙-§%° -! LOW ą˘łľś¨šşťźžżą˛ł´ľśˇ¸šşťź˝žżŕáâăäĺćçčéęëěíîďđńňóôőöřůúűüýţß˙-§%° -! UPP Ą˘ŁĽŚ¨ŠŞŤŹŽŻą˛ł´ľśˇ¸šşťź˝žżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖŘŮÚŰÜÝŢß˙-§%° -! MIDWORD . -! -! #HU_KOTOHANGZO Z -! -! # There are soooo many affixes. Postpone the prefixes to keep the time needed -! # for generating the .spl within reasonable limits. -! PFXPOSTPONE *************** -*** 81,96 **** +*** 115,130 **** -! REP 89 +! REP 92 ! REP í i ! REP i í ! REP ó o @@ -103,88 +144,168 @@ REP ly j - REP a ä # Handel->Händel REP S Š # Skoda->Škoda ---- 120,124 ---- +--- 155,159 ---- -! REP 78 +! REP 81 REP j ly REP ly j REP S Š # Skoda->Škoda *************** -*** 173,241 **** +*** 214,251 **** + +! CHR HTML 35 +! CHR HTML ¤ ¤ +! CHR HTML ° ° +! CHR HTML ´ ´ +! CHR HTML ¸ ¸ +! CHR HTML Á Á +! CHR HTML   +! CHR HTML Ä Ä +! CHR HTML Ç Ç +! CHR HTML É É +! CHR HTML Ë Ë +! CHR HTML Í Í +! CHR HTML Î Î +! CHR HTML Ó Ó +! CHR HTML Ô Ô +! CHR HTML Ö Ö +! CHR HTML × × +! CHR HTML Ú Ú +! CHR HTML Ü Ü +! CHR HTML Ý Ý +! CHR HTML ß ß +! CHR HTML á á +! CHR HTML â â +! CHR HTML ä ä +! CHR HTML ç ç +! CHR HTML é é +! CHR HTML ë ë +! CHR HTML í í +! CHR HTML î î +! CHR HTML ó ó +! CHR HTML ô ô +! CHR HTML ö ö +! CHR HTML ÷ ÷ +! CHR HTML ú ú +! CHR HTML ü ü +! CHR HTML ý ý + +--- 243,280 ---- + +! #CHR HTML 35 +! #CHR HTML ¤ ¤ +! #CHR HTML ° ° +! #CHR HTML ´ ´ +! #CHR HTML ¸ ¸ +! #CHR HTML Á Á +! #CHR HTML   +! #CHR HTML Ä Ä +! #CHR HTML Ç Ç +! #CHR HTML É É +! #CHR HTML Ë Ë +! #CHR HTML Í Í +! #CHR HTML Î Î +! #CHR HTML Ó Ó +! #CHR HTML Ô Ô +! #CHR HTML Ö Ö +! #CHR HTML × × +! #CHR HTML Ú Ú +! #CHR HTML Ü Ü +! #CHR HTML Ý Ý +! #CHR HTML ß ß +! #CHR HTML á á +! #CHR HTML â â +! #CHR HTML ä ä +! #CHR HTML ç ç +! #CHR HTML é é +! #CHR HTML ë ë +! #CHR HTML í í +! #CHR HTML î î +! #CHR HTML ó ó +! #CHR HTML ô ô +! #CHR HTML ö ö +! #CHR HTML ÷ ÷ +! #CHR HTML ú ú +! #CHR HTML ü ü +! #CHR HTML ý ý -- # character conversion table -- # (HTML latin-1 entities -> latin-2) -- # not implemented yet +*************** +*** 255,277 **** + +! CHR 123 20 +! CHR 123 a1 á +! CHR 123 e1 é +! CHR 123 e2 ë +! CHR 123 i1 í +! CHR 123 o1 ó +! CHR 123 o2 ö +! CHR 123 o3 ő +! CHR 123 u1 ú +! CHR 123 u2 ü +! CHR 123 u3 ű +! CHR 123 A1 Á +! CHR 123 E1 É +! CHR 123 E2 Ë +! CHR 123 I1 Í +! CHR 123 O1 Ó +! CHR 123 O2 Ö +! CHR 123 O3 Ő +! CHR 123 U1 Ú +! CHR 123 U2 Ü +! CHR 123 U3 Ű + +--- 284,306 ---- + +! #CHR 123 20 +! #CHR 123 a1 á +! #CHR 123 e1 é +! #CHR 123 e2 ë +! #CHR 123 i1 í +! #CHR 123 o1 ó +! #CHR 123 o2 ö +! #CHR 123 o3 ő +! #CHR 123 u1 ú +! #CHR 123 u2 ü +! #CHR 123 u3 ű +! #CHR 123 A1 Á +! #CHR 123 E1 É +! #CHR 123 E2 Ë +! #CHR 123 I1 Í +! #CHR 123 O1 Ó +! #CHR 123 O2 Ö +! #CHR 123 O3 Ő +! #CHR 123 U1 Ú +! #CHR 123 U2 Ü +! #CHR 123 U3 Ű + +*** hu_HU.orig.dic Sun Mar 26 15:05:13 2006 +--- hu_HU.dic Sun Mar 26 20:12:13 2006 +*************** +*** 94597,94600 **** + 0 +- ... +- . + -öt +--- 94597,94598 ---- +*************** +*** 94616,94622 **** + -/ABCUVWKLMQR +- , +- + +- ) +- ( +- ' + ångström/WĚŻjŘMÝÔíčłĹĺTtYc¸˝l +--- 94614,94615 ---- +*************** +*** 94634,94642 **** + %-/KUŇÖmQSsi) +- % +- $ +- " +- !!! +- !! +- ! +- / - -- CHR HTML 35 -- CHR HTML ¤ ¤ -- CHR HTML ° ° -- CHR HTML ´ ´ -- CHR HTML ¸ ¸ -- CHR HTML Á Á -- CHR HTML   -- CHR HTML Ä Ä -- CHR HTML Ç Ç -- CHR HTML É É -- CHR HTML Ë Ë -- CHR HTML Í Í -- CHR HTML Î Î -- CHR HTML Ó Ó -- CHR HTML Ô Ô -- CHR HTML Ö Ö -- CHR HTML × × -- CHR HTML Ú Ú -- CHR HTML Ü Ü -- CHR HTML Ý Ý -- CHR HTML ß ß -- CHR HTML á á -- CHR HTML â â -- CHR HTML ä ä -- CHR HTML ç ç -- CHR HTML é é -- CHR HTML ë ë -- CHR HTML í í -- CHR HTML î î -- CHR HTML ó ó -- CHR HTML ô ô -- CHR HTML ö ö -- CHR HTML ÷ ÷ -- CHR HTML ú ú -- CHR HTML ü ü -- CHR HTML ý ý -- -- # character conversion table -- # (Prószéky-code -> latin-2) -- # not implemented yet -- -- CHR 123 20 -- CHR 123 a1 á -- CHR 123 e1 é -- CHR 123 e2 ë -- CHR 123 i1 í -- CHR 123 o1 ó -- CHR 123 o2 ö -- CHR 123 o3 ő -- CHR 123 u1 ú -- CHR 123 u2 ü -- CHR 123 u3 ű -- CHR 123 A1 Á -- CHR 123 E1 É -- CHR 123 E2 Ë -- CHR 123 I1 Í -- CHR 123 O1 Ó -- CHR 123 O2 Ö -- CHR 123 O3 Ő -- CHR 123 U1 Ú -- CHR 123 U2 Ü -- CHR 123 U3 Ű -- - SFX z Y 6 ---- 201,202 ---- -*************** -*** 17678,17681 **** - PFX D 0 leg . -- -- 1 -- ---- 17639 ---- +--- 94627 ---- diff --git a/runtime/spell/hu/main.aap b/runtime/spell/hu/main.aap --- a/runtime/spell/hu/main.aap +++ b/runtime/spell/hu/main.aap @@ -21,23 +21,30 @@ all: $SPELLDIR/hu.iso-8859-2.spl $SPELLD $SPELLDIR/hu.cp1250.spl : $FILES :sys $VIM -u NONE -e -c "set enc=cp1250" -c "mkspell! $SPELLDIR/hu hu_HU" -c q -../README_hu.txt: README_hu_HU.txt - :copy $source $target +../README_hu.txt: $FILES + :sys $VIM -u NONE -e hu_HU.aff -c "1,/# ---/w! $target" -c q # -# Fetching the files from OpenOffice.org. +# Fetch the zip file from SourceForge. Version specific name... # -OODIR = http://ftp.services.openoffice.org/pub/OpenOffice.org/contrib/dictionaries -:attr {fetch = $OODIR/%file%} hu_HU.zip +OODIR = http://hunspell.sourceforge.net +zipname = hu_HU2.zip +:attr {fetch = $OODIR/%file%} $zipname # The files don't depend on the .zip file so that we can delete it. # Only download the zip file if the targets don't exist. # This is a bit tricky, since the file name includes the date. hu_HU.aff hu_HU.dic: {buildcheck=} :assertpkg unzip patch - :fetch hu_HU.zip - :sys $UNZIP hu_HU.zip - :delete hu_HU.zip + :fetch $zipname + :sys $UNZIP $zipname + :delete $zipname + + # Unfortunately the version number is in the file name... + :move hu_HU2.dic hu_HU.dic + :move hu_HU2.aff hu_HU.aff + :delete hu_HU2.history + @if not os.path.exists('hu_HU.orig.aff'): :copy hu_HU.aff hu_HU.orig.aff @if not os.path.exists('hu_HU.orig.dic'): @@ -55,27 +62,5 @@ diff: :sys {force} diff -a -C 1 hu_HU.orig.dic hu_HU.dic >>hu_HU.diff -# Check for updated OpenOffice spell files. When there are changes the -# ".new.aff" and ".new.dic" files are left behind for manual inspection. - -check: - :assertpkg unzip diff - :fetch hu_HU.zip - :mkdir tmp - :cd tmp - @try: - @import stat - :sys $UNZIP ../hu_HU.zip - :sys {force} diff ../hu_HU.orig.aff hu_HU.aff >d - @if os.stat('d')[stat.ST_SIZE] > 0: - :copy hu_HU.aff ../hu_HU.new.aff - :sys {force} diff ../hu_HU.orig.dic hu_HU.dic >d - @if os.stat('d')[stat.ST_SIZE] > 0: - :copy hu_HU.dic ../hu_HU.new.dic - @finally: - :cd .. - :delete {r}{f}{q} tmp - :delete hu_HU.zip - # vim: set sts=4 sw=4 : diff --git a/runtime/synmenu.vim b/runtime/synmenu.vim --- a/runtime/synmenu.vim +++ b/runtime/synmenu.vim @@ -242,15 +242,16 @@ an 50.60.330 &Syntax.L-Ma.Lynx\ config : an 50.60.350 &Syntax.L-Ma.M4 :cal SetSyn("m4") an 50.60.360 &Syntax.L-Ma.MaGic\ Point :cal SetSyn("mgp") an 50.60.370 &Syntax.L-Ma.Mail :cal SetSyn("mail") -an 50.60.380 &Syntax.L-Ma.Mailcap :cal SetSyn("mailcap") -an 50.60.390 &Syntax.L-Ma.Makefile :cal SetSyn("make") -an 50.60.400 &Syntax.L-Ma.MakeIndex :cal SetSyn("ist") -an 50.60.410 &Syntax.L-Ma.Man\ page :cal SetSyn("man") -an 50.60.420 &Syntax.L-Ma.Man\.conf :cal SetSyn("manconf") -an 50.60.430 &Syntax.L-Ma.Maple\ V :cal SetSyn("maple") -an 50.60.440 &Syntax.L-Ma.Mason :cal SetSyn("mason") -an 50.60.450 &Syntax.L-Ma.Mathematica :cal SetSyn("mma") -an 50.60.460 &Syntax.L-Ma.Matlab :cal SetSyn("matlab") +an 50.60.380 &Syntax.L-Ma.Mail\ aliases :cal SetSyn("mailaliases") +an 50.60.390 &Syntax.L-Ma.Mailcap :cal SetSyn("mailcap") +an 50.60.400 &Syntax.L-Ma.Makefile :cal SetSyn("make") +an 50.60.410 &Syntax.L-Ma.MakeIndex :cal SetSyn("ist") +an 50.60.420 &Syntax.L-Ma.Man\ page :cal SetSyn("man") +an 50.60.430 &Syntax.L-Ma.Man\.conf :cal SetSyn("manconf") +an 50.60.440 &Syntax.L-Ma.Maple\ V :cal SetSyn("maple") +an 50.60.450 &Syntax.L-Ma.Mason :cal SetSyn("mason") +an 50.60.460 &Syntax.L-Ma.Mathematica :cal SetSyn("mma") +an 50.60.470 &Syntax.L-Ma.Matlab :cal SetSyn("matlab") an 50.70.100 &Syntax.Me-NO.MEL\ (for\ Maya) :cal SetSyn("mel") an 50.70.110 &Syntax.Me-NO.Metafont :cal SetSyn("mf") an 50.70.120 &Syntax.Me-NO.MetaPost :cal SetSyn("mp") diff --git a/runtime/syntax/fetchmail.vim b/runtime/syntax/fetchmail.vim --- a/runtime/syntax/fetchmail.vim +++ b/runtime/syntax/fetchmail.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: fetchmail(1) RC File " Maintainer: Nikolai Weibull -" Latest Revision: 2005-06-27 +" Latest Revision: 2006-01-25 if exists("b:current_syntax") finish @@ -33,6 +33,7 @@ syn keyword fetchmailServerOpts containe \ interface monitor plugin plugout dns \ checkalias uidl interval netsec principal \ esmtpname esmtppassword + \ sslcertck sslcertpath sslfingerprint syn match fetchmailServerOpts contained '\ +" Latest Revision: 2006-01-14 + +if exists("b:current_syntax") + finish +endif + +let s:cpo_save = &cpo +set cpo&vim + +syn keyword mailaliasesTodo contained TODO FIXME XXX NOTE + +syn region mailaliasesComment display oneline start='^\s*#' end='$' + \ contains=mailaliasesTodo,@Spell + +syn match mailaliasesBegin display '^' + \ nextgroup=mailaliasesName, + \ mailaliasesComment + +syn match mailaliasesName contained '[0-9A-Za-z_-]\+' + \ nextgroup=mailaliasesColon + +syn region mailaliasesName contained oneline start=+"+ + \ skip=+\\\\\|\\"+ end=+"+ + \ nextgroup=mailaliasesColon + +syn match mailaliasesColon contained ':' + \ nextgroup=@mailaliasesValue + \ skipwhite skipnl + +syn cluster mailaliasesValue contains=mailaliasesValueAddress, + \ mailaliasesValueFile, + \ mailaliasesValueCommand, + \ mailaliasesValueInclude + +syn match mailaliasesValueAddress contained '[^ \t/|,]\+' + \ nextgroup=mailaliasesValueSep + \ skipwhite skipnl + +syn match mailaliasesValueFile contained '/[^,]*' + \ nextgroup=mailaliasesValueSep + \ skipwhite skipnl + +syn match mailaliasesValueCommand contained '|[^,]*' + \ nextgroup=mailaliasesValueSep + \ skipwhite skipnl + +syn match mailaliasesValueInclude contained ':include:[^,]*' + \ nextgroup=mailaliasesValueSep + \ skipwhite skipnl + +syn match mailaliasesValueSep contained ',' + \ nextgroup=@mailaliasesValue + \ skipwhite skipnl + +hi def link mailaliasesTodo Todo +hi def link mailaliasesComment Comment +hi def link mailaliasesName Identifier +hi def link mailaliasesColon Delimiter +hi def link mailaliasesValueAddress String +hi def link mailaliasesValueFile String +hi def link mailaliasesValueCommand String +hi def link mailaliasesValueInclude PreProc +hi def link mailaliasesValueSep Delimiter + +let b:current_syntax = "mailaliases" + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/runtime/syntax/rst.vim b/runtime/syntax/rst.vim --- a/runtime/syntax/rst.vim +++ b/runtime/syntax/rst.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: reStructuredText documentation format " Maintainer: Nikolai Weibull -" Latest Revision: 2005-07-04 +" Latest Revision: 2006-03-26 if exists("b:current_syntax") finish @@ -32,11 +32,11 @@ syn region rstTable tran \ contains=rstTableLines,@rstCruft syn match rstTableLines contained '^\s*[|+=-]\+$' syn region rstSimpleTable transparent - \ start='^\n\s*\%(=\+\s\+\)\%(=\+\s*\)\+$' + \ start='^\n\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' \ end='^$' \ contains=rstSimpleTableLines,@rstCruft syn match rstSimpleTableLines contained display - \ '^\s*\%(=\+\s\+\)\%(=\+\s*\)\+$' + \ '^\%(\s*\)\@>\%(\%(=\+\)\@>\%(\s\+\)\@>\)\%(\%(\%(=\+\)\@>\%(\s*\)\@>\)\+\)\@>$' syn region rstFootnote matchgroup=rstDirective \ start='^\.\. \[\%([#*]\|[0-9]\+\|#[a-z0-9_.-]\+\)\]\s' @@ -69,7 +69,7 @@ syn match rstHyperlinksLabel '\w\ syn match rstInternalTarget '_`\S\%([^`]*\S\)\=`' -syn match rstListItem '^:\%(\w\+\s*\)\+:' +syn match rstListItem '^:\w\+\%(\s\+\w\+\)*:' syn match rstListItem '^\s*[-*+]\s\+' syn sync minlines=50 diff --git a/src/Makefile b/src/Makefile --- a/src/Makefile +++ b/src/Makefile @@ -354,10 +354,14 @@ CClink = $(CC) # DARWIN - detecting Mac OS X # Uncomment this line when you want to compile a Unix version of Vim on # Darwin. None of the Mac specific options or files will be used. -# You can also change the architecture supported, default is to test for both. #CONF_OPT_DARWIN = --disable-darwin + +# Select the architecture supported. Default is to build for the current +# platform. Use "both" for a universal binary. That probably doesn't work +# when including Perl, Python, etc. #CONF_OPT_DARWIN = --with-mac-arch=i386 #CONF_OPT_DARWIN = --with-mac-arch=ppc +#CONF_OPT_DARWIN = --with-mac-arch=both # PERL # Uncomment this when you want to include the Perl interface. @@ -1318,6 +1322,8 @@ DEST_MAN_FR_U = $(DEST_MAN_TOP)/fr.UTF-8 DEST_MAN_IT = $(DEST_MAN_TOP)/it$(MAN1DIR) DEST_MAN_IT_I = $(DEST_MAN_TOP)/it.ISO8859-1$(MAN1DIR) DEST_MAN_IT_U = $(DEST_MAN_TOP)/it.UTF-8$(MAN1DIR) +DEST_MAN_PL = $(DEST_MAN_TOP)/pl.ISO8859-2$(MAN1DIR) +DEST_MAN_PL_U = $(DEST_MAN_TOP)/pl.UTF-8$(MAN1DIR) DEST_MAN_RU = $(DEST_MAN_TOP)/ru.KOI8-R$(MAN1DIR) DEST_MAN_RU_U = $(DEST_MAN_TOP)/ru.UTF-8$(MAN1DIR) @@ -1897,6 +1903,8 @@ install-tool-languages: -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT) "-it" $(INSTALLMANARGS) -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT_I) "-it" $(INSTALLMANARGS) -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT_U) "-it.UTF-8" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_PL) "-pl" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_PL_U) "-pl.UTF-8" $(INSTALLMANARGS) -$(SHELL) ./installman.sh xxd $(DEST_MAN_RU) "-ru" $(INSTALLMANARGS) -$(SHELL) ./installman.sh xxd $(DEST_MAN_RU_U) "-ru.UTF-8" $(INSTALLMANARGS) @@ -1908,6 +1916,8 @@ install-languages: languages $(DEST_LANG -$(SHELL) ./installman.sh install $(DEST_MAN_IT) "-it" $(INSTALLMANARGS) -$(SHELL) ./installman.sh install $(DEST_MAN_IT_I) "-it" $(INSTALLMANARGS) -$(SHELL) ./installman.sh install $(DEST_MAN_IT_U) "-it.UTF-8" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh install $(DEST_MAN_PL) "-pl" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh install $(DEST_MAN_PL_U) "-pl.UTF-8" $(INSTALLMANARGS) -$(SHELL) ./installman.sh install $(DEST_MAN_RU) "-ru" $(INSTALLMANARGS) -$(SHELL) ./installman.sh install $(DEST_MAN_RU_U) "-ru.UTF-8" $(INSTALLMANARGS) -$(SHELL) ./installml.sh install "$(GUI_MAN_TARGETS)" \ @@ -1923,6 +1933,10 @@ install-languages: languages $(DEST_LANG -$(SHELL) ./installml.sh install "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_IT_U) $(INSTALLMLARGS) -$(SHELL) ./installml.sh install "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL) $(INSTALLMLARGS) + -$(SHELL) ./installml.sh install "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL_U) $(INSTALLMLARGS) + -$(SHELL) ./installml.sh install "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU) $(INSTALLMLARGS) -$(SHELL) ./installml.sh install "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU_U) $(INSTALLMLARGS) @@ -2061,6 +2075,8 @@ uninstall_runtime: -$(SHELL) ./installman.sh uninstall $(DEST_MAN_IT) "" $(INSTALLMANARGS) -$(SHELL) ./installman.sh uninstall $(DEST_MAN_IT_I) "" $(INSTALLMANARGS) -$(SHELL) ./installman.sh uninstall $(DEST_MAN_IT_U) "" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh uninstall $(DEST_MAN_PL) "" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh uninstall $(DEST_MAN_PL_U) "" $(INSTALLMANARGS) -$(SHELL) ./installman.sh uninstall $(DEST_MAN_RU) "" $(INSTALLMANARGS) -$(SHELL) ./installman.sh uninstall $(DEST_MAN_RU_U) "" $(INSTALLMANARGS) -$(SHELL) ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ @@ -2078,12 +2094,17 @@ uninstall_runtime: -$(SHELL) ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_IT_U) $(INSTALLMLARGS) -$(SHELL) ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL) $(INSTALLMLARGS) + -$(SHELL) ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL_U) $(INSTALLMLARGS) + -$(SHELL) ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU) $(INSTALLMLARGS) -$(SHELL) ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU_U) $(INSTALLMLARGS) -rm -f $(DEST_MAN)/xxd.1 -rm -f $(DEST_MAN_FR)/xxd.1 $(DEST_MAN_FR_I)/xxd.1 $(DEST_MAN_FR_U)/xxd.1 -rm -f $(DEST_MAN_IT)/xxd.1 $(DEST_MAN_IT_I)/xxd.1 $(DEST_MAN_IT_U)/xxd.1 + -rm -f $(DEST_MAN_PL)/xxd.1 $(DEST_MAN_PL_U)/xxd.1 -rm -f $(DEST_MAN_RU)/xxd.1 $(DEST_MAN_RU_U)/xxd.1 -rm -f $(DEST_HELP)/*.txt $(DEST_HELP)/tags $(DEST_HELP)/*.pl -rm -f $(DEST_HELP)/*.??x $(DEST_HELP)/tags-?? diff --git a/src/auto/configure b/src/auto/configure --- a/src/auto/configure +++ b/src/auto/configure @@ -876,7 +876,7 @@ Optional Features: Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) - --with-mac-arch=ARCH intel, ppc or both + --with-mac-arch=ARCH current, intel, ppc or both --with-vim-name=NAME what to call the Vim executable --with-ex-name=NAME what to call the Ex executable --with-view-name=NAME what to call the View executable @@ -2874,7 +2874,7 @@ if test "${with_mac_arch+set}" = set; th MACARCH="$withval"; echo "$as_me:$LINENO: result: $MACARCH" >&5 echo "${ECHO_T}$MACARCH" >&6 else - MACARCH="both"; echo "$as_me:$LINENO: result: defaulting to $MACARCH" >&5 + MACARCH="current"; echo "$as_me:$LINENO: result: defaulting to $MACARCH" >&5 echo "${ECHO_T}defaulting to $MACARCH" >&6 fi; diff --git a/src/buffer.c b/src/buffer.c --- a/src/buffer.c +++ b/src/buffer.c @@ -3707,7 +3707,7 @@ build_stl_str_hl(wp, out, outlen, fmt, u itemisflag = TRUE; if (wp->w_buffer->b_help) str = (char_u *)((opt == STL_HELPFLAG_ALT) ? ",HLP" - : _("[help]")); + : _("[Help]")); break; #ifdef FEAT_AUTOCMD @@ -4975,7 +4975,7 @@ buf_spname(buf) if (win != NULL && win->w_llist_ref != NULL) return _("[Location List]"); else - return _("[Error List]"); + return _("[Quickfix List]"); } #endif #ifdef FEAT_QUICKFIX diff --git a/src/configure.in b/src/configure.in --- a/src/configure.in +++ b/src/configure.in @@ -103,9 +103,9 @@ if test "`(uname) 2>/dev/null`" = Darwin fi AC_MSG_CHECKING(--with-mac-arch argument) - AC_ARG_WITH(mac-arch, [ --with-mac-arch=ARCH intel, ppc or both], + AC_ARG_WITH(mac-arch, [ --with-mac-arch=ARCH current, intel, ppc or both], MACARCH="$withval"; AC_MSG_RESULT($MACARCH), - MACARCH="both"; AC_MSG_RESULT(defaulting to $MACARCH)) + MACARCH="current"; AC_MSG_RESULT(defaulting to $MACARCH)) if test "x$MACARCH" = "xboth"; then AC_MSG_CHECKING(for 10.4 universal SDK) diff --git a/src/eval.c b/src/eval.c --- a/src/eval.c +++ b/src/eval.c @@ -8964,42 +8964,54 @@ findfilendir(argvars, rettv, dir) char_u pathbuf[NUMBUFLEN]; int count = 1; int first = TRUE; - + int error = FALSE; +#endif + + rettv->vval.v_string = NULL; + rettv->v_type = VAR_STRING; + +#ifdef FEAT_SEARCHPATH fname = get_tv_string(&argvars[0]); if (argvars[1].v_type != VAR_UNKNOWN) { p = get_tv_string_buf_chk(&argvars[1], pathbuf); if (p == NULL) - count = -1; /* error */ + error = TRUE; else { if (*p != NUL) path = p; if (argvars[2].v_type != VAR_UNKNOWN) - count = get_tv_number_chk(&argvars[2], NULL); /* -1: error */ - } - } - - if (*fname != NUL && count >= 0) + count = get_tv_number_chk(&argvars[2], &error); + } + } + + if (count < 0 && rettv_list_alloc(rettv) == FAIL) + error = TRUE; + + if (*fname != NUL && !error) { do { - vim_free(fresult); + if (rettv->v_type == VAR_STRING) + vim_free(fresult); fresult = find_file_in_path_option(first ? fname : NULL, first ? (int)STRLEN(fname) : 0, 0, first, path, dir, NULL, dir ? (char_u *)"" : curbuf->b_p_sua); first = FALSE; - } while (--count > 0 && fresult != NULL); - } - - rettv->vval.v_string = fresult; -#else - rettv->vval.v_string = NULL; -#endif - rettv->v_type = VAR_STRING; + + if (fresult != NULL && rettv->v_type == VAR_LIST) + list_append_string(rettv->vval.v_list, fresult, -1); + + } while ((rettv->v_type == VAR_LIST || --count > 0) && fresult != NULL); + } + + if (rettv->v_type == VAR_STRING) + rettv->vval.v_string = fresult; +#endif } static void filter_map __ARGS((typval_T *argvars, typval_T *rettv, int map)); @@ -18673,8 +18685,9 @@ trans_function_name(pp, skip, flags, fdp else if (lead > 0) { lead = 3; - if (eval_fname_sid(*pp)) /* If it's "" */ - { + if (eval_fname_sid(lv.ll_exp_name != NULL ? lv.ll_exp_name : *pp)) + { + /* It's "s:" or "" */ if (current_SID <= 0) { EMSG(_(e_usingsid)); diff --git a/src/main.aap b/src/main.aap --- a/src/main.aap +++ b/src/main.aap @@ -658,6 +658,8 @@ DEST_MAN_FR_U = $(DEST_MAN_TOP)/fr.UTF-8 DEST_MAN_IT = $(DEST_MAN_TOP)/it$(MAN1DIR) DEST_MAN_IT_I = $(DEST_MAN_TOP)/it.ISO8859-1$(MAN1DIR) DEST_MAN_IT_U = $(DEST_MAN_TOP)/it.UTF-8$(MAN1DIR) +DEST_MAN_PL = $(DEST_MAN_TOP)/pl.ISO8859-2$(MAN1DIR) +DEST_MAN_PL_U = $(DEST_MAN_TOP)/pl.UTF-8$(MAN1DIR) DEST_MAN_RU = $(DEST_MAN_TOP)/ru.KOI8-R$(MAN1DIR) DEST_MAN_RU_U = $(DEST_MAN_TOP)/ru.UTF-8$(MAN1DIR) @@ -667,7 +669,9 @@ DEST_MAN_RU_U = $(DEST_MAN_TOP)/ru.UTF-8 $DEST_COMP $DEST_KMAP $DEST_MACRO $DEST_TOOLS $DEST_TUTOR $DEST_SCRIPT $DEST_PRINT $DEST_MAN $DEST_SPELL $DEST_MAN_FR $DEST_MAN_FR_I $DEST_MAN_FR_U $DEST_MAN_IT - $DEST_MAN_IT_I $DEST_MAN_IT_U $DEST_MAN_RU $DEST_MAN_RU_U + $DEST_MAN_IT_I $DEST_MAN_IT_U + $DEST_MAN_PL $DEST_MAN_PL_U + $DEST_MAN_RU $DEST_MAN_RU_U # # I N S T A L L @@ -893,6 +897,8 @@ install-tool-languages: :sys ./installman.sh xxd $(DEST_MAN_IT) "-it" $(INSTALLMANARGS) :sys ./installman.sh xxd $(DEST_MAN_IT_I) "-it" $(INSTALLMANARGS) :sys ./installman.sh xxd $(DEST_MAN_IT_U) "-it.UTF-8" $(INSTALLMANARGS) + :sys ./installman.sh xxd $(DEST_MAN_PL) "-pl" $(INSTALLMANARGS) + :sys ./installman.sh xxd $(DEST_MAN_PL_U) "-pl.UTF-8" $(INSTALLMANARGS) :sys ./installman.sh xxd $(DEST_MAN_RU) "-ru" $(INSTALLMANARGS) :sys ./installman.sh xxd $(DEST_MAN_RU_U) "-ru.UTF-8" $(INSTALLMANARGS) @@ -904,6 +910,8 @@ install-languages {virtual}{force}: lang :sys ./installman.sh install $(DEST_MAN_IT) "-it" $(INSTALLMANARGS) :sys ./installman.sh install $(DEST_MAN_IT_I) "-it" $(INSTALLMANARGS) :sys ./installman.sh install $(DEST_MAN_IT_U) "-it.UTF-8" $(INSTALLMANARGS) + :sys ./installman.sh install $(DEST_MAN_PL) "-pl" $(INSTALLMANARGS) + :sys ./installman.sh install $(DEST_MAN_PL_U) "-pl.UTF-8" $(INSTALLMANARGS) :sys ./installman.sh install $(DEST_MAN_RU) "-ru" $(INSTALLMANARGS) :sys ./installman.sh install $(DEST_MAN_RU_U) "-ru.UTF-8" $(INSTALLMANARGS) :sys ./installml.sh install "$(GUI_MAN_TARGETS)" \ @@ -919,6 +927,10 @@ install-languages {virtual}{force}: lang :sys ./installml.sh install "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_IT_U) $(INSTALLMLARGS) :sys ./installml.sh install "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL) $(INSTALLMLARGS) + :sys ./installml.sh install "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL_U) $(INSTALLMLARGS) + :sys ./installml.sh install "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU) $(INSTALLMLARGS) :sys ./installml.sh install "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU_U) $(INSTALLMLARGS) @@ -1049,6 +1061,8 @@ uninstall_runtime {virtual}{force}: :sys ./installman.sh uninstall $(DEST_MAN_IT) "" $(INSTALLMANARGS) :sys ./installman.sh uninstall $(DEST_MAN_IT_I) "" $(INSTALLMANARGS) :sys ./installman.sh uninstall $(DEST_MAN_IT_U) "" $(INSTALLMANARGS) + :sys ./installman.sh uninstall $(DEST_MAN_PL) "" $(INSTALLMANARGS) + :sys ./installman.sh uninstall $(DEST_MAN_PL_U) "" $(INSTALLMANARGS) :sys ./installman.sh uninstall $(DEST_MAN_RU) "" $(INSTALLMANARGS) :sys ./installman.sh uninstall $(DEST_MAN_RU_U) "" $(INSTALLMANARGS) :sys ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ @@ -1066,12 +1080,17 @@ uninstall_runtime {virtual}{force}: :sys ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_IT_U) $(INSTALLMLARGS) :sys ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL) $(INSTALLMLARGS) + :sys ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ + $(DEST_MAN_PL_U) $(INSTALLMLARGS) + :sys ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU) $(INSTALLMLARGS) :sys ./installml.sh uninstall "$(GUI_MAN_TARGETS)" \ $(DEST_MAN_RU_U) $(INSTALLMLARGS) :del {force} $DEST_MAN/xxd.1 :del {force} $(DEST_MAN_FR)/xxd.1 $(DEST_MAN_FR_I)/xxd.1 $(DEST_MAN_FR_U)/xxd.1 :del {force} $(DEST_MAN_IT)/xxd.1 $(DEST_MAN_IT_I)/xxd.1 $(DEST_MAN_IT_U)/xxd.1 + :del {force} $(DEST_MAN_PL)/xxd.1 $(DEST_MAN_PL_U)/xxd.1 :del {force} $(DEST_MAN_RU)/xxd.1 $(DEST_MAN_RU_U)/xxd.1 :del {force} $DEST_HELP/*.txt $DEST_HELP/tags $DEST_HELP/*.pl diff --git a/src/screen.c b/src/screen.c --- a/src/screen.c +++ b/src/screen.c @@ -5528,7 +5528,7 @@ win_redr_status(wp) *(p + len++) = ' '; if (wp->w_buffer->b_help) { - STRCPY(p + len, _("[help]")); + STRCPY(p + len, _("[Help]")); len += (int)STRLEN(p + len); } #ifdef FEAT_QUICKFIX diff --git a/src/spell.c b/src/spell.c --- a/src/spell.c +++ b/src/spell.c @@ -185,14 +185,21 @@ * N bytes String with sequences of similar characters, * separated by slashes. * - * sectionID == SN_COMPOUND: + * sectionID == SN_COMPOUND: + * ... * 1 byte Maximum nr of words in compound word. * 1 byte Minimal word length for compounding. * 1 byte Maximum nr of syllables in compound word. + * 2 bytes COMP_ flags. + * 2 bytes number of following * N bytes Flags from COMPOUNDRULE items, separated by * slashes. * - * sectionID == SN_NOBREAK: (empty, its presence is enough) + * : + * 1 byte length of + * N bytes end or begin chars from CHECKCOMPOUNDPATTERN + * + * sectionID == SN_NOBREAK: (empty, its presence is what matters) * * sectionID == SN_SYLLABLE: * N bytes String from SYLLABLE item. @@ -248,6 +255,7 @@ * WF_HAS_AFF >> 8 word includes affix * WF_NEEDCOMP >> 8 word only valid in compound * WF_NOSUGGEST >> 8 word not used for suggestions + * WF_COMPROOT >> 8 word already a compound * * 1 byte bitmask of: * WFP_RARE rare prefix @@ -336,6 +344,7 @@ typedef long idx_T; #define WF_HAS_AFF 0x0100 /* word includes affix */ #define WF_NEEDCOMP 0x0200 /* word only valid in compound */ #define WF_NOSUGGEST 0x0400 /* word not to be suggested */ +#define WF_COMPROOT 0x0800 /* already compounded word, COMPOUNDROOT */ /* only used for su_badflags */ #define WF_MIXCAP 0x20 /* mix of upper and lower case: macaRONI */ @@ -356,6 +365,12 @@ typedef long idx_T; #define WF_PFX_UP (WFP_UP << 24) /* in sl_pidxs: flag for to-upper * postponed prefix */ +/* flags for */ +#define COMP_CHECKDUP 1 /* CHECKCOMPOUNDDUP */ +#define COMP_CHECKREP 2 /* CHECKCOMPOUNDREP */ +#define COMP_CHECKCASE 4 /* CHECKCOMPOUNDCASE */ +#define COMP_CHECKTRIPLE 8 /* CHECKCOMPOUNDTRIPLE */ + /* Special byte values for . Some are only used in the tree for * postponed prefixes, some only in the other trees. This is a bit messy... */ #define BY_NOFLAGS 0 /* end of word without flags or region; for @@ -443,9 +458,11 @@ struct slang_S hashtab_T sl_wordcount; /* hashtable with word count, wordcount_T */ - int sl_compmax; /* COMPOUNDMAX (default: MAXWLEN) */ + int sl_compmax; /* COMPOUNDWORDMAX (default: MAXWLEN) */ int sl_compminlen; /* COMPOUNDMIN (default: 0) */ int sl_compsylmax; /* COMPOUNDSYLMAX (default: MAXWLEN) */ + int sl_compoptions; /* COMP_* flags */ + garray_T sl_comppat; /* CHECKCOMPOUNDPATTERN items */ regprog_T *sl_compprog; /* COMPOUNDRULE turned into a regexp progrm * (NULL when no compounding) */ char_u *sl_compstartflags; /* flags for first compound word */ @@ -693,6 +710,7 @@ typedef struct matchinf_S int mi_compoff; /* start of following word offset */ char_u mi_compflags[MAXWLEN]; /* flags for compound words used */ int mi_complen; /* nr of compound words used */ + int mi_compextra; /* nr of COMPOUNDROOT words */ /* others */ int mi_result; /* result so far: SP_BAD, SP_OK, etc. */ @@ -1475,9 +1493,10 @@ find_word(mip, mode) continue; #endif - /* Limit the number of compound words to COMPOUNDMAX if no + /* Limit the number of compound words to COMPOUNDWORDMAX if no * maximum for syllables is specified. */ - if (!word_ends && mip->mi_complen + 2 > slang->sl_compmax + if (!word_ends && mip->mi_complen + mip->mi_compextra + 2 + > slang->sl_compmax && slang->sl_compsylmax == MAXWLEN) continue; @@ -1589,6 +1608,8 @@ find_word(mip, mode) #endif c = mip->mi_compoff; ++mip->mi_complen; + if (flags & WF_COMPROOT) + ++mip->mi_compextra; /* For NOBREAK we need to try all NOBREAK languages, at least * to find the ".add" file(s). */ @@ -1625,6 +1646,8 @@ find_word(mip, mode) break; } --mip->mi_complen; + if (flags & WF_COMPROOT) + --mip->mi_compextra; mip->mi_lp = save_lp; if (slang->sl_nobreak) @@ -1726,7 +1749,7 @@ can_compound(slang, word, flags) /* Count the number of syllables. This may be slow, do it last. If there * are too many syllables AND the number of compound words is above - * COMPOUNDMAX then compounding is not allowed. */ + * COMPOUNDWORDMAX then compounding is not allowed. */ if (slang->sl_compsylmax < MAXWLEN && count_syllables(slang, word) > slang->sl_compsylmax) return (int)STRLEN(flags) < slang->sl_compmax; @@ -2465,6 +2488,8 @@ slang_clear(lp) lp->sl_syllable = NULL; ga_clear(&lp->sl_syl_items); + ga_clear_strings(&lp->sl_comppat); + hash_clear_all(&lp->sl_wordcount, WC_KEY_OFF); hash_init(&lp->sl_wordcount); @@ -3371,7 +3396,7 @@ read_sofo_section(fd, slang) /* * Read the compound section from the .spl file: - * + * * Returns SP_*ERROR flags. */ static int @@ -3387,6 +3412,8 @@ read_compound(fd, slang, len) char_u *pp; char_u *cp; char_u *ap; + int cnt; + garray_T *gap; if (todo < 2) return SP_FORMERROR; /* need at least two bytes */ @@ -3409,6 +3436,32 @@ read_compound(fd, slang, len) c = MAXWLEN; slang->sl_compsylmax = c; + c = getc(fd); /* */ + if (c != 0) + ungetc(c, fd); /* be backwards compatible with Vim 7.0b */ + else + { + --todo; + c = getc(fd); /* only use the lower byte for now */ + --todo; + slang->sl_compoptions = c; + + gap = &slang->sl_comppat; + c = get2c(fd); /* */ + todo -= 2; + ga_init2(gap, sizeof(char_u *), c); + if (ga_grow(gap, c) == OK) + while (--c >= 0) + { + ((char_u **)(gap->ga_data))[gap->ga_len++] = + read_cnt_string(fd, 1, &cnt); + /* */ + if (cnt < 0) + return cnt; + todo -= cnt + 2; + } + } + /* Turn the COMPOUNDRULE items into a regexp pattern: * "a[bc]/a*b+" -> "^\(a[bc]\|a*b\+\)$". * Inserting backslashes may double the length, "^\(\)$" is 7 bytes. @@ -4588,8 +4641,12 @@ typedef struct afffile_S unsigned af_bad; /* BAD ID for banned word */ unsigned af_needaffix; /* NEEDAFFIX ID */ unsigned af_needcomp; /* NEEDCOMPOUND ID */ + unsigned af_comproot; /* COMPOUNDROOT ID */ + unsigned af_compforbid; /* COMPOUNDFORBIDFLAG ID */ + unsigned af_comppermit; /* COMPOUNDPERMITFLAG ID */ unsigned af_nosuggest; /* NOSUGGEST ID */ - int af_pfxpostpone; /* postpone prefixes without chop string */ + int af_pfxpostpone; /* postpone prefixes without chop string and + without flags */ hashtab_T af_pref; /* hashtable for prefixes, affheader_T */ hashtab_T af_suff; /* hashtable for suffixes, affheader_T */ hashtab_T af_comp; /* hashtable for compound flags, compitem_T */ @@ -4607,9 +4664,9 @@ struct affentry_S affentry_T *ae_next; /* next affix with same name/number */ char_u *ae_chop; /* text to chop off basic word (can be NULL) */ char_u *ae_add; /* text to add to basic word (can be NULL) */ + char_u *ae_flags; /* flags on the affix (can be NULL) */ char_u *ae_cond; /* condition (NULL for ".") */ regprog_T *ae_prog; /* regexp program for ae_cond or NULL */ - char_u ae_rare; /* rare affix */ char_u ae_nocomp; /* word with affix not compoundable */ }; @@ -4757,6 +4814,9 @@ typedef struct spellinfo_S int si_compmax; /* max nr of words for compounding */ int si_compminlen; /* minimal length for compounding */ int si_compsylmax; /* max nr of syllables for compounding */ + int si_compoptions; /* COMP_ flags */ + garray_T si_comppat; /* CHECKCOMPOUNDPATTERN items, each stored as + a string */ char_u *si_compflags; /* flags used for compounding */ char_u si_nobreak; /* NOBREAK */ char_u *si_syllable; /* syllable string */ @@ -4960,7 +5020,8 @@ spell_read_aff(spin, fname) int l; int compminlen = 0; /* COMPOUNDMIN value */ int compsylmax = 0; /* COMPOUNDSYLMAX value */ - int compmax = 0; /* COMPOUNDMAX value */ + int compoptions = 0; /* COMP_ flags */ + int compmax = 0; /* COMPOUNDWORDMAX value */ char_u *compflags = NULL; /* COMPOUNDFLAG and COMPOUNDRULE concatenated */ char_u *midword = NULL; /* MIDWORD value */ @@ -5096,6 +5157,7 @@ spell_read_aff(spin, fname) || aff->af_bad != 0 || aff->af_needaffix != 0 || aff->af_needcomp != 0 + || aff->af_comproot != 0 || aff->af_nosuggest != 0 || compflags != NULL || aff->af_suff.ht_used > 0 @@ -5171,6 +5233,24 @@ spell_read_aff(spin, fname) aff->af_needcomp = affitem2flag(aff->af_flagtype, items[1], fname, lnum); } + else if (STRCMP(items[0], "COMPOUNDROOT") == 0 && itemcnt == 2 + && aff->af_comproot == 0) + { + aff->af_comproot = affitem2flag(aff->af_flagtype, items[1], + fname, lnum); + } + else if (STRCMP(items[0], "COMPOUNDFORBIDFLAG") == 0 + && itemcnt == 2 && aff->af_compforbid == 0) + { + aff->af_compforbid = affitem2flag(aff->af_flagtype, items[1], + fname, lnum); + } + else if (STRCMP(items[0], "COMPOUNDPERMITFLAG") == 0 + && itemcnt == 2 && aff->af_comppermit == 0) + { + aff->af_comppermit = affitem2flag(aff->af_flagtype, items[1], + fname, lnum); + } else if (STRCMP(items[0], "COMPOUNDFLAG") == 0 && itemcnt == 2 && compflags == NULL) { @@ -5203,12 +5283,12 @@ spell_read_aff(spin, fname) compflags = p; } } - else if (STRCMP(items[0], "COMPOUNDMAX") == 0 && itemcnt == 2 + else if (STRCMP(items[0], "COMPOUNDWORDMAX") == 0 && itemcnt == 2 && compmax == 0) { compmax = atoi((char *)items[1]); if (compmax == 0) - smsg((char_u *)_("Wrong COMPOUNDMAX value in %s line %d: %s"), + smsg((char_u *)_("Wrong COMPOUNDWORDMAX value in %s line %d: %s"), fname, lnum, items[1]); } else if (STRCMP(items[0], "COMPOUNDMIN") == 0 && itemcnt == 2 @@ -5227,6 +5307,50 @@ spell_read_aff(spin, fname) smsg((char_u *)_("Wrong COMPOUNDSYLMAX value in %s line %d: %s"), fname, lnum, items[1]); } + else if (STRCMP(items[0], "CHECKCOMPOUNDDUP") == 0 && itemcnt == 1) + { + compoptions |= COMP_CHECKDUP; + } + else if (STRCMP(items[0], "CHECKCOMPOUNDREP") == 0 && itemcnt == 1) + { + compoptions |= COMP_CHECKREP; + } + else if (STRCMP(items[0], "CHECKCOMPOUNDCASE") == 0 && itemcnt == 1) + { + compoptions |= COMP_CHECKCASE; + } + else if (STRCMP(items[0], "CHECKCOMPOUNDTRIPLE") == 0 + && itemcnt == 1) + { + compoptions |= COMP_CHECKTRIPLE; + } + else if (STRCMP(items[0], "CHECKCOMPOUNDPATTERN") == 0 + && itemcnt == 2) + { + if (atoi((char *)items[1]) == 0) + smsg((char_u *)_("Wrong CHECKCOMPOUNDPATTERN value in %s line %d: %s"), + fname, lnum, items[1]); + } + else if (STRCMP(items[0], "CHECKCOMPOUNDPATTERN") == 0 + && itemcnt == 3) + { + garray_T *gap = &spin->si_comppat; + int i; + + /* Only add the couple if it isn't already there. */ + for (i = 0; i < gap->ga_len - 1; i += 2) + if (STRCMP(((char_u **)(gap->ga_data))[i], items[1]) == 0 + && STRCMP(((char_u **)(gap->ga_data))[i + 1], + items[2]) == 0) + break; + if (i >= gap->ga_len && ga_grow(gap, 2) == OK) + { + ((char_u **)(gap->ga_data))[gap->ga_len++] + = getroom_save(spin, items[1]); + ((char_u **)(gap->ga_data))[gap->ga_len++] + = getroom_save(spin, items[2]); + } + } else if (STRCMP(items[0], "SYLLABLE") == 0 && itemcnt == 2 && syllable == NULL) { @@ -5293,7 +5417,8 @@ spell_read_aff(spin, fname) || cur_aff->ah_flag == aff->af_keepcase || cur_aff->ah_flag == aff->af_needaffix || cur_aff->ah_flag == aff->af_nosuggest - || cur_aff->ah_flag == aff->af_needcomp) + || cur_aff->ah_flag == aff->af_needcomp + || cur_aff->ah_flag == aff->af_comproot) smsg((char_u *)_("Affix also used for BAD/RARE/KEEPCASE/NEEDAFFIX/NEEDCOMPOUND/NOSUGGEST in %s line %d: %s"), fname, lnum, items[1]); STRCPY(cur_aff->ah_key, items[1]); @@ -5315,8 +5440,7 @@ spell_read_aff(spin, fname) /* Myspell allows extra text after the item, but that might * mean mistakes go unnoticed. Require a comment-starter. */ if (itemcnt > lasti && *items[lasti] != '#') - smsg((char_u *)_("Trailing text in %s line %d: %s"), - fname, lnum, items[4]); + smsg((char_u *)_(e_afftrailing), fname, lnum, items[lasti]); if (STRCMP(items[2], "Y") != 0 && STRCMP(items[2], "N") != 0) smsg((char_u *)_("Expected Y or N in %s line %d: %s"), @@ -5350,31 +5474,16 @@ spell_read_aff(spin, fname) && itemcnt >= 5) { affentry_T *aff_entry; - int rare = FALSE; int nocomp = FALSE; int upper = FALSE; int lasti = 5; - /* Check for "rare" and "nocomp" after the other info. */ - while (itemcnt > lasti) - { - if (!rare && STRICMP(items[lasti], "rare") == 0) - { - rare = TRUE; - ++lasti; - } - else if (!nocomp && STRICMP(items[lasti], "nocomp") == 0) - { - nocomp = TRUE; - ++lasti; - } - else - break; - } - /* Myspell allows extra text after the item, but that might - * mean mistakes go unnoticed. Require a comment-starter. */ - if (itemcnt > lasti && *items[lasti] != '#') + * mean mistakes go unnoticed. Require a comment-starter. + * Hunspell uses a "-" item. */ + if (itemcnt > lasti && *items[lasti] != '#' + && (STRCMP(items[lasti], "-") != 0 + || itemcnt != lasti + 1)) smsg((char_u *)_(e_afftrailing), fname, lnum, items[lasti]); /* New item for an affix letter. */ @@ -5383,14 +5492,20 @@ spell_read_aff(spin, fname) sizeof(affentry_T), TRUE); if (aff_entry == NULL) break; - aff_entry->ae_rare = rare; aff_entry->ae_nocomp = nocomp; if (STRCMP(items[2], "0") != 0) aff_entry->ae_chop = getroom_save(spin, items[2]); if (STRCMP(items[3], "0") != 0) + { aff_entry->ae_add = getroom_save(spin, items[3]); + /* Recognize flags on the affix: abcd/1234 */ + aff_entry->ae_flags = vim_strchr(aff_entry->ae_add, '/'); + if (aff_entry->ae_flags != NULL) + *aff_entry->ae_flags++ = NUL; + } + /* Don't use an affix entry with non-ASCII characters when * "spin->si_ascii" is TRUE. */ if (!spin->si_ascii || !(has_non_ascii(aff_entry->ae_chop) @@ -5416,8 +5531,10 @@ spell_read_aff(spin, fname) } /* For postponed prefixes we need an entry in si_prefcond - * for the condition. Use an existing one if possible. */ - if (*items[0] == 'P' && aff->af_pfxpostpone) + * for the condition. Use an existing one if possible. + * Can't be done for an affix with flags. */ + if (*items[0] == 'P' && aff->af_pfxpostpone + && aff_entry->ae_flags == NULL) { /* When the chop string is one lower-case letter and * the add string ends in the upper-case letter we set @@ -5480,7 +5597,8 @@ spell_read_aff(spin, fname) } } - if (aff_entry->ae_chop == NULL) + if (aff_entry->ae_chop == NULL + && aff_entry->ae_flags == NULL) { int idx; char_u **pp; @@ -5507,16 +5625,19 @@ spell_read_aff(spin, fname) aff_entry->ae_cond); } + if (aff_entry->ae_flags != NULL) + smsg((char_u *)_("Affix flags ignored when PFXPOSTPONE used in %s line %d: %s"), + fname, lnum, items[4]); + /* Add the prefix to the prefix tree. */ if (aff_entry->ae_add == NULL) p = (char_u *)""; else p = aff_entry->ae_add; + /* PFX_FLAGS is a negative number, so that * tree_add_word() knows this is the prefix tree. */ n = PFX_FLAGS; - if (rare) - n |= WFP_RARE; if (!cur_aff->ah_combine) n |= WFP_NC; if (upper) @@ -5709,7 +5830,7 @@ spell_read_aff(spin, fname) /* Use compound specifications of the .aff file for the spell info. */ if (compmax != 0) { - aff_check_number(spin->si_compmax, compmax, "COMPOUNDMAX"); + aff_check_number(spin->si_compmax, compmax, "COMPOUNDWORDMAX"); spin->si_compmax = compmax; } @@ -5727,6 +5848,12 @@ spell_read_aff(spin, fname) spin->si_compsylmax = compsylmax; } + if (compoptions != 0) + { + aff_check_number(spin->si_compoptions, compoptions, "COMPOUND options"); + spin->si_compoptions |= compoptions; + } + if (compflags != NULL) process_compflags(spin, aff, compflags); @@ -6327,6 +6454,9 @@ spell_read_dic(spin, fname, affile) if (affile->af_needcomp != 0 && flag_in_afflist( affile->af_flagtype, afflist, affile->af_needcomp)) flags |= WF_NEEDCOMP; + if (affile->af_comproot != 0 && flag_in_afflist( + affile->af_flagtype, afflist, affile->af_comproot)) + flags |= WF_COMPROOT; if (affile->af_nosuggest != 0 && flag_in_afflist( affile->af_flagtype, afflist, affile->af_nosuggest)) flags |= WF_NOSUGGEST; @@ -6512,11 +6642,12 @@ store_aff_word(spin, word, afflist, affi * Another requirement from Myspell is that the chop * string is shorter than the word itself. * For prefixes, when "PFXPOSTPONE" was used, only do - * prefixes with a chop string. */ + * prefixes with a chop string and/or flags. */ regmatch.regprog = ae->ae_prog; regmatch.rm_ic = FALSE; if ((xht != NULL || !affile->af_pfxpostpone - || ae->ae_chop != NULL) + || ae->ae_chop != NULL + || ae->ae_flags != NULL) && (ae->ae_chop == NULL || STRLEN(ae->ae_chop) < wordlen) && (ae->ae_prog == NULL @@ -6565,15 +6696,24 @@ store_aff_word(spin, word, afflist, affi } /* Obey the "rare" flag of the affix. */ - if (ae->ae_rare) + if (affile->af_rare != 0 + && ae->ae_flags != NULL + && flag_in_afflist( + affile->af_flagtype, ae->ae_flags, + affile->af_rare)) use_flags = flags | WF_RARE; else use_flags = flags; - /* Obey the "nocomp" flag of the affix: don't use the - * compound flags. */ + /* Obey a "COMPOUNDFORBID" flag of the affix: don't + * use the compound flags. */ use_pfxlist = pfxlist; - if (ae->ae_nocomp && pfxlist != NULL) + if (pfxlist != NULL + && affile->af_compforbid != 0 + && ae->ae_flags != NULL + && flag_in_afflist( + affile->af_flagtype, ae->ae_flags, + affile->af_compforbid)) { vim_strncpy(pfx_pfxlist, pfxlist, pfxlen); use_pfxlist = pfx_pfxlist; @@ -7803,12 +7943,26 @@ write_vim_spell(spin, fname) putc(0, fd); /* */ l = STRLEN(spin->si_compflags); - put_bytes(fd, (long_u)(l + 3), 4); /* */ + for (i = 0; i < spin->si_comppat.ga_len; ++i) + l += STRLEN(((char_u **)(spin->si_comppat.ga_data))[i]) + 1; + put_bytes(fd, (long_u)(l + 7), 4); /* */ + putc(spin->si_compmax, fd); /* */ putc(spin->si_compminlen, fd); /* */ putc(spin->si_compsylmax, fd); /* */ + putc(0, fd); /* for Vim 7.0b compatibility */ + putc(spin->si_compoptions, fd); /* */ + put_bytes(fd, (long_u)spin->si_comppat.ga_len, 2); + /* */ + for (i = 0; i < spin->si_comppat.ga_len; ++i) + { + p = ((char_u **)(spin->si_comppat.ga_data))[i]; + putc(STRLEN(p), fd); /* */ + fwrite(p, (size_t)STRLEN(p), (size_t)1, fd);/* */ + } /* */ - fwrite(spin->si_compflags, (size_t)l, (size_t)1, fd); + fwrite(spin->si_compflags, (size_t)STRLEN(spin->si_compflags), + (size_t)1, fd); } /* SN_NOBREAK: NOBREAK flag */ @@ -8611,6 +8765,7 @@ mkspell(fcount, fnames, ascii, overwrite ga_init2(&spin.si_repsal, (int)sizeof(fromto_T), 20); ga_init2(&spin.si_sal, (int)sizeof(fromto_T), 20); ga_init2(&spin.si_map, (int)sizeof(char_u), 100); + ga_init2(&spin.si_comppat, (int)sizeof(char_u *), 20); ga_init2(&spin.si_prefcond, (int)sizeof(char_u *), 50); hash_init(&spin.si_commonwords); spin.si_newcompID = 127; /* start compound ID at first maximum */ @@ -8804,6 +8959,7 @@ mkspell(fcount, fnames, ascii, overwrite ga_clear(&spin.si_repsal); ga_clear(&spin.si_sal); ga_clear(&spin.si_map); + ga_clear(&spin.si_comppat); ga_clear(&spin.si_prefcond); hash_clear_all(&spin.si_commonwords, 0); diff --git a/src/syntax.c b/src/syntax.c --- a/src/syntax.c +++ b/src/syntax.c @@ -6066,203 +6066,208 @@ syn_get_foldlevel(wp, lnum) * The #ifdefs are needed to reduce the amount of static data. Helps to make * the 16 bit DOS (museum) version compile. */ +#ifdef FEAT_GUI +# define CENT(a, b) b +#else +# define CENT(a, b) a +#endif static char *(highlight_init_both[]) = { - "ErrorMsg term=standout ctermbg=DarkRed ctermfg=White", - "IncSearch term=reverse cterm=reverse", - "ModeMsg term=bold cterm=bold", - "NonText term=bold ctermfg=Blue", - "StatusLine term=reverse,bold cterm=reverse,bold", - "StatusLineNC term=reverse cterm=reverse", + CENT("ErrorMsg term=standout ctermbg=DarkRed ctermfg=White", + "ErrorMsg term=standout ctermbg=DarkRed ctermfg=White guibg=Red guifg=White"), + CENT("IncSearch term=reverse cterm=reverse", + "IncSearch term=reverse cterm=reverse gui=reverse"), + CENT("ModeMsg term=bold cterm=bold", + "ModeMsg term=bold cterm=bold gui=bold"), + CENT("NonText term=bold ctermfg=Blue", + "NonText term=bold ctermfg=Blue gui=bold guifg=Blue"), + CENT("StatusLine term=reverse,bold cterm=reverse,bold", + "StatusLine term=reverse,bold cterm=reverse,bold gui=reverse,bold"), + CENT("StatusLineNC term=reverse cterm=reverse", + "StatusLineNC term=reverse cterm=reverse gui=reverse"), #ifdef FEAT_VERTSPLIT - "VertSplit term=reverse cterm=reverse", + CENT("VertSplit term=reverse cterm=reverse", + "VertSplit term=reverse cterm=reverse gui=reverse"), #endif #ifdef FEAT_CLIPBOARD - "VisualNOS term=underline,bold cterm=underline,bold", + CENT("VisualNOS term=underline,bold cterm=underline,bold", + "VisualNOS term=underline,bold cterm=underline,bold gui=underline,bold"), #endif #ifdef FEAT_DIFF - "DiffText term=reverse cterm=bold ctermbg=Red", + CENT("DiffText term=reverse cterm=bold ctermbg=Red", + "DiffText term=reverse cterm=bold ctermbg=Red gui=bold guibg=Red"), #endif #ifdef FEAT_INS_EXPAND - "PmenuThumb cterm=reverse", - "PmenuSbar ctermbg=Grey", + CENT("PmenuThumb cterm=reverse", + "PmenuThumb cterm=reverse gui=reverse"), + CENT("PmenuSbar ctermbg=Grey", + "PmenuSbar ctermbg=Grey guibg=Grey"), #endif #ifdef FEAT_WINDOWS - "TabLineSel term=bold cterm=bold", - "TabLineFill term=reverse cterm=reverse", + CENT("TabLineSel term=bold cterm=bold", + "TabLineSel term=bold cterm=bold gui=bold"), + CENT("TabLineFill term=reverse cterm=reverse", + "TabLineFill term=reverse cterm=reverse gui=reverse"), #endif #ifdef FEAT_AUTOCMD - "MatchParen term=reverse ctermbg=Cyan", + CENT("MatchParen term=reverse ctermbg=Cyan", + "MatchParen term=reverse ctermbg=Cyan guibg=Cyan"), #endif #ifdef FEAT_GUI - "ErrorMsg guibg=Red guifg=White", - "IncSearch gui=reverse", - "ModeMsg gui=bold", - "NonText gui=bold guifg=Blue", - "StatusLine gui=reverse,bold", - "StatusLineNC gui=reverse", - "VertSplit gui=reverse", - "VisualNOS gui=underline,bold", - "DiffText gui=bold guibg=Red", - "PmenuThumb gui=reverse", - "PmenuSbar guibg=Grey", - "TabLineSel gui=bold", - "TabLineFill gui=reverse", - "MatchParen guibg=Cyan", "Cursor guibg=fg guifg=bg", - "lCursor guibg=fg guifg=bg", /* should be different, but what? */ + "lCursor guibg=fg guifg=bg", /* should be different, but what? */ #endif NULL }; static char *(highlight_init_light[]) = { - "Directory term=bold ctermfg=DarkBlue", - "LineNr term=underline ctermfg=Brown", - "MoreMsg term=bold ctermfg=DarkGreen", - "Question term=standout ctermfg=DarkGreen", - "Search term=reverse ctermbg=Yellow ctermfg=NONE", + CENT("Directory term=bold ctermfg=DarkBlue", + "Directory term=bold ctermfg=DarkBlue guifg=Blue"), + CENT("LineNr term=underline ctermfg=Brown", + "LineNr term=underline ctermfg=Brown guifg=Brown"), + CENT("MoreMsg term=bold ctermfg=DarkGreen", + "MoreMsg term=bold ctermfg=DarkGreen gui=bold guifg=SeaGreen"), + CENT("Question term=standout ctermfg=DarkGreen", + "Question term=standout ctermfg=DarkGreen gui=bold guifg=SeaGreen"), + CENT("Search term=reverse ctermbg=Yellow ctermfg=NONE", + "Search term=reverse ctermbg=Yellow ctermfg=NONE guibg=Yellow guifg=NONE"), #ifdef FEAT_SPELL - "SpellBad term=reverse ctermbg=LightRed", - "SpellCap term=reverse ctermbg=LightBlue", - "SpellRare term=reverse ctermbg=LightMagenta", - "SpellLocal term=underline ctermbg=Cyan", + CENT("SpellBad term=reverse ctermbg=LightRed", + "SpellBad term=reverse ctermbg=LightRed guisp=Red gui=undercurl"), + CENT("SpellCap term=reverse ctermbg=LightBlue", + "SpellCap term=reverse ctermbg=LightBlue guisp=Blue gui=undercurl"), + CENT("SpellRare term=reverse ctermbg=LightMagenta", + "SpellRare term=reverse ctermbg=LightMagenta guisp=Magenta gui=undercurl"), + CENT("SpellLocal term=underline ctermbg=Cyan", + "SpellLocal term=underline ctermbg=Cyan guisp=DarkCyan gui=undercurl"), #endif #ifdef FEAT_INS_EXPAND - "Pmenu ctermbg=LightMagenta", - "PmenuSel ctermbg=LightGrey", + CENT("Pmenu ctermbg=LightMagenta", + "Pmenu ctermbg=LightMagenta guibg=LightMagenta"), + CENT("PmenuSel ctermbg=LightGrey", + "PmenuSel ctermbg=LightGrey guibg=Grey"), #endif - "SpecialKey term=bold ctermfg=DarkBlue", - "Title term=bold ctermfg=DarkMagenta", - "WarningMsg term=standout ctermfg=DarkRed", + CENT("SpecialKey term=bold ctermfg=DarkBlue", + "SpecialKey term=bold ctermfg=DarkBlue guifg=Blue"), + CENT("Title term=bold ctermfg=DarkMagenta", + "Title term=bold ctermfg=DarkMagenta gui=bold guifg=Magenta"), + CENT("WarningMsg term=standout ctermfg=DarkRed", + "WarningMsg term=standout ctermfg=DarkRed guifg=Red"), #ifdef FEAT_WILDMENU - "WildMenu term=standout ctermbg=Yellow ctermfg=Black", + CENT("WildMenu term=standout ctermbg=Yellow ctermfg=Black", + "WildMenu term=standout ctermbg=Yellow ctermfg=Black guibg=Yellow guifg=Black"), #endif #ifdef FEAT_FOLDING - "Folded term=standout ctermbg=Grey ctermfg=DarkBlue", - "FoldColumn term=standout ctermbg=Grey ctermfg=DarkBlue", + CENT("Folded term=standout ctermbg=Grey ctermfg=DarkBlue", + "Folded term=standout ctermbg=Grey ctermfg=DarkBlue guibg=LightGrey guifg=DarkBlue"), + CENT("FoldColumn term=standout ctermbg=Grey ctermfg=DarkBlue", + "FoldColumn term=standout ctermbg=Grey ctermfg=DarkBlue guibg=Grey guifg=DarkBlue"), #endif #ifdef FEAT_SIGNS - "SignColumn term=standout ctermbg=Grey ctermfg=DarkBlue", + CENT("SignColumn term=standout ctermbg=Grey ctermfg=DarkBlue", + "SignColumn term=standout ctermbg=Grey ctermfg=DarkBlue guibg=Grey guifg=DarkBlue"), #endif #ifdef FEAT_VISUAL - "Visual term=reverse ctermbg=Magenta", + CENT("Visual term=reverse ctermbg=Magenta", + "Visual term=reverse ctermbg=Magenta guibg=LightGrey"), #endif #ifdef FEAT_DIFF - "DiffAdd term=bold ctermbg=LightBlue", - "DiffChange term=bold ctermbg=LightMagenta", - "DiffDelete term=bold ctermfg=Blue ctermbg=LightCyan", + CENT("DiffAdd term=bold ctermbg=LightBlue", + "DiffAdd term=bold ctermbg=LightBlue guibg=LightBlue"), + CENT("DiffChange term=bold ctermbg=LightMagenta", + "DiffChange term=bold ctermbg=LightMagenta guibg=LightMagenta"), + CENT("DiffDelete term=bold ctermfg=Blue ctermbg=LightCyan", + "DiffDelete term=bold ctermfg=Blue ctermbg=LightCyan gui=bold guifg=Blue guibg=LightCyan"), #endif #ifdef FEAT_WINDOWS - "TabLine term=underline cterm=underline ctermfg=black ctermbg=LightGrey", + CENT("TabLine term=underline cterm=underline ctermfg=black ctermbg=LightGrey", + "TabLine term=underline cterm=underline ctermfg=black ctermbg=LightGrey gui=underline guibg=LightGrey"), #endif #ifdef FEAT_SYN_HL - "CursorColumn term=reverse ctermbg=LightGrey", - "CursorLine term=underline cterm=underline", + CENT("CursorColumn term=reverse ctermbg=LightGrey", + "CursorColumn term=reverse ctermbg=LightGrey guibg=LightGrey"), + CENT("CursorLine term=underline cterm=underline", + "CursorLine term=underline cterm=underline guibg=LightGrey"), #endif #ifdef FEAT_GUI - "Directory guifg=Blue", - "LineNr guifg=Brown", - "MoreMsg gui=bold guifg=SeaGreen", "Normal gui=NONE", - "Question gui=bold guifg=SeaGreen", - "Search guibg=Yellow guifg=NONE", - "SpellBad guisp=Red gui=undercurl", - "SpellCap guisp=Blue gui=undercurl", - "SpellRare guisp=Magenta gui=undercurl", - "SpellLocal guisp=DarkCyan gui=undercurl", - "Pmenu guibg=LightMagenta", - "PmenuSel guibg=Grey", - "SpecialKey guifg=Blue", - "Title gui=bold guifg=Magenta", - "WarningMsg guifg=Red", - "WildMenu guibg=Yellow guifg=Black", - "Folded guibg=LightGrey guifg=DarkBlue", - "FoldColumn guibg=Grey guifg=DarkBlue", - "SignColumn guibg=Grey guifg=DarkBlue", - "Visual guibg=LightGrey", - "DiffAdd guibg=LightBlue", - "DiffChange guibg=LightMagenta", - "DiffDelete gui=bold guifg=Blue guibg=LightCyan", - "TabLine gui=underline guibg=LightGrey", - "CursorColumn guibg=LightGrey", - "CursorLine guibg=LightGrey", #endif NULL }; static char *(highlight_init_dark[]) = { - "Directory term=bold ctermfg=LightCyan", - "LineNr term=underline ctermfg=Yellow", - "MoreMsg term=bold ctermfg=LightGreen", - "Question term=standout ctermfg=LightGreen", - "Search term=reverse ctermbg=Yellow ctermfg=Black", - "SpecialKey term=bold ctermfg=LightBlue", + CENT("Directory term=bold ctermfg=LightCyan", + "Directory term=bold ctermfg=LightCyan guifg=Cyan"), + CENT("LineNr term=underline ctermfg=Yellow", + "LineNr term=underline ctermfg=Yellow guifg=Yellow"), + CENT("MoreMsg term=bold ctermfg=LightGreen", + "MoreMsg term=bold ctermfg=LightGreen gui=bold guifg=SeaGreen"), + CENT("Question term=standout ctermfg=LightGreen", + "Question term=standout ctermfg=LightGreen gui=bold guifg=Green"), + CENT("Search term=reverse ctermbg=Yellow ctermfg=Black", + "Search term=reverse ctermbg=Yellow ctermfg=Black guibg=Yellow guifg=Black"), + CENT("SpecialKey term=bold ctermfg=LightBlue", + "SpecialKey term=bold ctermfg=LightBlue guifg=Cyan"), #ifdef FEAT_SPELL - "SpellBad term=reverse ctermbg=Red", - "SpellCap term=reverse ctermbg=Blue", - "SpellRare term=reverse ctermbg=Magenta", - "SpellLocal term=underline ctermbg=Cyan", + CENT("SpellBad term=reverse ctermbg=Red", + "SpellBad term=reverse ctermbg=Red guisp=Red gui=undercurl"), + CENT("SpellCap term=reverse ctermbg=Blue", + "SpellCap term=reverse ctermbg=Blue guisp=Blue gui=undercurl"), + CENT("SpellRare term=reverse ctermbg=Magenta", + "SpellRare term=reverse ctermbg=Magenta guisp=Magenta gui=undercurl"), + CENT("SpellLocal term=underline ctermbg=Cyan", + "SpellLocal term=underline ctermbg=Cyan guisp=Cyan gui=undercurl"), #endif #ifdef FEAT_INS_EXPAND - "Pmenu ctermbg=Magenta", - "PmenuSel ctermbg=DarkGrey", + CENT("Pmenu ctermbg=Magenta", + "Pmenu ctermbg=Magenta guibg=Magenta"), + CENT("PmenuSel ctermbg=DarkGrey", + "PmenuSel ctermbg=DarkGrey guibg=DarkGrey"), #endif - "Title term=bold ctermfg=LightMagenta", - "WarningMsg term=standout ctermfg=LightRed", + CENT("Title term=bold ctermfg=LightMagenta", + "Title term=bold ctermfg=LightMagenta gui=bold guifg=Magenta"), + CENT("WarningMsg term=standout ctermfg=LightRed", + "WarningMsg term=standout ctermfg=LightRed guifg=Red"), #ifdef FEAT_WILDMENU - "WildMenu term=standout ctermbg=Yellow ctermfg=Black", + CENT("WildMenu term=standout ctermbg=Yellow ctermfg=Black", + "WildMenu term=standout ctermbg=Yellow ctermfg=Black guibg=Yellow guifg=Black"), #endif #ifdef FEAT_FOLDING - "Folded term=standout ctermbg=DarkGrey ctermfg=Cyan", - "FoldColumn term=standout ctermbg=DarkGrey ctermfg=Cyan", + CENT("Folded term=standout ctermbg=DarkGrey ctermfg=Cyan", + "Folded term=standout ctermbg=DarkGrey ctermfg=Cyan guibg=DarkGrey guifg=Cyan"), + CENT("FoldColumn term=standout ctermbg=DarkGrey ctermfg=Cyan", + "FoldColumn term=standout ctermbg=DarkGrey ctermfg=Cyan guibg=Grey guifg=Cyan"), #endif #ifdef FEAT_SIGNS - "SignColumn term=standout ctermbg=DarkGrey ctermfg=Cyan", + CENT("SignColumn term=standout ctermbg=DarkGrey ctermfg=Cyan", + "SignColumn term=standout ctermbg=DarkGrey ctermfg=Cyan guibg=Grey guifg=Cyan"), #endif #ifdef FEAT_VISUAL - "Visual term=reverse ctermbg=Magenta", + CENT("Visual term=reverse ctermbg=Magenta", + "Visual term=reverse ctermbg=Magenta guibg=DarkGrey"), #endif #ifdef FEAT_DIFF - "DiffAdd term=bold ctermbg=DarkBlue", - "DiffChange term=bold ctermbg=DarkMagenta", - "DiffDelete term=bold ctermfg=Blue ctermbg=DarkCyan", + CENT("DiffAdd term=bold ctermbg=DarkBlue", + "DiffAdd term=bold ctermbg=DarkBlue guibg=DarkBlue"), + CENT("DiffChange term=bold ctermbg=DarkMagenta", + "DiffChange term=bold ctermbg=DarkMagenta guibg=DarkMagenta"), + CENT("DiffDelete term=bold ctermfg=Blue ctermbg=DarkCyan", + "DiffDelete term=bold ctermfg=Blue ctermbg=DarkCyan gui=bold guifg=Blue guibg=DarkCyan"), #endif #ifdef FEAT_WINDOWS - "TabLine term=underline cterm=underline ctermfg=white ctermbg=DarkGrey", + CENT("TabLine term=underline cterm=underline ctermfg=white ctermbg=DarkGrey", + "TabLine term=underline cterm=underline ctermfg=white ctermbg=DarkGrey gui=underline guibg=DarkGrey"), #endif #ifdef FEAT_SYN_HL - "CursorColumn term=reverse ctermbg=DarkGrey", - "CursorLine term=underline cterm=underline", + CENT("CursorColumn term=reverse ctermbg=DarkGrey", + "CursorColumn term=reverse ctermbg=DarkGrey guibg=DarkGrey"), + CENT("CursorLine term=underline cterm=underline", + "CursorLine term=underline cterm=underline guibg=DarkGrey"), #endif #ifdef FEAT_GUI - "Directory guifg=Cyan", - "LineNr guifg=Yellow", - "MoreMsg gui=bold guifg=SeaGreen", "Normal gui=NONE", - "Question gui=bold guifg=Green", - "Search guibg=Yellow guifg=Black", - "SpecialKey guifg=Cyan", - "SpellBad guisp=Red gui=undercurl", - "SpellCap guisp=Blue gui=undercurl", - "SpellRare guisp=Magenta gui=undercurl", - "SpellLocal guisp=Cyan gui=undercurl", - "Pmenu guibg=Magenta", - "PmenuSel guibg=DarkGrey", - "Title gui=bold guifg=Magenta", - "WarningMsg guifg=Red", - "WildMenu guibg=Yellow guifg=Black", - "Folded guibg=DarkGrey guifg=Cyan", - "FoldColumn guibg=Grey guifg=Cyan", - "SignColumn guibg=Grey guifg=Cyan", - "Visual guibg=DarkGrey", - "DiffAdd guibg=DarkBlue", - "DiffChange guibg=DarkMagenta", - "DiffDelete gui=bold guifg=Blue guibg=DarkCyan", - "TabLine gui=underline guibg=DarkGrey", - "CursorColumn guibg=DarkGrey", - "CursorLine guibg=DarkGrey", #endif NULL }; diff --git a/src/testdir/test58.in b/src/testdir/test58.in --- a/src/testdir/test58.in +++ b/src/testdir/test58.in @@ -420,7 +420,8 @@ COMPOUNDRULE m+ COMPOUNDRULE sm*e COMPOUNDRULE sm+ COMPOUNDMIN 3 -COMPOUNDMAX 3 +COMPOUNDWORDMAX 3 +COMPOUNDFORBIDFLAG t COMPOUNDSYLMAX 5 SYLLABLE aáeéiíoóöőuúüűy/aa/au/ea/ee/ei/ie/oa/oe/oo/ou/uu/ui @@ -447,7 +448,7 @@ SFX q 0 -ok . SFX a Y 2 SFX a 0 s . -SFX a 0 ize . nocomp +SFX a 0 ize/t . PFX p N 1 PFX p 0 pre . diff --git a/src/testdir/test59.in b/src/testdir/test59.in --- a/src/testdir/test59.in +++ b/src/testdir/test59.in @@ -424,7 +424,8 @@ COMPOUNDRULE m+ COMPOUNDRULE sm*e COMPOUNDRULE sm+ COMPOUNDMIN 3 -COMPOUNDMAX 3 +COMPOUNDWORDMAX 3 +COMPOUNDFORBIDFLAG t COMPOUNDSYLMAX 5 SYLLABLE aáeéiíoóöőuúüűy/aa/au/ea/ee/ei/ie/oa/oe/oo/ou/uu/ui @@ -451,7 +452,7 @@ SFX q 0 -ok . SFX a Y 2 SFX a 0 s . -SFX a 0 ize . nocomp +SFX a 0 ize/t . PFX p N 1 PFX p 0 pre . diff --git a/src/version.h b/src/version.h --- a/src/version.h +++ b/src/version.h @@ -36,5 +36,5 @@ #define VIM_VERSION_NODOT "vim70b" #define VIM_VERSION_SHORT "7.0b" #define VIM_VERSION_MEDIUM "7.0b BETA" -#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0b BETA (2006 Mar 25)" -#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0b BETA (2006 Mar 25, compiled " +#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0b BETA (2006 Mar 26)" +#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0b BETA (2006 Mar 26, compiled " diff --git a/src/xxd/xxd.c b/src/xxd/xxd.c --- a/src/xxd/xxd.c +++ b/src/xxd/xxd.c @@ -275,6 +275,9 @@ long base_off; if (c == '\r') /* Doze style input file? */ continue; + if (c == ' ' || c == '\n' || c == '\t') /* allow multiple spaces */ + continue; + n3 = n2; n2 = n1; @@ -334,7 +337,7 @@ long base_off; n1 = -1; if ((++p >= cols) && !hextype) { - /* skip rest of line as garbaga */ + /* skip rest of line as garbage */ want_off = 0; while ((c = getc(fpi)) != '\n' && c != EOF) ;