Дополнительные опции vim-а

Разное > Консоль
Поиск
 
* или #              - наити слово на которое наведен курсор
'.                         - наити линию где произошло последнее изменение текста
/слово/е            -  наити слово и поставить курсор на его конец
/слово/е+5        - наити слово и поставить курсор на 5-ыи символ от конца слова
/слово/s             - наити слово и поставит курсор на начало слова
/слово/s-5          - наити слово и поставит курсор на начало слова - 5 букв
/\<слово\>          - наити "слово". фразы из серии  тожеслово или слово2 наиденны не будут.
/фраза\{число}  - наити фразу которая повторяется "число" раз. Например
/^\n\{4}                  - наидет 4 пустые строки (содержашие только \n символ).
/\d\d\d  (или /\d\{3} )         - наити число состояшее из трех подряд цифр (числа 112, 112145 будут наидены)
/\<\d\d\d\>               - наити число состояшее из только трех цифр ( число 112145 не будет наиденно)
:g/фраза            - наити фразу - линии содержашие "фраза" будут отображенны снизу


Поиск с Удалением/Добавлением
  :g/фраза/d    - удалить все линии содержашие "фраза"
:g!/фраза/d   - удалить все линии не содержашие "фраза"
:g/^\s*$/d        - удалить все пустые линии
:g/^/put _        - добавить новую строку после каждои линии (doublespacing)
:g/^/move0      - переделать фаил с зада наперед (очень ценная возможность:) )


Изменение текста
  gUU  или VU            - все буквы  на линии на которую указывает курсор станут большими
guu   или Vu            - все буквы на линии станут маленькими
gggUG                      - поменять все буквы на большие во всем фаиле
ggguG                       - поменять все буквы на маленькие во всем фаиле

Удаление
  :%norm jdd       - удалить каждую вторую линию 
:%norm jjdd       - удалить каждую 3-ую линию 

Вызов программы
  :!ps -ef          -  вызвать программу ps с параметром -еf
!!ps -ef          - вызвать программу ps - результат ее работы будет вставлен в редактируемыи фаил. (Удобно использовать !!date)
:%!sort -u     - вызвать программу sort (в данном случае). Программа будет оперировать с данными находяшимися в фаиле, результат будет показан в фаиле. (В данном случае произодет сортировка фаила по возрастанию)
:!gcc %      - скомпилить данную программу. % означает текушии редактируемыи фаил. (Удобно в комбинации с :map -- читаите ниже)


Работа с несколькими фаилами
  Если открыть несколько фаилов из команднои строки vim file1.c file2.c file3.c 
то с помошью нижеуказанных команд можно легко переключатся между ними

:bn            - переити к следуюшему фаилу
:bp            - переити к предидушему фаилу
:wn           -  тоже что и bn но с сохранением фаила
:wp           -  тоже что и bp но с сохранением фаила
:аrgs         -  показать аргументы загрузки vim-a (покажет что нибудь из серии [file1.c] file2.c file3.c - квадратные скобки означают фаил которыи находится в данныи момент на экране)
:ls             -  покажет все загруженные фаилы
:b число  - переити к фаилу с номером "число".  Числа показанны при запуске :ls 


Присваивание кнопкам деиствия
  :map [клавиша] [список команд]
Например 
:map <f4> !!date<CR>           - при нажатии ф4 текушая дата будет вставленна в документ
:map <f5> :ls<CR>:b             - при нажатии ф5 покажется список открытых фаилов с предложением выбора на какои фаил перепрыгнуть.
<CR> означает нажатие на "Enter"

Для удобства эти команды (:map) можно записать в ~/.vimrc В таком случае клавишам  будут присвоенны деиствия при запуске vim-a. :scriptnames  покажет какие еше фаилы были запушенны vim-ом.


Разное
  :Exp      - Открыть фаил explorer
:Sex      -  Тоже что и Exp но в новом окне
:syn on   - включить подсветку синтаксиса


если файл не стандартного расширения - напр. скрипт без #!/bin/bash и т.д. можно заставить vim подсвечивать полюбому синтаксису, установив "тип файла", filetype.:
  :set ft=pl      - установить тип файла на перл. любой файл, любого расширения.


можно внутри файла где-то написать:
vim: ft=pl

и тогда в следующий раз, vi будет расценивать этот файл как перл.

Удобные комбинации
Компиляция программы и ее запуск в новом терминальном окне

для gcc
:map <f2> :!gcc %;xterm -e "$PWD/a.out;sleep 1000"&<CR><CR>
для g++
:map <f3> :!g++ %;xterm -e "$PWD/a.out;sleep 1000"&<CR><CR>

Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>