В некоторых файлах vim переходит к последнему месту моего последнего редактирования. В других файлах этого не происходит

Я только что обновил 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) Файлы, для которых у вас нет проблемных файлов, которые вы обычно редактируете, запустив vim как корень?

Нет, я запускаю их как пользователь:

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) Знаете ли вы, какие пакеты Software Updater установлены, обновлены или удалены? /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]:

Итак, что-то должно происходить в этой проблемной папке

0 ответов

Другие вопросы по тегам