mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
updated for version 7.0038
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
*todo.txt* For Vim version 7.0aa. Last change: 2005 Jan 11
|
*todo.txt* For Vim version 7.0aa. Last change: 2005 Jan 14
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -30,13 +30,42 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
|
|||||||
*known-bugs*
|
*known-bugs*
|
||||||
-------------------- Known bugs and current work -----------------------
|
-------------------- Known bugs and current work -----------------------
|
||||||
|
|
||||||
Fixes in ex_getln.c also in Vim 6.3.
|
"daw" doesn't delete white space before single word in line. (Jens Paulus)
|
||||||
|
|
||||||
|
Dictionary:
|
||||||
|
- filter() for dictionaries: :call filter(dict, '& =~ "bla.*"')
|
||||||
|
& for key, &v for value?
|
||||||
|
- functions:
|
||||||
|
len(dict) nr of items
|
||||||
|
copy(dict) make a copy
|
||||||
|
deepcopy(dict) make a copy recursively
|
||||||
|
has_key(dict, key) whether key is present
|
||||||
|
getval(dict, key [, default])
|
||||||
|
extend(dict1, dict2) add items from dict2 to dict1
|
||||||
|
- Using "self" in function with "dict" attribute. Also allow l:self.
|
||||||
|
Such a function must be called from a dictionary entry.
|
||||||
|
Third argument of call() passes dictionary:
|
||||||
|
:let res = call(function("DictFunc"), arglist, mydict)
|
||||||
|
- Define nameless function: ":function dict.key(arg)"
|
||||||
|
- ":delfunc dict.key".
|
||||||
|
- ":unlet dict.key" "unlet list[idx]"
|
||||||
|
|
||||||
|
Mention Rsync command on runtime.php page:
|
||||||
|
rsync -avzcP --delete --exclude="dos" --delete-excluded ftp.nluug.nl::Vim/runtime/ vim63-runtime
|
||||||
|
|
||||||
List type:
|
List type:
|
||||||
|
- Make second index in list[i:j] exclusive, like Python?
|
||||||
|
Marcus Aurelius: yes
|
||||||
- Add List functions to version7.txt.
|
- Add List functions to version7.txt.
|
||||||
- Add List functions to overview of funtions in user manual.
|
- Add List functions to overview of funtions in user manual.
|
||||||
- Explain Lists in the user manual?
|
- Explain Lists in the user manual?
|
||||||
|
|
||||||
|
Add +=, -= and .= assignments.
|
||||||
|
|
||||||
|
netrw plugin:
|
||||||
|
- provide :Explore and :Sexplore like the old file explorer?
|
||||||
|
- alignment of long listing isn't very good.
|
||||||
|
|
||||||
Better way to get temp file for tcltags and vimspell scripts. (javier Pena)
|
Better way to get temp file for tcltags and vimspell scripts. (javier Pena)
|
||||||
Possibly leave out code for temp directory.
|
Possibly leave out code for temp directory.
|
||||||
|
|
||||||
@@ -124,6 +153,10 @@ PLANNED FOR VERSION 7.0:
|
|||||||
- Check Readline for its completion interface.
|
- Check Readline for its completion interface.
|
||||||
- Use ctags for other languages. Writing a file could trigger running
|
- Use ctags for other languages. Writing a file could trigger running
|
||||||
ctags, merging the tags of the changed file.
|
ctags, merging the tags of the changed file.
|
||||||
|
Also see "Visual Assist" http://www.wholetomato.com/products:
|
||||||
|
- Put the list of choices right under the place where they would be
|
||||||
|
inserted.
|
||||||
|
- Pre-expand abbreviations, show which abbrevs would match?
|
||||||
- UNDO TREE: keep all states of the text, don't delete undo info.
|
- UNDO TREE: keep all states of the text, don't delete undo info.
|
||||||
When making a change, instead of clearing any future undo (thus redo)
|
When making a change, instead of clearing any future undo (thus redo)
|
||||||
info, make a new branch.
|
info, make a new branch.
|
||||||
@@ -144,6 +177,7 @@ PLANNED FOR VERSION 7.0:
|
|||||||
extension: ".filename.un~" (like swapfile but "un~" instead of "swp").
|
extension: ".filename.un~" (like swapfile but "un~" instead of "swp").
|
||||||
7 Support WINDOW TABS. Works like several pages, each with their own
|
7 Support WINDOW TABS. Works like several pages, each with their own
|
||||||
split windows. Patch for GTK 1.2 passed on by Christian Michon, 2004 Jan 6.
|
split windows. Patch for GTK 1.2 passed on by Christian Michon, 2004 Jan 6.
|
||||||
|
Don't forget to provide an "X" to close a tab.
|
||||||
Also for the console!
|
Also for the console!
|
||||||
In Emacs these are called frames. Could also call them "pages".
|
In Emacs these are called frames. Could also call them "pages".
|
||||||
Use "1gt" - "99gt" to switch to a tab?
|
Use "1gt" - "99gt" to switch to a tab?
|
||||||
@@ -244,6 +278,10 @@ List data type performance:
|
|||||||
- Cache the last used index?
|
- Cache the last used index?
|
||||||
- Use blocks of items, so that finding an item by index is faster?
|
- Use blocks of items, so that finding an item by index is faster?
|
||||||
|
|
||||||
|
Dictionary data type performance:
|
||||||
|
- Use a hash to locate items
|
||||||
|
|
||||||
|
|
||||||
Awaiting updated patches:
|
Awaiting updated patches:
|
||||||
--- awaiting updated patch ---
|
--- awaiting updated patch ---
|
||||||
7 Add patch from Wall for this one ( ~/Mail/oldmail/wall/in.00019 ):
|
7 Add patch from Wall for this one ( ~/Mail/oldmail/wall/in.00019 ):
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
*version7.txt* For Vim version 7.0aa. Last change: 2005 Jan 11
|
*version7.txt* For Vim version 7.0aa. Last change: 2005 Jan 14
|
||||||
|
|
||||||
|
|
||||||
VIM REFERENCE MANUAL by Bram Moolenaar
|
VIM REFERENCE MANUAL by Bram Moolenaar
|
||||||
@@ -51,6 +51,10 @@ buffer is still modified compared to the original file. And when undoing
|
|||||||
all changes the file would actually be marked modified. It does mean that
|
all changes the file would actually be marked modified. It does mean that
|
||||||
":quit" fails now.
|
":quit" fails now.
|
||||||
|
|
||||||
|
In a |literal-string| a single quote can be doubled to get one.
|
||||||
|
":echo 'a''b'" would result in "a b", but now that two quotes stand for one it
|
||||||
|
results in "a'b".
|
||||||
|
|
||||||
|
|
||||||
Minor incompatibilities:
|
Minor incompatibilities:
|
||||||
|
|
||||||
@@ -76,9 +80,9 @@ Win32: The effect of the <F10> key depended on 'winaltkeys'. Now it depends
|
|||||||
on whether <F10> has been mapped or not. This allows mapping <F10> without
|
on whether <F10> has been mapped or not. This allows mapping <F10> without
|
||||||
changing 'winaltkeys'.
|
changing 'winaltkeys'.
|
||||||
|
|
||||||
When using CTRL-A on "08" it became "018", which is illogical. Now it becomes
|
When 'octal' is in 'nrformats' and using CTRL-A on "08" it became "018", which
|
||||||
"9". The leading zero(s) is(are) removed to avoid the number becoming octal
|
is illogical. Now it becomes "9". The leading zero(s) is(are) removed to
|
||||||
after incrementing "009" to "010".
|
avoid the number becoming octal after incrementing "009" to "010".
|
||||||
|
|
||||||
When 'encoding' is set to a Unicode encoding, the value for 'fileencodings'
|
When 'encoding' is set to a Unicode encoding, the value for 'fileencodings'
|
||||||
now includes "default" before "latin1". This means that for files with 8-bit
|
now includes "default" before "latin1". This means that for files with 8-bit
|
||||||
@@ -106,10 +110,6 @@ The |string()| function can be used to get a string representation of a
|
|||||||
variable. Works for Numbers, Strings and composites of them. Then |eval()|
|
variable. Works for Numbers, Strings and composites of them. Then |eval()|
|
||||||
can be used to turn the string back into the variable value.
|
can be used to turn the string back into the variable value.
|
||||||
|
|
||||||
The |sharp-string| has been added as a convenient way to put an expression in
|
|
||||||
a string. Examples: >
|
|
||||||
:let l = filter(mylist, # & =~ '^\A'#)
|
|
||||||
|
|
||||||
|
|
||||||
KDE support *new-KDE*
|
KDE support *new-KDE*
|
||||||
-----------
|
-----------
|
||||||
@@ -392,6 +392,8 @@ a bit less dependent on the X11 font management.
|
|||||||
|
|
||||||
When a register is empty it is not stored in the viminfo file.
|
When a register is empty it is not stored in the viminfo file.
|
||||||
|
|
||||||
|
Removed the tcltags script, it's obsolete.
|
||||||
|
|
||||||
==============================================================================
|
==============================================================================
|
||||||
COMPILE TIME CHANGES *compile-changes-7*
|
COMPILE TIME CHANGES *compile-changes-7*
|
||||||
|
|
||||||
@@ -662,4 +664,7 @@ mode. (Peter Winters)
|
|||||||
|
|
||||||
"2daw" didn't work at end of file if the last word is a single character.
|
"2daw" didn't work at end of file if the last word is a single character.
|
||||||
|
|
||||||
|
Completion for ":next a'<Tab>" put a backslash before single quote, but it was
|
||||||
|
not removed when editing a file. Now halve backslashes in save_patterns().
|
||||||
|
|
||||||
vim:tw=78:ts=8:ft=help:norl:
|
vim:tw=78:ts=8:ft=help:norl:
|
||||||
|
@@ -1,6 +1,8 @@
|
|||||||
" Polish letters keymap for cp1250
|
" Polish letters keymap for cp1250
|
||||||
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
" Maintainer: HS6_06 <hs6_06@o2.pl>
|
||||||
" Last Changed: 2005 Jan 9
|
" Last Changed: 2005 Jan 12
|
||||||
|
" Current version: 1.0.2
|
||||||
|
" History: see polish-slash.vim
|
||||||
|
|
||||||
" This keymap adds the special Polish letters
|
" This keymap adds the special Polish letters
|
||||||
" to an existing Latin keyboard.
|
" to an existing Latin keyboard.
|
||||||
@@ -9,7 +11,7 @@
|
|||||||
" instead of AltGr+{acelnosxz} you ve to use "/" followed by {acelnosxz}
|
" instead of AltGr+{acelnosxz} you ve to use "/" followed by {acelnosxz}
|
||||||
|
|
||||||
" short keymap name for statusline
|
" short keymap name for statusline
|
||||||
let b:keymap_name = "polish-slash-cp1250"
|
let b:keymap_name = "PL-slash-WIN"
|
||||||
|
|
||||||
scriptencoding latin1
|
scriptencoding latin1
|
||||||
|
|
||||||
|
@@ -1,159 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# vim:ts=4:
|
|
||||||
# Generates a tag file for TCL code. Slow, but gets the job done.
|
|
||||||
#
|
|
||||||
# Written by Darren Hiebert <darren@hiebert.com>
|
|
||||||
|
|
||||||
program_name=`basename $0`
|
|
||||||
program_version="0.3"
|
|
||||||
program_author="Darren Hiebert"
|
|
||||||
author_email="darren@hiebert.com"
|
|
||||||
tmp_tagfile=/tmp/${program_name}.$$
|
|
||||||
|
|
||||||
usage="\
|
|
||||||
Usage: $program_name [-au] [-{f|o} tagfile] [--format=n] file(s)
|
|
||||||
-a append to current tag file
|
|
||||||
-f tagfile specify output tag file name (default=tags)
|
|
||||||
-o alternative for -f
|
|
||||||
-u unsorted
|
|
||||||
--format=n specify tag file format (default=2)
|
|
||||||
--help print this help message
|
|
||||||
"
|
|
||||||
|
|
||||||
# defaults
|
|
||||||
#
|
|
||||||
append=0
|
|
||||||
format=2
|
|
||||||
sorted=1
|
|
||||||
tagfile=tags
|
|
||||||
filelist=
|
|
||||||
|
|
||||||
# read options
|
|
||||||
#
|
|
||||||
getparam()
|
|
||||||
{
|
|
||||||
if [ -n "$1" ]; then
|
|
||||||
# set variable to word passed in
|
|
||||||
echo "$2='$1'; opt="
|
|
||||||
else
|
|
||||||
# set variable to next word on command line
|
|
||||||
echo "$2="'$1'"; shift"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
finished=0
|
|
||||||
while [ $# -gt 0 -a $finished -eq 0 ]
|
|
||||||
do
|
|
||||||
case "$1" in
|
|
||||||
--*)
|
|
||||||
opt=`echo "$1" | cut -c 3-`
|
|
||||||
shift
|
|
||||||
opt_name=`echo "$opt" | awk -F= '{print $1}'`
|
|
||||||
opt_value=`echo "$opt" | awk -F= '{print $2}'`
|
|
||||||
case "$opt_name" in
|
|
||||||
format) case "$opt_value" in
|
|
||||||
1|2) format=$opt_value;;
|
|
||||||
*) echo "--$opt: unsupported value" >&2; exit 1;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
help) echo "$usage"; exit 0;;
|
|
||||||
*) echo "$opt_name: unsupported option" >&2; exit 1;;
|
|
||||||
esac
|
|
||||||
;;
|
|
||||||
-*)
|
|
||||||
# chop off leading '-'
|
|
||||||
opt=`echo "$1" | cut -c 2-`
|
|
||||||
shift
|
|
||||||
while [ -n "$opt" ]
|
|
||||||
do
|
|
||||||
opt_char=`echo "$opt" | cut -c 1`
|
|
||||||
opt=`echo "$opt" | cut -c 2-`
|
|
||||||
case "$opt_char" in
|
|
||||||
a) append=1;;
|
|
||||||
u) sorted=0;;
|
|
||||||
o|f) eval `getparam "$opt" tagfile`;;
|
|
||||||
*) echo "$opt: unsupported option" >&2; exit 1;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
;;
|
|
||||||
*) filelist="$*"; break;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ -z "$filelist" ] ;then
|
|
||||||
echo "$usage" >&2; exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# awk program for generating tags
|
|
||||||
#
|
|
||||||
ext_flags=""
|
|
||||||
ttype=""
|
|
||||||
if [ $format -eq 2 ] ;then
|
|
||||||
ext_flags=';\" %s'
|
|
||||||
ttype=", type"
|
|
||||||
fi
|
|
||||||
awkprg='
|
|
||||||
function trim_comment(string) {
|
|
||||||
comment = index(string, "#")
|
|
||||||
if (comment != 0)
|
|
||||||
string = substr(string, 0, comment-1)
|
|
||||||
return string
|
|
||||||
}
|
|
||||||
function maketag(tagname, pattern, type, line_end) {
|
|
||||||
gsub(/\\/, "\\\\", pattern)
|
|
||||||
gsub(/\//, "\\/", pattern)
|
|
||||||
if (line_end)
|
|
||||||
terminator="$"
|
|
||||||
else
|
|
||||||
terminator=""
|
|
||||||
printf("%s\t%s\t/^%s%s/'"$ext_flags"'\n", \
|
|
||||||
tagname, FILENAME, pattern, terminator'"$ttype"')
|
|
||||||
}
|
|
||||||
$1 == "proc" && $3 ~ /^{/ {
|
|
||||||
pattern = substr($0, 0, index($0, "{"))
|
|
||||||
maketag($2, pattern, "f", 0)
|
|
||||||
}
|
|
||||||
/^set[ \t]/ && $2 !~ /\(/ {
|
|
||||||
pattern = substr($0, 0, index($0, $2) + length($2))
|
|
||||||
maketag($2, pattern, "v", 0)
|
|
||||||
}
|
|
||||||
/^array[ \t]*set[ \t]/ && $3 !~ /\(/ {
|
|
||||||
pattern = substr($0, 0, index($0, $3) + length($3))
|
|
||||||
maketag($3, pattern, "v", 0)
|
|
||||||
}'
|
|
||||||
|
|
||||||
# add or correct the pseudo tags
|
|
||||||
#
|
|
||||||
if [ "$tagfile" != "-" ] ;then
|
|
||||||
if [ $append -eq 1 ]; then
|
|
||||||
# ensure existing sort flag is correct
|
|
||||||
sed -e "/^!_TAG_FILE_SORTED/s/ [01] / $sorted /" \
|
|
||||||
-e "/^!_TAG_FILE_FORMAT/s/ 1 / $format /" \
|
|
||||||
$tagfile > $tmp_tagfile
|
|
||||||
else
|
|
||||||
echo -ne "\
|
|
||||||
!_TAG_FILE_FORMAT $format /extended format; --format=1 will not append ;\" to lines/
|
|
||||||
!_TAG_FILE_SORTED $sorted /0=unsorted, 1=sorted/
|
|
||||||
!_TAG_PROGRAM_AUTHOR $program_author /$author_email/
|
|
||||||
!_TAG_PROGRAM_NAME $program_name //
|
|
||||||
!_TAG_PROGRAM_VERSION $program_version //
|
|
||||||
" > $tmp_tagfile
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
# generate tags
|
|
||||||
#
|
|
||||||
awk "$awkprg" $filelist >> $tmp_tagfile
|
|
||||||
|
|
||||||
if [ $sorted -eq 1 ] ;then
|
|
||||||
sort -u -o $tmp_tagfile $tmp_tagfile
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$tagfile" = '-' ] ;then
|
|
||||||
cat $tmp_tagfile
|
|
||||||
else
|
|
||||||
cp $tmp_tagfile $tagfile
|
|
||||||
fi
|
|
||||||
rm $tmp_tagfile
|
|
||||||
|
|
||||||
exit 0
|
|
1107
src/eval.c
1107
src/eval.c
File diff suppressed because it is too large
Load Diff
@@ -905,6 +905,9 @@ do_filter(line1, line2, eap, cmd, do_in, do_out)
|
|||||||
curbuf->b_op_end.lnum -= linecount; /* adjust '] */
|
curbuf->b_op_end.lnum -= linecount; /* adjust '] */
|
||||||
write_lnum_adjust(-linecount); /* adjust last line
|
write_lnum_adjust(-linecount); /* adjust last line
|
||||||
for next write */
|
for next write */
|
||||||
|
#ifdef FEAT_FOLDING
|
||||||
|
foldUpdate(curwin, curbuf->b_op_start.lnum, curbuf->b_op_end.lnum);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -914,6 +917,7 @@ do_filter(line1, line2, eap, cmd, do_in, do_out)
|
|||||||
curwin->w_cursor.lnum = curbuf->b_op_end.lnum;
|
curwin->w_cursor.lnum = curbuf->b_op_end.lnum;
|
||||||
linecount = curbuf->b_op_end.lnum - curbuf->b_op_start.lnum + 1;
|
linecount = curbuf->b_op_end.lnum - curbuf->b_op_start.lnum + 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
beginline(BL_WHITE | BL_FIX); /* cursor on first non-blank */
|
beginline(BL_WHITE | BL_FIX); /* cursor on first non-blank */
|
||||||
--no_wait_return;
|
--no_wait_return;
|
||||||
|
|
||||||
|
@@ -4240,7 +4240,7 @@ gui_mch_font_dialog(char_u *oldval)
|
|||||||
GTK_FONT_SELECTION_DIALOG(dialog), (const char *)oldname);
|
GTK_FONT_SELECTION_DIALOG(dialog), (const char *)oldname);
|
||||||
|
|
||||||
if (oldname != oldval)
|
if (oldname != oldval)
|
||||||
vim_free(oldval);
|
vim_free(oldname);
|
||||||
}
|
}
|
||||||
|
|
||||||
response = gtk_dialog_run(GTK_DIALOG(dialog));
|
response = gtk_dialog_run(GTK_DIALOG(dialog));
|
||||||
|
Reference in New Issue
Block a user