Vim как открыть второй файл

Обновлено: 04.07.2024

Что случилось с вами, так это то, что когда программа C была скомпилирована на ассемблере, ваша функция toUpper закончилась так:

Вычитание 32 было выполнено в% eax регистр. И в соглашении на вызов x86, это регистр, в котором ожидается возвращаемое значение! Итак . вам повезло.

Но, пожалуйста, обратите внимание на предупреждения. Они там по какой-то причине!

Почему бы не использовать вкладки (представленный в Vim 7)? Можно переключиться между вкладками с :tabn и :tabp , С :tabe <filepath> можно добавить новую вкладку; и с постоянным клиентом :q или :wq Вы закрываете вкладку. Если Вы карта :tabn и :tabp к Вашему F7 / ключи F8 можно легко переключиться между файлами.

, Если нет то, что у многих файлов или Вас нет Vim 7, можно также разделить экран в нескольких файлах: :sp <filepath> . Тогда можно переключиться между splitscreens с Ctrl + W и затем клавишей со стрелкой в направлении, которое Вы хотите переместить (или вместо клавиш со стрелками, w для следующего и W для предыдущего splitscreen)

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

350 открытыми файлами):

  • :b <partial filename><tab> (переход к буферу)
  • :bw (буферная очистка, удалите буфер)
  • :e <file path> (редактирование, откройтесь, новый буфер>
  • pltags - позволяют перейти к определениям подпрограммы/метода

Vim (но не исходная Vi!) имеет вкладки, которые я нахожу (во многих контекстах) выше буферов. Можно сказать :tabe [filename] для открытия файла на новой вкладке. Циклическое повторение между вкладками сделано путем нажатия на вкладку или сочетаниями клавиш [ n] gt и gT . Графический Vim даже имеет графические вкладки.

Я использую буферные команды - :bn (следующий буфер), :bp (предыдущий буфер) :buffers (список, открытые буферы) :b<n> (открытый буфер n) :bd (удаляют буфер). :e <filename> просто откроется в новый буфер.

Добавить к эти args список:

Для удаления из эти args список:

В Вашем примере, Вы могли использовать :argedit test.pl, чтобы добавить test.pl к эти args список и отредактировать файл за один шаг.

:help args предоставляет намного больше подробной информации и усовершенствованного использования

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

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

Это ударяет существующие отображения для H и L, но это делает переключение между файлами чрезвычайно быстрым и легким. Просто хит "H" для следующего и "L" для предыдущего; используете ли Вы вкладки или буферы, Вы получите намеченные результаты.

Я думаю, что можно использовать неправильную команду для рассмотрения списка файлов, которые Вы имеете открытый.

Попытка, делающая :ls для наблюдения список файлов, которые Вы имеете открытый и Вы будете видеть:

можно тогда возвратиться через файлы путем обращения к ним числами, перечисленными, например:3b

, или можно разделить экран путем введения номера, но использования сурьмы вместо просто b.

можно легко переключиться между этими двумя файлами путем нажатия Ctrl Редактирование 6

Сдвига: как :ls можно использовать :reg для наблюдения текущего содержания регистров включая 0-9 регистров, которые содержат то, что Вы удалили. Это особенно полезно, если Вы хотите снова использовать некоторый текст, который Вы ранее удалили.

для списка открытых буферов

  • :bp предыдущий буфер
  • :bn следующий буфер
  • :bn ( n число) перемещаются в буфер n'th
  • :b <filename-part> с автозавершением обеспечения клавиши Tab (потрясающий!!)

В некоторых версиях энергии, bn и bp на самом деле bnext и bprevious соответственно. Автоматическое заполнение вкладки полезно в этом случае.

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

Плюс, можно сохранить сессии энергии

, вышеупомянутая команда сохраняет текущие открытые буферы файлов и настройки к [1 113]. Можно загрузить ту сессию при помощи [1 122]

Никакая стычка, помнящая, где Вы вчера кончили.;)

Список

Для наблюдения списка текущих буферов я использую:

Открытие

To открывают новый файл, я использую

с расширенным заполнением клавишей Tab (поместите set wildmenu в Ваш .vimrc ).

Примечание: можно также использовать :find , который будет искать ряд путей Вас, но необходимо настроить те пути сначала.

Переключение

Для переключения между всеми открытыми файлами я использую

с расширенным заполнением клавишей Tab (все еще set wildmenu ).

Используя окна

Ctrl-W s и Ctrl-W v для разделения текущего окна горизонтально и вертикально. Можно также использовать :split и :vertical split ( :sp и :vs )

Ctrl-W w для переключения между открытыми окнами, и Ctrl-W h (или j или k или l ) для навигации через открытые окна.

Ctrl-W c для закрытия текущего окна, и Ctrl-W o для закрытия всех окон кроме текущего.

Стартовая энергия с -o или -O флаг открывает каждый файл в своем собственном разделении.

Со всеми они мне не нужны вкладки в Vim, и мои пальцы находят мои буферы, не мои глаза.

Примечание: если Вы хотите, чтобы все файлы перешли к тому же экземпляру Vim, запустите Vim с --remote-silent опция.

Я знаю, что могу открыть несколько файлов с vim помощью чего-то вроде vim 2011-12*.log , но как я могу переключаться между файлами и закрывать файлы по одному? Кроме того, как я могу сказать имя текущего файла, который я редактирую?

Прежде всего, в vim вы можете ввести : (двоеточие), а затем help help , аля :help список тем самопомощи, включая краткое руководство. В списке тем наведите курсор на интересующую тему, а затем нажмите, ctrl ] и эта тема будет открыта.

Хорошее место для вас будет тема

Хорошо, к вашему ответу.

После запуска vim со списком файлов, вы можете перейти к следующему файлу, введя :next или :n для краткости. :wnext сокращение для записи текущих изменений, а затем перейти к следующему файлу.

Там тоже аналог :previous , :wprevious и :Next . (Обратите внимание, что :p это сокращение для :print . Сокращение для :previous это :prev или :N .)

Чтобы увидеть, где вы находитесь в списке файлов, введите, :args и файл, который в данный момент редактируется, появится в [] (скобках).

Относительно нескольких буферов / окон / вкладок см. Также StackOverflow. Как эффективно работать с несколькими файлами в Vim? и использование вкладок Vim, таких как буферы . Глава 22 «Поиск файла для редактирования» также оказалась очень полезной. Он использует обозреватель каталогов для редактирования файлов, которые вы хотите.

Вы можете открыть другой файл, когда vim открыт, :tabe filename и переключиться на другой файл, который вы набираете, :tabn или :tabp для следующего и предыдущего соответственно.

Сочетания клавиш gT и gt также можно использовать для переключения вкладок, когда вы не находитесь в режиме редактирования (т.е. не в режимах вставки, замены и т. Д.). В некоторых системах Ctrl + Alt + Page Up и Ctrl + Alt + Page Down также допускается переключение табуляции, но это не всегда работает (например, оно не будет работать в терминале OS X «из коробки»).

И вы можете увидеть имя файла в верхней части приложения VIM.

Этот. Также открывайте файлы во вкладках с помощью: vim -p file1 file2 AMAZE! Я никогда не сталкивался с этим раньше, несмотря на то, что использовал vim годами. Это меняет все . Обратите внимание, что вкладки не предназначены для работы с несколькими файлами. Они предназначены для работы с несколькими макетами . Смотрите статью . Если вы уже в vim и хотите добавить другой файл, вы можете использовать: :argadd filename и затем :next к нему. Кроме того, вы можете использовать, :argdel filename чтобы удалить один из файлов в редактировании.

Команды для переключения между буферами:

:help buffer найти больше информации

Чтобы узнать имя файла используйте Ctrl + G , :file или :f

:bw закрыть файл хаха. Не забудьте прочитать справку, :bw где говорится, что вы должны использовать ее, только если знаете, что делаете. Это не имеет большого значения, но если вы не хотите стереть все отметки и информацию о файле, лучше использовать :bd или :q как обычный человек

:vsp для вертикального разделения. Затем используйте Ctrl+W <ARROW_KEYS> для перемещения по панелям.

Или даже только Ctrl+W, v для вертикального разделения и Ctrl+W, s для горизонтального разделения. Я использую в CTRL+W течение многих лет, и в последнее время я много редактирую VI на веб-страницах. Каждый раз, когда я набираю команду, даже не задумываясь и . вау . вкладка браузера пропала! Я постоянно забываю. Мне действительно нужно выучить новый ярлык.

Я задал похожий вопрос в суперпользователе,

Ответ на мой вопрос был, что вы не можете, но вы можете открыть два файла в одном окне bash, используя :split команду VIM :

  1. Откройте файл с помощью $ vim file1 , откройте второй файл в VIM с помощью :split file2 команды.
  2. Или используйте $ vim -o file1 file2 из Bash.
  3. Переключение между файлами - переключение активного файла - в VIM с помощью ctrl - w ctrl - w .
  4. Примером операции является копирование (или восстановление) в файл1 y y , переключение (3), а затем вставка (или помещение) p содержимого в файл2.
  5. Все остальное нормально, когда какое-либо окно активно, поэтому :q закрывается и :q! принудительно завершается.

Мой bash черно-белый, поэтому имя файла каждого экрана оформляется в виде перевернутой «выбранной» строки с указанным там именем файла.

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

Или, если у вас уже открыт vim, вы можете открыть новый файл на новой вкладке, например:

Открыв вкладки, используйте gt для просмотра следующей вкладки и gT просмотра предыдущей вкладки.

Вы также можете перейти к первой вкладке с помощью 1gt , второй вкладке с помощью 2gt и т. Д.

Вы можете закрыть вкладки, используя :tabc

Наконец, вы можете переместить текущую вкладку в ту n позицию, :ntabm где n любое число больше или равно 0 .

argadd . добавит все файлы в args, а также в :ls / :buffers и позволит вам редактировать их.

Смотрите :h arglsit & :h argedit & :h argsd

Кроме того, вы можете выполнять определенные действия только с аргументами :argdo . , и вы можете начать заново с аргументами, выполнив :argsd* .

Есть много способов сделать это. Первый, возможно, менее удобный, это вызов vim файлов, которые вы хотите отредактировать - создать:

Он вызывает два файла в двух буферах. Чтобы переключиться из одного файла в другой, используйте :n и :N . Чтобы вывести список файлов, которые вы редактируете, :args сделаем работу. :help buffer поможет вам больше в этом.

Это должно ответить на ваш вопрос. Но вот больше информации:

Есть способ отредактировать ваши файлы более удобным способом, разделив экран консоли с помощью vim . Для этого откройте два кадра с помощью :split ( :sp ) или :vsplit ( :vs ) при использовании vim . Затем перемещайтесь в этих кадрах, используя комбинацию Ctrl + W > Ctrl + W . Вы также можете использовать Ctrl + W + стрелку или клавишу ( H , J , K или L ) , соответствующую следующий кадр. Когда это будет сделано, отредактируйте нужный файл :e file_name . :help opening-window поможет вам больше в этом.

Теперь, если вы хотите увидеть различия между файлами, используйте -d аргумент или вызовите программу vimdiff (она одинакова) с соответствующими файлами. :help diff поможет вам больше в этом.

Я знаю, что я могу открыть несколько файлов с помощью vim , выполнив что-то вроде vim 2011-12*.log , но как я могу переключаться между файлами и закрывать файлы один вовремя? Кроме того, как я могу указать имя файла текущего файла, который я редактирую?

Прежде всего, в vim вы можете ввести : (двоеточие), а затем помочь help , ala :help для списка self Темы справки, включая короткий учебник. В списке тем переместите курсор над интересующей темой, а затем нажмите ctrl ] , и эта тема будет открыта.

Хорошим местом для вас станет тема

Хорошо, ответ на ваш вопрос.

После запуска vim со списком файлов вы можете перейти к следующему файлу, введя :next или :n для краткости. :wnext сокращает текущие изменения записи, а затем переходит к следующему файлу.

Существует также аналогичный :previous , :wprevious и :Next . (Обратите внимание, что :p является сокращением для :print . Сокращение для :previous : :prev или :N )

Чтобы увидеть, где вы находитесь в списке файлов, введите :args , а файл, который сейчас редактируется, появится в [] (скобки).

вы можете открыть другой файл, в то время как vim открыт с помощью :tabe filename и для переключения на другой файл, который вы вводите :tabn или :tabp для следующего и предыдущего соответственно.

И вы можете увидеть имя файла в верхней части приложения vim.

Команды для переключения между буферами:

:help buffer , чтобы найти дополнительную информацию

Чтобы узнать имя файла, используйте Ctrl + G , :file или :f

:vsp предназначен для вертикального разделения. Затем используйте Ctrl+W <ARROW_KEYS> для перемещения в панелях.

Я задал аналогичный вопрос у суперпользователя,

Ответ на мой вопрос заключался в том, что вы не можете, но вы можете открыть два файла в одном окне bash с помощью команды VIM :split :

  1. Откройте файл с помощью $ vim file1 , откройте второй файл в VIM, используя команду :split file2 .
  2. Или используйте $ vim -o file1 file2 из bash.
  3. Переключение между файлами - переключение активного файла - в VIM с помощью ctrl - w ctrl - w .
  4. Пример операции - это копия (или yank) в файле1 y y , переключатель (3), затем вставьте (или поместите) p содержимое в файл2.
  5. Все остальное нормально, когда открыто какое-либо окно, поэтому завершает работу :q и :q! .

Мой баш черно-белый, поэтому имя файла для каждого экрана называется измененной «выбранной» строкой с указанным там именем файла.

Я нахожу наиболее удобный способ редактирования нескольких файлов с помощью вкладок. Вы можете открывать несколько файлов в отдельных вкладках через командную строку следующим образом:

Если у вас уже открыт vim, вы можете открыть новый файл на новой вкладке, например:

После открытия вкладок используйте gt , чтобы просмотреть следующую вкладку и gT , чтобы просмотреть предыдущую вкладку.

Вы также можете перейти к первой вкладке с помощью 1gt , второй вкладкой с 2gt и т. д.

Вы можете закрыть вкладки, используя :tabc

Наконец, вы можете переместить текущую вкладку в n th местоположение с помощью :ntabm , где n - любое число, большее или равное 0.

argadd . добавит все файлы в args, а также в :ls / :buffers и позволит вам их редактировать.

См. :h arglsit & :h argedit & :h argsd

Кроме того, вы можете выполнять определенные действия только для args с помощью :argdo . , и вы можете начать заново с помощью своих аргументов, выполнив :argsd* .

Есть много способов сделать это. Первым, может быть, менее удобным, является вызов vim с файлами, которые вы хотите изменить, - create:

Он вызывает два файла в двух буферах. Чтобы переключиться с файла на другой, используйте :n и :N . Чтобы перечислить файлы, которые вы редактируете, выполните :args . :help buffer поможет вам подробнее об этом.

Это должно ответить на ваш вопрос. Но вот дополнительная информация:

Есть способ редактировать файлы более удобным способом, разделив экран консоли с помощью vim . Для этого откройте два кадра с помощью :split ( :sp ) или :vsplit ( :vs ), в то время как используя vim . Затем перейдите в эти кадры, используя комбинацию Ctrl + W > Ctrl + W . Вы также можете использовать Ctrl + W + стрелку или клавишу ( H , J , K или L ), соответствующий следующему кадру. Когда это будет сделано, отредактируйте нужный файл с помощью :e file_name . :help opening-window поможет вам подробнее об этом.

Теперь, если вы хотите увидеть различия между файлами, используйте аргумент -d или вызовите программу vimdiff (это то же самое) с соответствующим файлы. :help diff поможет вам подробнее об этом.

Пожалуйста, дайте мне знать, если у вас есть проблема.

Мне нравится использовать разделенные окна - как горизонтальные, так и вертикальные - для редактирования нескольких файлов.

Я использую tmux для более удобного управления этими окнами

 введите описание изображения здесь>> </a> </p></body></html>

Пример: просмотр файлов или запуск тестов справа, редактирование тестовых и исходных файлов слева:

Файловые операции Vim суммируются с двух сторон: одновременная работа с несколькими файлами, открытие и сохранение файлов.

(1) Vim работает с несколькими файлами одновременно

В одной папке находятся два txt файла vitest и vitest2. Управляйте двумя файлами одновременно. Чтобы работать с двумя файлами одновременно, вы можете использовать команду 'vim * .txt' или 'vim vitest.txt vitest2.txt' для завершения. Кажется, нет никакой разницы между вводом интерфейса файловой операции и интерфейса при работе с файлом.

Список буферов

Когда несколько файлов помещаются в буфер одновременно, вы можете использовать для просмотра команду ': ls', не путайте ее с командой ls оболочки.

5914725-463a591052870069.jpg

Работа со списком буферов

Вы можете просмотреть список буферов через ': ls', и вы можете переключаться между файлами с помощью команд.
Общие команды:

После ввода команды, такой как «bnext», а затем просмотра ее через «ls», отображение списка имеет некоторые изменения;

5914725-fd2d21f29de67ffd.jpg

Управление скрытым буфером

После работы с vitest1.txt при переключении через «bnext» он не сможет переключиться

5914725-590c2d65d4c9b8ca.jpg

Он подскажет, что обновление не было записано до переключения. Но в это время невозможно переключиться, просто выполните принудительное переключение. «bnext!» завершает принудительное преобразование. После завершения конвертации проверьте список через «ls», и вы найдете новые изменения.

5914725-22e7362183aed6cf.jpg

④ Создать разделенное окно

Это более интересно, вы можете разделить текущее окно по горизонтали через Ctrl + w + s.

5914725-ea2593ca05d326d2.jpg

Используйте Ctrl + W + V для завершения вертикальной сегментации

5914725-c3f8b9131541471f.jpg

Конечно, подокно после сегментации также может быть сегментировано непрерывно.
При разбиении вы можете указать новое окно для загрузки других файлов с помощью метода 'sp [lit] file name'. Например, 'sp vitest1':

5914725-901251d7a4b49f89.jpg

Если вы хотите загрузить новый файл в вертикальном разделенном окне, используйте «vsp [lit] filename» для его завершения.
Общие команды для переключения между окнами:

Способы закрыть окно:

(2) Открыть и сохранить файлы

Самый распространенный способ открыть файл - это «vim file name». Но в этом разделе обсуждается операция открытия файлов, когда vim уже открыт.

ThroughОткройте с помощью команды:: edit

В настоящее время в vitest1.txt, откройте vitest2.txt с помощью команды «edit».

5914725-1346bcee4d5619ae.jpg

5914725-cd4b51adbf24807b.jpg

Операция пути к файлу команды

Чтобы просмотреть путь к текущему файлу относительно текущего каталога, используйте команду «edit% <Tab>» для завершения. Например, в данный момент в каталоге / home выполните vim chuck / vitest1.txt и введите указанную выше команду в vitest1.txt:

5914725-383c639f348d56b4.jpg

Нажмите клавишу Tab, произойдут следующие изменения

5914725-53f336c60ab0e23a.jpg

Если вы используете ': edit%: h <Tab>', эффект будет следующим

5914725-f7bce7c53e4b40c2.jpg

«: h» скрывает имя файла и сохраняет остальную часть пути.

Net Используйте Netrw для управления файловой системой

В каталоге / home / chuck / viexe есть три файла: vitest1.txt, vitest2.txt и vitest3.txt. Введите 'vim.', Чтобы войти в собственный файловый менеджер vim netrw.

5914725-b1b4369984570a54.jpg

Используйте «j», «k» для управления вверх и вниз, выберите файл, с которым вы хотите работать, и затем нажмите клавишу ввода для работы. Вы также можете выбрать «../ <CR>», чтобы перейти в верхний каталог.
Конечно, это для ввода netrw в терминал. Если вы сейчас используете vim для работы с файлами, как войти в файловую систему? Используйте команду «: edit», если вы работаете с текущим каталогом, вам нужно только «: edit.», Чтобы войти в систему управления файлами текущего каталога. Другие каталоги могут быть переданы «: редактировать абсолютный / относительный путь».

AveСохранить файл

Обычное сохранение можно выполнить с помощью команды «w». Но если он сохранен в каталоге, который еще не существует. Например, vim /home/chuck/viexe/sub/test.vim. На данный момент в viexe нет подкаталога, если он сохранен нормально, это произойдет:

5914725-7d99fcbe0a8bb437.jpg

Это занимает два шага. Первый шаг - создать каталог, передайте ':! Mkdir -p%: h' и введите ключ ввода

Читайте также: