summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2005-12-14 22:08:35 +0000
committerBram Moolenaar <Bram@vim.org>2005-12-14 22:08:35 +0000
commitbca84a12bdbb4bb33e9ba32bfe320abbf54ae5fb (patch)
tree7a3e5e91df211e51914098550a5a5bfca0760c69
parent38f1825274b07d66ecb264316aaeba286e937fb8 (diff)
updated for version 7.0170v7.0170
-rw-r--r--runtime/doc/todo.txt13
-rw-r--r--runtime/doc/version7.txt10
-rw-r--r--src/ex_cmds.c25
-rw-r--r--src/ex_cmds.h2
4 files changed, 38 insertions, 12 deletions
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index c0030b0ab9..5bc0035a44 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0aa. Last change: 2005 Dec 13
+*todo.txt* For Vim version 7.0aa. Last change: 2005 Dec 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,13 +30,12 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
-ml_get error with specific vimrc and lots of plugins. (Tomi Mickelsson)
+Using pipes to decrypt text still doesn't work, can't get the password.
+ :set shell=/bin/sh noshelltemp
+ :%!gpg --decrypt --no-tty --passphrase-fd 2
-Win32: preserve the hidden attribute of the viminfo file.
-
-Add ":startgreplace" to do "gR", like ":startreplace" does "R".
-
-Alt-mousekey is currently ignored. Use it for Visual/select block?
+When inside input() and using "CTRL-R =" causing an exception the command line
+isn't abandoned. (Yukihiro Nakadaira)
When 'delcombine' is set in Select mode before a character with a combining
char the combining char is deleted when it shouldn't. (Tony Mechelynck, Nov
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index c598635a13..afc3497df5 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0aa. Last change: 2005 Dec 13
+*version7.txt* For Vim version 7.0aa. Last change: 2005 Dec 14
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -367,6 +367,9 @@ CTRL-W <Enter> In the quickfix window: opens a new window to show the
|at| and |it| text objects select a block of text between HTML or XML tags.
+<A-LeftMouse> ('mousemodel' "popup" or "popup-setpos")
+<A-RightMouse> ('mousemodel' "extend")
+ Make a blockwise selection. |<A-LeftMouse>|
Insert mode commands: ~
@@ -407,6 +410,7 @@ Ex commands: ~
Win32: The ":winpos" command now also works in the console. (Vipin Aravind)
|:startreplace| Start Replace mode. (Charles Campbell)
+|:startgreplace| Start Virtual Replace mode.
|:0file| Removes the name of the buffer. (Charles Campbell)
@@ -431,6 +435,7 @@ Win32: The ":winpos" command now also works in the console. (Vipin Aravind)
|:cexpr| Read error messages from a Vim expression (Yegappan
Lakshmanan).
+
Ex command modifiers: ~
|:keepalt| Do not change the alternate file.
@@ -902,6 +907,9 @@ When starting to edit a new file and the directory for the file doesn't exist
then Vim will report "[New DIRECTORY]" instead of "[New File] to give the user
a hint that something might be wrong.
+Win32: Preserve the hidden attribute of the viminfo file.
+
+
==============================================================================
COMPILE TIME CHANGES *compile-changes-7*
diff --git a/src/ex_cmds.c b/src/ex_cmds.c
index 1dcbb2be09..1d8348d297 100644
--- a/src/ex_cmds.c
+++ b/src/ex_cmds.c
@@ -1656,6 +1656,9 @@ write_viminfo(file, forceit)
int shortname = FALSE; /* use 8.3 file name */
struct stat st_old; /* mch_stat() of existing viminfo file */
#endif
+#ifdef WIN3264
+ long perm = -1;
+#endif
if (no_viminfo())
return;
@@ -1713,6 +1716,10 @@ write_viminfo(file, forceit)
goto end;
}
#endif
+#ifdef WIN3264
+ /* Get the file attributes of the existing viminfo file. */
+ perm = mch_getperm(fname);
+#endif
/*
* Make tempname.
@@ -1803,15 +1810,16 @@ write_viminfo(file, forceit)
int fd;
/* Use mch_open() to be able to use O_NOFOLLOW and set file
- * protection same as original file, but strip s-bit. */
+ * protection:
+ * Unix: same as original file, but strip s-bit.
+ * Others: r&w for user only. */
#ifdef UNIX
fd = mch_open((char *)tempname,
O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW,
(int)((st_old.st_mode & 0777) | 0600));
#else
fd = mch_open((char *)tempname,
- O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW,
- 0600); /* r&w for user only */
+ O_CREAT|O_EXTRA|O_EXCL|O_WRONLY|O_NOFOLLOW, 0600);
#endif
if (fd < 0)
fp_out = NULL;
@@ -1866,12 +1874,21 @@ write_viminfo(file, forceit)
if (fp_in != NULL)
{
fclose(fp_in);
+
/*
- * In case of an error, don't overwrite the original viminfo file.
+ * In case of an error keep the original viminfo file.
+ * Otherwise rename the newly written file.
*/
if (viminfo_errcnt || vim_rename(tempname, fname) == -1)
mch_remove(tempname);
+
+#ifdef WIN3264
+ /* If the viminfo file was hidden then also hide the new file. */
+ if (perm > 0 && (perm & FILE_ATTRIBUTE_HIDDEN))
+ mch_hide(fname);
+#endif
}
+
end:
vim_free(fname);
vim_free(tempname);
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index 87c9e6a232..4c4ab6ff07 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -781,6 +781,8 @@ EX(CMD_stag, "stag", ex_stag,
RANGE|NOTADR|BANG|WORD1|TRLBAR|ZEROR),
EX(CMD_startinsert, "startinsert", ex_startinsert,
BANG|TRLBAR|CMDWIN),
+EX(CMD_startgreplace, "startgreplace", ex_startinsert,
+ BANG|TRLBAR|CMDWIN),
EX(CMD_startreplace, "startreplace", ex_startinsert,
BANG|TRLBAR|CMDWIN),
EX(CMD_stopinsert, "stopinsert", ex_stopinsert,