回答@EliahKagan 的问题/建议:

回答@EliahKagan 的问题/建议:

我刚刚用 更新了 Ubuntu 14.04.5 LTS Software Updater

重新启动后,显然发生了一些变化vim

以前,当使用 打开文件vim,然后:q,然后再次打开它时,它会自动跳转到我正在阅读的最后一行。

更新此版本后,当我打开一些已保存在计算机中的文件,然后:q再次打开它们时,它们会跳转到我一分钟前读取的那一行,但其他文件不会,而是在第 1 行打开。

我没有修改任何东西

/etc/vim/vimrc已取消注释以下几行:

if has("autocmd")
  au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif
endif

我的~/.vimrc只有一行:

syntax on

(所有文件都是普通文本文件)

编辑:

有问题的文件位于文件夹路径 ~/work/(+1000 个字符的文件夹和子文件夹)/file.tex 中

~/work/folder1 上的文件不存在该问题。

和路径的长度有关系吗?

回答@EliahKagan 的问题/建议:

让其~/work/folder1/test_1.tex成为“跳转到最后一个位置”可以正常工作的文件。

让其~/work/folder2/very-long-path-of-folders-and-subfolders--around_1000 characters_of_folders_and_subfolders/test_2.tex成为“跳转到最后一个位置”不起作用的文件。

1)您能将输出添加ls -l ~/.viminfo到您的问题中吗?

david@so1:~$ ls -l ~/.viminfo
-rw------- 1 david david 330206 Jul  9 22:08 /home/david/.viminfo

2)您没有遇到问题的文件是您通常以vimroot 身份运行所编辑的文件吗?

不,我以用户身份运行它们:

david@so1:~$ vi  ~/work/folder1/test_1.tex 

3)输出是什么file /etc/alternatives/vim

david@so1:~/work/folder1$ file /etc/alternatives/vim
/etc/alternatives/vim: symbolic link to `/usr/bin/vim.gtk3' 

4)您知道软件更新程序安装、升级或删除了哪些软件包吗?/var/log/apt/history.log

david@so1:~/work/folder1$ /var/log/apt/history.log
bash: /var/log/apt/history.log: Permission denied

并作为root

david@so1:~/work/folder1$ sudo su
root@so1:/home/david/work/folder1# /var/log/apt/history.log
bash: /var/log/apt/history.log: Permission denied

如果我打开/var/log/apt/history.log文件:

david@so1:~/work/folder1$ vim /var/log/apt/history.log

我看到以下内容:

Start-Date: 2017-07-03  22:05:01
Commandline: apt-get install pandoc
Install: pandoc:amd64 (1.12.2.1-1build2), pandoc-data:amd64 (1.12.2.1-1build2, automatic)
End-Date: 2017-07-03  22:05:04

Start-Date: 2017-07-09  18:54:46
Commandline: aptdaemon role='role-commit-packages' sender=':1.682'
Install: linux-headers-4.4.0-83-generic:amd64 (4.4.0-83.106~14.04.1), linux-image-4.4.0-83-generic:amd64 (4.4.0-83.106~14.04.1), linux-headers-4.4.0-83:amd64 (4.4.0-83.106~14.04.1), linux-signed-image-4.4.0-83-generic:amd64 (4.4.0-83.106~14.04.1), linux-image-extra-4.4.0-83-generic:amd64 (4.4.0-83.106~14.04.1)

5)我注意到一件非常有趣的事情:

david@so1:~$ sudo su
[sudo] password for david: 
root@so1:/home/david# cd work/folder1/
root@so1:/home/david/work/folder1# ls
test_1.tex
root@so1:/home/david/work/folder1# vim test_1.tex 

并且在打开文件时,可以将光标移动到您指向和单击的位置。

但是,当以下列格式打开文件时user

root@so1:/home/david/work/folder1# exit
exit
david@so1:~$ cd work/folder1/
david@so1:~/work/folder1$ ls
test_1.tex
david@so1:~/work/folder1$ vi test_1.tex 

点击光标不起作用(其实我更喜欢这样,所以我不想修改它)。

如果我现在以如下方式打开有问题的文件root

root@so1:/home/david/work/folder2/very-long-path-of-folders-and-subfolders--around_1000_characters_of_folders_and_subfolders# vi test_2.tex

我遇到了“跳到最后一个位置”的问题。

6)这也更加有趣:

如果我复制该文件:

david@so1:~/work/folder2/very-long-path-of-folders-and-subfolders--around_1000_characters_of_folders_and_subfolders$ cp test_2.tex  ~/Documents/

然后打开它:

david@so1:~/Documents$ vi test_2.tex 

然后“跳转到最后一个位置”确实有效......

那么问题可能出在哪里?

回答@muru 的问题/建议:

如果我做:

david@so1:~/work/folder2/very-long-path-of-folders-and-subfolders--around_1000_characters_of_folders_and_subfolders$ vim test_2.tex 

我确实:scriptnames收到了以下信息:

  1: /usr/share/vim/vimrc
  2: /usr/share/vim/vim80/debian.vim
  3: ~/.vimrc
  4: /usr/share/vim/vim80/syntax/syntax.vim
  5: /usr/share/vim/vim80/syntax/synload.vim
  6: /usr/share/vim/vim80/syntax/syncolor.vim
  7: /usr/share/vim/vim80/filetype.vim
  8: /usr/share/vim/vim80/plugin/getscriptPlugin.vim
  9: /usr/share/vim/vim80/plugin/gzip.vim
 10: /usr/share/vim/vim80/plugin/logiPat.vim
 11: /usr/share/vim/vim80/plugin/manpager.vim
 12: /usr/share/vim/vim80/plugin/matchparen.vim
 13: /usr/share/vim/vim80/plugin/netrwPlugin.vim
 14: /usr/share/vim/vim80/plugin/rrhelper.vim
 15: /usr/share/vim/vim80/plugin/spellfile.vim
 16: /usr/share/vim/vim80/plugin/tarPlugin.vim
 17: /usr/share/vim/vim80/plugin/tohtml.vim
 18: /usr/share/vim/vim80/plugin/vimballPlugin.vim
 19: /usr/share/vim/vim80/plugin/zipPlugin.vim
 20: /usr/share/vim/vim80/syntax/tex.vim

其结果:autocmd是:http://paste.ubuntu.com/25060281/

(由于该命令的输出很长,我无法直接在这里发布)

新更新:

在这个有问题的文件夹上运行时ipython,我收到此错误消息:

david@so1:~/work/folder2/very-long-path-of-folders-and-subfolders--around_1000_characters_of_folders_and_subfolders$ ipython    
[TerminalIPythonApp] ERROR | Current working directory doesn't exist.

与任何其他文件夹中的预期结果相反:

david@so1:~/home/david/work/folder1$ ipython
Python 2.7.11 |Anaconda 4.0.0 (64-bit)| (default, Dec  6 2015, 18:08:32) 
Type "copyright", "credits" or "license" for more information.

IPython 4.1.2 -- An enhanced Interactive Python.
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]:

因此,这个有问题的文件夹一定发生了一些事情

相关内容