summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2004-09-06 17:44:46 +0000
committerBram Moolenaar <Bram@vim.org>2004-09-06 17:44:46 +0000
commit15d0a8c77dad867b69822e2fd8f9f6bbcf765c48 (patch)
treee84faedc007f9c2b81b9056a400dccade2b947e5
parentd4755bb0e04fca334675f1503bd6474b017a9bba (diff)
updated for version 7.0015v7.0015
-rw-r--r--Makefile5
-rw-r--r--runtime/compiler/php.vim28
-rw-r--r--runtime/doc/options.txt10
-rw-r--r--runtime/doc/todo.txt40
-rw-r--r--runtime/doc/version7.txt28
-rw-r--r--runtime/lang/menu_uk_ua.cp1251.vim246
-rw-r--r--src/GvimExt/gvimext.cpp2
-rw-r--r--src/buffer.c31
-rw-r--r--src/ex_cmds.c5
-rw-r--r--src/ex_docmd.c20
-rw-r--r--src/fileio.c24
-rw-r--r--src/gui_kde.cc69
-rw-r--r--src/gui_kde_x11.cc38
-rw-r--r--src/gui_w48.c10
-rw-r--r--src/main.c23
-rw-r--r--src/mbyte.c14
-rw-r--r--src/option.c17
-rw-r--r--src/os_mswin.c21
-rw-r--r--src/os_w32exe.c173
-rw-r--r--src/os_win32.c1
-rw-r--r--src/po/Makefile8
-rw-r--r--src/po/uk.cp1251.po6225
-rw-r--r--src/proto/buffer.pro2
-rw-r--r--src/proto/ex_docmd.pro1
-rw-r--r--src/vim.h1
25 files changed, 6920 insertions, 122 deletions
diff --git a/Makefile b/Makefile
index d734cd954b..afd8ad64c4 100644
--- a/Makefile
+++ b/Makefile
@@ -354,6 +354,7 @@ lang: dist prepare
touch dist/$(VIMRTDIR)/src/po/sk.cp1250.po
touch dist/$(VIMRTDIR)/src/po/zh_CN.cp936.po
touch dist/$(VIMRTDIR)/src/po/ru.cp1251.po
+ touch dist/$(VIMRTDIR)/src/po/uk.cp1251.po
cd dist && tar cf $(VIMVER)-lang.tar $(VIMRTDIR)
gzip -9 dist/$(VIMVER)-lang.tar
@@ -568,9 +569,9 @@ doslang: dist prepare no_title.vim dist/$(COMMENT_LANG)
find dist/vim/$(VIMRTDIR) -type f -exec $(VIM) -e -u no_title.vim -c ":set tx|wq" {} \;
# Add the message translations. Trick: skip ja.mo and use ja.sjis.mo instead.
# Same for cs.mo / cs.cp1250.mo, pl.mo / pl.cp1250.mo, sk.mo / sk.cp1250.mo,
-# zh_CN.mo / zh_CN.cp936.mo and ru.mo / ru.cp1251.mo.
+# zh_CN.mo / zh_CN.cp936.mo, uk.mo / uk.cp1251.mo and ru.mo / ru.cp1251.mo.
for i in $(LANG_DOS); do \
- if test "$$i" != "src/po/ja.mo" -a "$$i" != "src/po/pl.mo" -a "$$i" != "src/po/cs.mo" -a "$$i" != "src/po/sk.mo" -a "$$i" != "src/po/zh_CN.mo" -a "$$i" != "src/po/ru.mo"; then \
+ if test "$$i" != "src/po/ja.mo" -a "$$i" != "src/po/pl.mo" -a "$$i" != "src/po/cs.mo" -a "$$i" != "src/po/sk.mo" -a "$$i" != "src/po/zh_CN.mo" -a "$$i" != "src/po/ru.mo" -a "$$i" != "src/po/uk.mo"; then \
n=`echo $$i | sed -e "s+src/po/\([-a-zA-Z0-9_]*\(.UTF-8\)*\)\(.sjis\)*\(.cp1250\)*\(.cp1251\)*\(.cp936\)*.mo+\1+"`; \
mkdir dist/vim/$(VIMRTDIR)/lang/$$n; \
mkdir dist/vim/$(VIMRTDIR)/lang/$$n/LC_MESSAGES; \
diff --git a/runtime/compiler/php.vim b/runtime/compiler/php.vim
new file mode 100644
index 0000000000..5dad2710a9
--- /dev/null
+++ b/runtime/compiler/php.vim
@@ -0,0 +1,28 @@
+" Vim compiler file
+" Compiler: PHP
+" Maintainer: Doug Kearns <djkea2@mugca.its.monash.edu.au>
+" URL: http://mugca.its.monash.edu.au/~djkea2/vim/compiler/php.vim
+" Last Change: 2004 Sep 05
+
+if exists("current_compiler")
+ finish
+endif
+let current_compiler = "php"
+
+if exists(":CompilerSet") != 2 " older Vim always used :setlocal
+ command -nargs=* CompilerSet setlocal <args>
+endif
+
+let s:cpo_save = &cpo
+set cpo-=C
+
+CompilerSet makeprg=php\ -lq
+
+CompilerSet errorformat=%E<b>Parse\ error</b>:\ %m\ in\ <b>%f</b>\ on\ line\ <b>%l</b><br\ />,
+ \%W<b>Notice</b>:\ %m\ in\ <b>%f</b>\ on\ line\ <b>%l</b><br\ />,
+ \%EParse\ error:\ %m\ in\ %f\ on\ line\ %l,
+ \%WNotice:\ %m\ in\ %f</b>\ on\ line\ %l,
+ \%-G%.%#
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index 376bb6b43e..17201b457e 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 7.0aa. Last change: 2004 Aug 30
+*options.txt* For Vim version 7.0aa. Last change: 2004 Sep 04
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -473,6 +473,11 @@ options from a modeline, this is unusual. If you have two windows open and
the files in it set the same global option to a different value, the result
depends on which one was opened last.
+When editing a file that was already loaded, only the window-local options
+from the modeline are used. Thus if you manually changed a buffer-local
+option after opening the file, it won't be changed if you edit the same buffer
+in another window. But window-local options will be set.
+
*modeline-version*
If the modeline is only to be used for some versions of Vim, the version
number can be specified where "vim:" is used:
@@ -6352,6 +6357,9 @@ A jump table for the options with a short description can be found at |Q_op|.
buffer list is restored from the viminfo file. Buffers
without a file name and buffers for help files are not written
to the viminfo file.
+ When followed by a number, the number specifies the maximum
+ number of buffers that are stored. Without a number all
+ buffers are stored.
' Maximum number of previously edited files for which the marks
are remembered. This parameter must always be included when
'viminfo' is non-empty.
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index b72c62c7a7..44ff811d96 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0aa. Last change: 2004 Aug 31
+*todo.txt* For Vim version 7.0aa. Last change: 2004 Sep 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,37 +30,15 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
-Multi-byte char in file name causes trouble for opening, "send to" menu and
-writing. Patches from Taro Muraoka:
- ~/Mail/oldmail/muraoka/in.00575
- ~/Mail/oldmail/muraoka/in.00577
-
-Is there a limit on the buffer list in the viminfo file?
-":n ~/.trashcan/bogus*" fills it.
-
-When gvim is started from the context menu the xxd menu entries don't work
-(Valencia). xxd.exe is not in $VIMRUNTIME.
-
Aborting at the ATTENTION prompt causes trouble:
buffer remains active, nwindows isn't closed (fixed in buffer.c)
alternate buffer gets "read error" flag.
":sbuf" and ":ball" leave an empty window behind.
Change in handle_swap_exists() also in 6.3?
-Add remap-abbreviation solution to Vim 6.3? It's about adding REMAP_SKIP and
-RM_ABBR in getchar.c.
-
-Added ga_append() here: (also to 6.3?)
- script_get(eap, cmd)
- gui_do_findrepl(flags, find_text, repl_text, down)
- serverGetVimNames(dpy) if_xcmdsrv.c, os_mswin.c
-
Win32: When the path to a file has Russian characters, ":cd %:p:h" doesn't
work. (Valery Kondakoff)
-
-Win32: When an argument is typed in a console in the active codepage, and
-'encoding' is "utf-8", detect this from illegal characters. Convert from
-console or active codepage to utf-8 then.
+Solved in os_mswin.c. Add to 6.3?
For version 7.0:
- Include many PATCHES:
@@ -114,10 +92,10 @@ For version 7.0:
He will update the patch for 6.3.
Autocommands:
7 Completion of network shares, patch by Yasuhiro Matsumoto.
- Update 2004 Jun 17.
+ Update 2004 Sep 6.
How does this work? Missing comments.
gettext() Translate a message. (Patch from Yasuhiro Matsumoto)
- Update 2004 Jun 17
+ Update 2004 Sep 5
Missing docs. Search in 'runtimepath'?
How to get the messages into the .po files?
--- did not respond (yet) --
@@ -219,6 +197,7 @@ For version 7.0:
- "INTELLISENSE". First cleanup the Insert-mode completion.
http://www.vim.org/scripts/script.php?script_id=747
http://sourceforge.net/projects/insenvim
+ http://cedet.sourceforge.net/intellisense.shtml (for Emacs)
- PERSISTENT UNDO: store undo in a file.
Support multiple threads. Show the list of changes in a window to be able
to select a version.
@@ -283,10 +262,13 @@ Support ":set syntax=cpp.doxygen"? Suggested patch by Michael Geddes (9 Aug
2004). Should also work for 'filetype'.
Patch for 'breakindent' option: repeat indent for wrapped line. (Vaclav
-Smilauer, 2004 Aug 17)
+Smilauer, 2004 Sep 5)
Vi incompatibility:
+9 In Ex mode, "u" undoes all changes, not just the last one. (John Cowan)
+8 In Ex mode, an empty file doesn't have a first line, "1p" should fail.
+8 In Ex mode, "1,3" should print three lines.
8 With undo/redo only marks in the changed lines should be changed. Other
marks should be kept. Vi keeps each mark at the same text, even when it
is deleted or restored. (Webb)
@@ -2996,7 +2978,9 @@ Debug mode:
8 Add breakpoints for setting an option
8 Add breakpoints for assigning to a variable.
7 Add a watchpoint in the debug mode: An expression that breaks execution
- when evaluating to non-zero.
+ when evaluating to non-zero. Add the "watchadd expr" command, stop when
+ the value of the expression changes. ":watchdel" deletes an item,
+ ":watchlist" lists the items. (Charles Campbell)
7 Store the history from debug mode in viminfo.
7 Make the debug mode history available with histget() et al.
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 4260877c59..42f6628e50 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0aa. Last change: 2004 Sep 01
+*version7.txt* For Vim version 7.0aa. Last change: 2004 Sep 06
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -154,6 +154,13 @@ ABAB/4 syntax file. (Marius van Wyk)
SQL-Informix syntax file. (Dean L Hill)
+PHP compiler plugin. (Doug Kearns)
+
+
+New message translations: ~
+
+The Ukranian messages are now also available in cp1251.
+
Others: ~
@@ -215,6 +222,9 @@ VMS: In the usage message mention that a slash can be used to make a flag
upper case. Add color support to the builtin vt320 terminal codes.
(Zoltan Arpadffy)
+For the '%' item in 'viminfo', allow a number to set a maximum for the number
+of buffers.
+
==============================================================================
COMPILE TIME CHANGES *compile-changes-7*
@@ -263,10 +273,6 @@ When indent was added automatically and then moving the cursor, the indent was
not deleted (like when pressing ESC). The "I" flag in 'cpoptions' can be used
to make it work the old way.
-When <Space> is mapped to something that starts with a space, typing <Space>
-does not expand abbreviations. Only disable expanding abbreviations when a
-mapping is not remapped, not when the RHS starts with the LHS.
-
When opening a command-line window, 'textwidth' gets set to 78 by the Vim
filetype plugin. Reset 'textwidth' to 0 to avoid lines are broken.
@@ -330,4 +336,16 @@ detected. Reset did_filetype in enter_buffer().
When using ":argdo" and the window already was at the first argument index,
but not actually editing it, the current buffer would be used instead.
+When ":next dir/*" includes many matches, adding the names to the argument
+list may take an awful lot of time and can't be interrupted. Allow
+interrupting this.
+
+When editing a file that was already loaded in a buffer, modelines were not
+used. Now window-local options in the modeline are set. Buffer-local options
+and global options remain unmodified.
+
+Win32: When 'encoding' is set to "utf-8" in the vimrc file, files from the
+command line with non-ASCII characters are not used correctly. Recode the
+file names when 'encoding' is set, using the Unicode command line.
+
vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/lang/menu_uk_ua.cp1251.vim b/runtime/lang/menu_uk_ua.cp1251.vim
new file mode 100644
index 0000000000..a517ecd782
--- /dev/null
+++ b/runtime/lang/menu_uk_ua.cp1251.vim
@@ -0,0 +1,246 @@
+" Menu Translations: Ukrainian
+" Maintainer: Bohdan Vlasyuk <bohdan@vstu.edu.ua>
+" Last Change: 11 Oct 2001
+
+"
+" Please, see readme at htpp://www.vstu.edu.ua/~bohdan/vim before any
+" complains, and even if you won't complain, read it anyway.
+"
+
+" Quit when menu translations have already been done.
+if exists("did_menu_trans")
+ finish
+endif
+let did_menu_trans = 1
+scriptencoding cp1251
+
+" Help menu
+menutrans &Help &Допомога
+menutrans &Overview<Tab><F1> &Загальна\ Інформація<Tab><F1>
+menutrans &User\ Manual &Керівництво\ для\ користувача
+menutrans &How-to\ links &Як-Зробити?
+"menutrans &GUI &GIU
+menutrans &Credits &Подяки
+menutrans Co&pying &Розповсюдження
+menutrans O&rphans &Допомога\ сиротам
+menutrans &Version &Версія
+menutrans &About Про\ &програму
+
+" File menu
+menutrans &File &Файл
+menutrans &Open\.\.\.<Tab>:e &Відкрити\.\.\.<Tab>:e
+menutrans Sp&lit-Open\.\.\.<Tab>:sp &Розділити\ вікно\.\.\.<Tab>:sp
+menutrans &New<Tab>:enew &Новий<Tab>:enew
+menutrans &Close<Tab>:close &Закрити<Tab>:close
+menutrans &Save<Tab>:w За&пам'ятати<Tab>:w
+menutrans Save\ &As\.\.\.<Tab>:sav Запам'ятати\ &як\.\.\.<Tab>:sav
+menutrans Split\ &Diff\ with\.\.\. По&рівняти\ з\.\.\.
+menutrans Split\ Patched\ &By\.\.\. За&латати\.\.\.
+menutrans &Print &Друкувати
+menutrans Sa&ve-Exit<Tab>:wqa Записати\ і\ ви&йти<Tab>:wqa
+menutrans E&xit<Tab>:qa &Вихід<Tab>:qa
+
+" Edit menu
+menutrans &Edit &Редагувати
+menutrans &Undo<Tab>u &Відмінити<Tab>u
+menutrans &Redo<Tab>^R &Повернути<Tab>^R
+menutrans Rep&eat<Tab>\. П&овторити<Tab>\.
+menutrans Cu&t<Tab>"+x Ви&різати<Tab>"+x
+menutrans &Copy<Tab>"+y &Копіювати<Tab>"+y
+menutrans &Paste<Tab>"+gP В&ставити<Tab>"+gP
+menutrans Put\ &Before<Tab>[p Вставити\ попе&реду<Tab>[p
+menutrans Put\ &After<Tab>]p Вставити\ п&ісля<Tab>]p
+menutrans &Select\ all<Tab>ggVG Ви&брати\ усе<Tab>ggVG
+menutrans &Find\.\.\. &Знайти\.\.\.
+menutrans Find\ and\ Rep&lace\.\.\. За&мінити\.\.\.
+menutrans Settings\ &Window Вікно\ &налаштувань
+menutrans &Global\ Settings Загальні\ на&лаштування
+menutrans F&ile\ Settings Налаштування\ для\ &файлу
+menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! &Нумерація\ рядків<Tab>:set\ nu!
+menutrans Toggle\ &List\ Mode<Tab>:set\ list! Режим\ на&длишкового\ відображення<Tab>:set\ list!
+menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! Режим\ &переносу<Tab>:set\ wrap!
+menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! Переносити\ усе\ &слово<Tab>:set\ lbr!
+menutrans Toggle\ &expand-tab<Tab>:set\ et! Користуватися\ символом\ &табуляції<Tab>:set\ et!
+menutrans Toggle\ &auto-indent<Tab>:set\ ai! Автоматичний\ &відступ<Tab>:set\ ai!
+menutrans Toggle\ &C-indenting<Tab>:set\ cin! Відступи\ для\ мови\ &C<Tab>:set\ cin!
+menutrans &Shiftwidth &Зсув
+menutrans Te&xt\ Width\.\.\. &Ширина\ тексту\.\.\.
+menutrans &File\ Format\.\.\. &Формат\ файлу\.\.\.
+menutrans Soft\ &Tabstop Позиція\ &табуляції
+menutrans C&olor\ Scheme &Кольори
+menutrans Select\ Fo&nt\.\.\. Вибрати\ &шрифт\.\.\.
+
+
+menutrans &Keymap Режим\ клавіатури
+menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! Виділяти\ &зразок<Tab>:set\ hls!
+menutrans Toggle\ &Ignore-case<Tab>:set\ ic! &Розрізняти\ \великі\ та\ малі\ літери<Tab>:set\ ic!
+menutrans Toggle\ &Showmatch<Tab>:set\ sm! &Негайний\ пошук<Tab>:set\ sm!
+menutrans &Context\ lines Кількість\ &важливих\ рядків
+menutrans &Virtual\ Edit Курсор\ &рухається\ без\ меж
+
+menutrans Never Ніколи
+menutrans Block\ Selection Вибір\ Блоку
+menutrans Insert\ mode Режим\ вставки
+menutrans Block\ and\ Insert Вибір\ і\ вставка
+menutrans Always Завжди
+
+menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! Режим\ &вставки<Tab>:set\ im!
+menutrans Search\ &Path\.\.\. &Шлях\ пошуку\.\.\.
+menutrans Ta&g\ Files\.\.\. Файли\ &поміток\.\.\.
+
+
+"
+" GUI options
+menutrans Toggle\ &Toolbar Панель\ &інструментів
+menutrans Toggle\ &Bottom\ Scrollbar &Нижня\ лінійка\ зсуву
+menutrans Toggle\ &Left\ Scrollbar &Ліва\ лінійка\ зсуву
+menutrans Toggle\ &Right\ Scrollbar &Права\ лінійка\ зсуву
+
+" Programming menu
+menutrans &Tools &Інструменти
+menutrans &Jump\ to\ this\ tag<Tab>g^] &Перейти\ до\ помітки<Tab>g^]
+menutrans Jump\ &back<Tab>^T По&вернутися<Tab>^T
+menutrans Build\ &Tags\ File &Створити\ файл\ поміток
+" Folding
+menutrans &Folding &Згортки
+menutrans &Enable/Disable\ folds<Tab>zi &Дозволити/заборонити\ згортки<Tab>zi
+menutrans &View\ Cursor\ Line<Tab>zv &Бачити\ рядок\ з\ курсором<Tab>zv
+menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx Бачити\ &лише\ рядок\ з\ курсором<Tab>zMzx
+menutrans C&lose\ more\ folds<Tab>zm Закрити\ &більше\ згортків<Tab>zm
+menutrans &Close\ all\ folds<Tab>zM Закрити\ &усі\ згортки<Tab>zM
+menutrans &Open\ all\ folds<Tab>zR Відкрити\ у&сі\ згортки<Tab>zR
+menutrans O&pen\ more\ folds<Tab>zr Відкрити\ б&ільше\ згортків<Tab>zr
+
+menutrans Create\ &Fold<Tab>zf С&творити\ згорток<Tab>zf
+menutrans &Delete\ Fold<Tab>zd &Видалити\ згорток<Tab>zd
+menutrans Delete\ &All\ Folds<Tab>zD Видалит&и\ усі\ згортки<Tab>zD
+menutrans Fold\ column\ &width &Товщина\ рядка\ згортків
+menutrans Fold\ Met&hod &Метод\ згортання
+menutrans M&anual &Ручний
+menutrans I&ndent &Відступ
+menutrans E&xpression В&ираз
+menutrans S&yntax &Синтаксично
+menutrans Ma&rker По&значки
+
+" Diff
+menutrans &Diff По&рівняння
+menutrans &Update &Поновити
+menutrans &Get\ Block &Запозичити\ різницю
+menutrans &Put\ Block &Впровадити\ різницю
+
+" Make and stuff...
+menutrans &Make<Tab>:make &Будувати(make)<Tab>:make
+menutrans &List\ Errors<Tab>:cl &Список\ помилок<Tab>:cl
+menutrans L&ist\ Messages<Tab>:cl! Сп&исок\ повідомлень<Tab>:cl!
+menutrans &Next\ Error<Tab>:cn &Наступна\ помилка<Tab>:cn
+menutrans &Previous\ Error<Tab>:cp &Попередня\ помилка<Tab>:cp
+menutrans &Older\ List<Tab>:cold &Бувші\ помилки<Tab>:cold
+menutrans N&ewer\ List<Tab>:cnew &Майбутні\ помилки<Tab>:cnew
+menutrans Error\ &Window &Вікно\ помилок
+menutrans &Update<Tab>:cwin &Поновити<Tab>:cwin
+menutrans &Close<Tab>:cclose &Закрити<Tab>:cclose
+menutrans &Open<Tab>:copen &Відкрити<Tab>:copen
+
+menutrans &Set\ Compiler Встановити\ &компілятор
+menutrans &Convert\ to\ HEX<Tab>:%!xxd Перевести\ в\ шістнадцяткові\ коди<Tab>:%!xxd
+menutrans Conve&rt\ back<Tab>:%!xxd\ -r Повернути\ в\ двійкову\ форму<Tab>:%!xxd\ -r
+
+" Names for buffer menu.
+menutrans &Buffers &Буфери
+menutrans &Refresh\ menu &Поновити
+menutrans Delete &Видалити
+menutrans &Alternate &Вторинний
+menutrans &Next &Слідуючий
+menutrans &Previous &Попередній
+menutrans [No\ File] [Немає\ Файла]
+
+" Window menu
+menutrans &Window &Вікно
+menutrans &New<Tab>^Wn &Нове<Tab>^Wn
+menutrans S&plit<Tab>^Ws &Розділити<Tab>^Ws
+menutrans Sp&lit\ To\ #<Tab>^W^^ Розділити\ для\ &вторинного\ файлу<Tab>^W^^
+menutrans Split\ &Vertically<Tab>^Wv Розділити\ &поперек<Tab>^Wv
+"menutrans Split\ &Vertically<Tab>^Wv &Розділити\ поперек<Tab>^Wv
+menutrans Split\ File\ E&xplorer Розділити\ для\ &перегляду\ файлів
+
+menutrans &Close<Tab>^Wc &Закрити<Tab>^Wc
+menutrans Close\ &Other(s)<Tab>^Wo Закрити\ усі\ &інші<Tab>^Wo
+menutrans Ne&xt<Tab>^Ww &Наступне<Tab>^Ww
+menutrans P&revious<Tab>^WW &Попереднє<Tab>^WW
+menutrans &Equal\ Size<Tab>^W= &Вирівняти\ розмір<Tab>^W=
+menutrans &Max\ Height<Tab>^W_ Най&більша\ висота<Tab>^W_
+menutrans M&in\ Height<Tab>^W1_ Най&менша\ висота<Tab>^W1_
+menutrans Max\ &Width<Tab>^W\| Найбі&льша\ ширина<Tab>^W\|
+menutrans Min\ Widt&h<Tab>^W1\| Наймен&ша\ ширина<Tab>^W1\|
+menutrans Move\ &To &Змістити
+menutrans &Top<Tab>^WK До&гори<Tab>^WK
+menutrans &Bottom<Tab>^WJ До&низу<Tab>^WJ
+menutrans &Left\ side<Tab>^WH У&ліво<Tab>^WH
+menutrans &Right\ side<Tab>^WL В&право<Tab>^WL
+menutrans Rotate\ &Up<Tab>^WR &Циклічно\ догори<Tab>^WR
+menutrans Rotate\ &Down<Tab>^Wr Ц&иклічно\ униз<Tab>^Wr
+
+" The popup menu
+menutrans &Undo &Відмінити
+menutrans Cu&t Ви&різати
+menutrans &Copy &Копіювати
+menutrans &Paste В&ставити
+menutrans &Delete Ви&далити
+menutrans Select\ &Word Вибрати\ &слово
+menutrans Select\ &Line Вибрати\ &рядок
+menutrans Select\ &Block Вибрати\ &блок
+menutrans Select\ &All Вибрати\ &усе
+
+
+
+" The GUI toolbar
+if has("toolbar")
+ if exists("*Do_toolbar_tmenu")
+ delfun Do_toolbar_tmenu
+ endif
+ fun Do_toolbar_tmenu()
+ tmenu ToolBar.Open Відкрити файл
+ tmenu ToolBar.Save Запам'ятати файл
+ tmenu ToolBar.SaveAll Запам'ятати усі файли
+ tmenu ToolBar.Print Друкувати
+ tmenu ToolBar.Undo Відмінити
+ tmenu ToolBar.Redo Повернути
+ tmenu ToolBar.Cut Вирізати
+ tmenu ToolBar.Copy Копіювати
+ tmenu ToolBar.Paste Вставити
+ tmenu ToolBar.Find Знайти...
+ tmenu ToolBar.FindNext Знайти наступний
+ tmenu ToolBar.FindPrev Знайти попередній
+ tmenu ToolBar.Replace Замінити...
+ tmenu ToolBar.LoadSesn Завантажити сеанс редагування
+ tmenu ToolBar.SaveSesn Запам'ятати сеанс редагування
+ tmenu ToolBar.RunScript Виконати файл команд
+ tmenu ToolBar.Make Збудувати проект
+ tmenu ToolBar.Shell Shell
+ tmenu ToolBar.RunCtags Створити файл поміток
+ tmenu ToolBar.TagJump Перейти до помітки
+ tmenu ToolBar.Help Допомога
+ tmenu ToolBar.FindHelp Пошук у допомозі
+ endfun
+endif
+
+" Syntax menu
+menutrans &Syntax &Синтаксис
+menutrans Set\ '&syntax'\ only Встановлювати\ лише\ '&syntax'
+menutrans Set\ '&filetype'\ too Встановлювати\ '&filetype'\ також
+menutrans &Off &Вимкнено
+menutrans &Manual &Ручний
+menutrans A&utomatic &Автоматично
+menutrans on/off\ for\ &This\ file Перемкнути\ для\ цього\ &файла
+menutrans Co&lor\ test Перевірка\ &кольорів
+menutrans &Highlight\ test &Перевірка\ виділення
+menutrans &Convert\ to\ HTML Створити\ &HTML
+
+" dialog texts
+let menutrans_no_file = "[Немає\ Файла]"
+let menutrans_help_dialog = "Вкажіть команду або слово для пошуку:\n\nДодайте i_ для команд режиму вставки (напр. i_CTRL-X)\nДодайте i_ для командного режиму (напр. с_<Del>)\nДодайте ' для позначення назви опції (напр. 'shiftwidth')"
+let g:menutrans_path_dialog = "Вкажіть шлях пошуку файлів\nРозділяйте назви директорій комами."
+let g:menutrans_tags_dialog = "Вкажіть назви файлів поміток\nРозділяйте назви комами."
+let g:menutrans_textwidth_dialog = "Вкажіть нову ширину тексту (0 для відміни фоматування)"
+let g:menutrans_fileformat_dialog = "Виберіть формат файлу"
+
diff --git a/src/GvimExt/gvimext.cpp b/src/GvimExt/gvimext.cpp
index 57fbf81199..1cb0b83659 100644
--- a/src/GvimExt/gvimext.cpp
+++ b/src/GvimExt/gvimext.cpp
@@ -595,7 +595,7 @@ STDMETHODIMP CShellExt::QueryContextMenu(HMENU hMenu,
indexMenu++,
MF_STRING|MF_BYPOSITION,
idCmd++,
- _("&Diff with Vim"));
+ _("Diff with Vim"));
m_edit_existing_off = 3;
}
else
diff --git a/src/buffer.c b/src/buffer.c
index 007afd6356..9f29b27510 100644
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -252,7 +252,7 @@ open_buffer(read_stdin, eap)
/* Go to the buffer that was opened. */
aucmd_prepbuf(&aco, old_curbuf);
#endif
- do_modelines();
+ do_modelines(FALSE);
curbuf->b_flags &= ~(BF_CHECK_RO | BF_NEVERLOADED);
#ifdef FEAT_AUTOCMD
@@ -724,7 +724,7 @@ handle_swap_exists(old_curbuf)
ml_recover();
MSG_PUTS("\n"); /* don't overwrite the last message */
cmdline_row = msg_row;
- do_modelines();
+ do_modelines(FALSE);
}
swap_exists_action = SEA_NONE;
got_int |= old_got_int;
@@ -4338,14 +4338,15 @@ ex_buffer_all(eap)
*
* Returns immediately if the "ml" option isn't set.
*/
-static int chk_modeline __ARGS((linenr_T));
+static int chk_modeline __ARGS((linenr_T, int));
void
-do_modelines()
+do_modelines(win_only)
+ int win_only; /* Only do window-local options. */
{
- linenr_T lnum;
- int nmlines;
- static int entered = 0;
+ linenr_T lnum;
+ int nmlines;
+ static int entered = 0;
if (!curbuf->b_p_ml || (nmlines = (int)p_mls) == 0)
return;
@@ -4358,12 +4359,12 @@ do_modelines()
++entered;
for (lnum = 1; lnum <= curbuf->b_ml.ml_line_count && lnum <= nmlines;
++lnum)
- if (chk_modeline(lnum) == FAIL)
+ if (chk_modeline(lnum, win_only) == FAIL)
nmlines = 0;
for (lnum = curbuf->b_ml.ml_line_count; lnum > 0 && lnum > nmlines
&& lnum > curbuf->b_ml.ml_line_count - nmlines; --lnum)
- if (chk_modeline(lnum) == FAIL)
+ if (chk_modeline(lnum, win_only) == FAIL)
nmlines = 0;
--entered;
}
@@ -4375,8 +4376,9 @@ do_modelines()
* Return FAIL if an error encountered.
*/
static int
-chk_modeline(lnum)
+chk_modeline(lnum, win_only)
linenr_T lnum;
+ int win_only; /* Only do window-local options. */
{
char_u *s;
char_u *e;
@@ -4473,7 +4475,8 @@ chk_modeline(lnum)
save_SID = current_SID;
current_SID = SID_MODELINE;
#endif
- retval = do_set(s, OPT_MODELINE | OPT_LOCAL);
+ retval = do_set(s, OPT_MODELINE | OPT_LOCAL
+ | (win_only ? OPT_WINONLY : 0));
#ifdef FEAT_EVAL
current_SID = save_SID;
#endif
@@ -4558,10 +4561,14 @@ write_viminfo_bufferlist(fp)
win_T *win;
#endif
char_u *line;
+ int max_buffers;
if (find_viminfo_parameter('%') == NULL)
return;
+ /* Without a number -1 is returned: do all buffers. */
+ max_buffers = get_viminfo_parameter('%');
+
/* Allocate room for the file name, lnum and col. */
line = alloc(MAXPATHL + 30);
if (line == NULL)
@@ -4585,6 +4592,8 @@ write_viminfo_bufferlist(fp)
|| removable(buf->b_ffname))
continue;
+ if (max_buffers-- == 0)
+ break;
putc('%', fp);
home_replace(NULL, buf->b_ffname, line, MAXPATHL, TRUE);
sprintf((char *)line + STRLEN(line), "\t%ld\t%d",
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 2568b194ba..ee9f1bca77 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -3059,6 +3059,11 @@ do_ecmd(fnum, ffname, sfname, eap, newlnum, flags)
#ifdef FEAT_AUTOCMD
else
{
+ /* Read the modelines, but only to set window-local options. Any
+ * buffer-local options have already been set and may have been
+ * changed by the user. */
+ do_modelines(TRUE);
+
apply_autocmds_retval(EVENT_BUFENTER, NULL, NULL, FALSE, curbuf,
&retval);
apply_autocmds_retval(EVENT_BUFWINENTER, NULL, NULL, FALSE, curbuf,
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 3627f32ccc..a0c07201d2 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -4460,7 +4460,7 @@ ex_doautocmd(eap)
exarg_T *eap;
{
(void)do_doautocmd(eap->arg, TRUE);
- do_modelines();
+ do_modelines(FALSE);
}
#endif
@@ -6173,11 +6173,10 @@ handle_drop(filec, filev, split)
}
#endif
-static void alist_clear __ARGS((alist_T *al));
/*
* Clear an argument list: free all file names and reset it to zero entries.
*/
- static void
+ void
alist_clear(al)
alist_T *al;
{
@@ -6264,8 +6263,8 @@ alist_expand()
&& new_arg_file_count > 0)
{
alist_set(&global_alist, new_arg_file_count, new_arg_files, TRUE);
+ vim_free(old_arg_files);
}
- vim_free(old_arg_files);
}
p_su = save_p_su;
}
@@ -6288,7 +6287,18 @@ alist_set(al, count, files, use_curbuf)
if (ga_grow(&al->al_ga, count) == OK)
{
for (i = 0; i < count; ++i)
+ {
+ if (got_int)
+ {
+ /* When adding many buffers this can take a long time. Allow
+ * interrupting here. */
+ while (i < count)
+ vim_free(files[i++]);
+ break;
+ }
alist_add(al, files[i], use_curbuf ? 2 : 1);
+ ui_breakcheck();
+ }
vim_free(files);
}
else
@@ -9582,7 +9592,7 @@ ex_filetype(eap)
if (*arg == 'd')
{
(void)do_doautocmd((char_u *)"filetypedetect BufRead", TRUE);
- do_modelines();
+ do_modelines(FALSE);
}
}
else if (STRCMP(arg, "off") == 0)
diff --git a/src/fileio.c b/src/fileio.c
index 026bc8f384..b82cd4a6e7 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -370,15 +370,21 @@ readfile(fname, sfname, from, lines_to_skip, lines_to_read, eap, flags)
* file may destroy it! Reported on MS-DOS and Win 95.
* If the name is too long we might crash further on, quit here.
*/
- if (fname != NULL
- && *fname != NUL
- && (vim_ispathsep(*(fname + STRLEN(fname) - 1))
- || STRLEN(fname) >= MAXPATHL))
+ if (fname != NULL && *fname != NUL)
{
- filemess(curbuf, fname, (char_u *)_("Illegal file name"), 0);
- msg_end();
- msg_scroll = msg_save;
- return FAIL;
+ p = fname + STRLEN(fname) - 1;
+ if ((vim_ispathsep(*p)
+#ifdef FEAT_MBYTE
+ /* Do not use a multi-byte char as path separator. */
+ && (!has_mbyte || (*mb_head_off)(fname, p) == 0)
+#endif
+ ) || STRLEN(fname) >= MAXPATHL)
+ {
+ filemess(curbuf, fname, (char_u *)_("Illegal file name"), 0);
+ msg_end();
+ msg_scroll = msg_save;
+ return FAIL;
+ }
}
#ifdef UNIX
@@ -7526,7 +7532,7 @@ ex_doautoall(eap)
/* execute the autocommands for this buffer */
retval = do_doautocmd(eap->arg, FALSE);
- do_modelines();
+ do_modelines(FALSE);
/* restore the current window */
aucmd_restbuf(&aco);
diff --git a/src/gui_kde.cc b/src/gui_kde.cc
index 2be18b9b7a..499db7754b 100644
--- a/src/gui_kde.cc
+++ b/src/gui_kde.cc
@@ -1,4 +1,4 @@
-/* vi:set ts=8 sts=0 sw=8:
+/* vi:set ts=8 sts=4 sw=4:
*
* VIM - Vi IMproved by Bram Moolenaar
*
@@ -371,12 +371,10 @@ gui_mch_destroy_menu(vimmenu_T * menu)//{{{
return;
}
#endif
- if(menu->parent){
- menu->parent->widget->removeItem((int)menu );
- }
- if (menu->widget){
+ if (menu->parent)
+ menu->parent->widget->removeItem((int)menu);
+ if (menu->widget)
delete menu->widget;
- }
menu->widget = 0;
}//}}}
#endif /* FEAT_MENU */
@@ -475,21 +473,24 @@ gui_mch_browse(int saving,//{{{
char_u * filter)
{
char * filt_glob;
- if (filter != (char_u *) 0x0 ) {
+
+ if (filter != (char_u *) 0x0 )
+ {
filter = vim_strsave(filter);
strtok((char *) filter, "(");
filt_glob = strtok(0L, ")");
- } else
+ }
+ else
filt_glob = (char *) filter;
-
+
gui_mch_mousehide(FALSE);
QString s;
- if (! saving)
+ if (!saving)
s = KFileDialog::getOpenFileName( (char *) initdir, (char *) filt_glob, vmw, (char *) title );
else
s = KFileDialog::getSaveFileName( );
-
+
if (filter)
vim_free(filter);
@@ -508,7 +509,7 @@ gui_mch_browse(int saving,//{{{
#ifdef FEAT_GUI_DIALOG
/* ARGSUSED */
-int
+ int
gu