Как преобразовать вкладку vim в вертикально разделенную?

Я просто использую git logи git showили git diff. например.

# git log --oneline /etc/squid/squid.conf
907df30 saving uncommitted changes in /etc prior to apt run
a612769 daily autocommit
6d45b99 saving uncommitted changes in /etc prior to apt run
0f21707 daily autocommit
9a95a9b saving uncommitted changes in /etc prior to apt run
b2518f4 daily autocommit
338b4a7 daily autocommit
862d5e6 committing changes in /etc after apt run
ff6a8fd daily autocommit
2d64d79 saving uncommitted changes in /etc prior to apt run
7e3bb0e Initial commit


# git diff a612769 907df30 /etc/squid/squid.conf
diff --git a/squid/squid.conf b/squid/squid.conf
index 0e08217..e630ed9 100644
--- a/squid/squid.conf
+++ b/squid/squid.conf
@@ -7876,9 +7876,3 @@ forwarded_for off
 #  not all I/O types supports large values (eg on Windows).
 #Default:
 # Use operating system limits set by ulimit.
-
-#httpd_accel_host virtual
-#httpd_accel_port 80
-#httpd_accel_with_proxy on
-#httpd_accel_uses_host_header on
-

Если бы мне нужно было получить полное содержимое конкретной версии файла, я бы использовалgit ls-tree(для получения sha1 файлового блоба )и git cat-fileдля его вывода. например.

# git cat-file blob "$(git ls-tree a612769 /etc/squid/squid.conf | 
                       awk '{print $3}')" > /tmp/squid.conf.a612769
1
31.08.2019, 05:05
1 ответ

TL;DR :Используйте буферы вместо вкладок в Vim.

Если я правильно понимаю, проблема в том, что вы хотите сохранить этот файл в разделенном окне , в то время как вы изменяете файл на другой стороне, чтобы вы могли оставить другой файл видимым.

Оказывается, вкладки в Vim на самом деле не работают таким образом, вкладки представляют собой набор окон, поэтому всякий раз, когда вы меняете вкладки, вы переключаете все окна одновременно. Это весьма полезно, если вы одновременно работаете с отдельными наборами окон.

Но, похоже, это не то, что вам нужно, так как вы хотите изменить файл в одном окне за раз.

Для этой цели вам нужно использовать буферы в Vim, а не вкладки. Буферы — это функции Vim, которые больше всего напоминают вкладки в других редакторах, таких как VS Code.

Просто используйте vim *.pyпри открытии файлов (без опции -p, которая открывает их на вкладках ), и перемещайтесь по ним с помощью :nи:prev(или:N). Затем вы можете разделить с помощью :vsили :spи использовать команды Ctrl -W для переключения и реорганизации окон.

Используйте вкладки, если вы когда-нибудь захотите иметь отдельный набор окон или, возможно, на некоторое время сосредоточитесь на полном -экране одного файла, в то же время сохраняя предыдущую настройку окон, которая у вас была, возвращаясь к нему в любое время.

Возможно, вы захотите прочитать:help buffers(по ссылке здесь ), там довольно подробно рассматриваются все эти концепции.

1
27.01.2020, 23:22

Теги

Похожие вопросы