У меня иногда возникает необходимость в отступе блока текста с пробелами для использования в веб-браузере, например, при форматировании блока кода на этом сайте или в посте на Launchpad.
До сих пор я только что сделал это вручную, скопировав четыре пробела в буфер обмена, а затем по-настоящему быстро нажал клавиши:
↓ kbd>, Home kbd> , Ctrl kbd> + V kbd> (повтор)
Какой самый быстрый способ сделать это?
Я использую плагин пентадактиля для Firefox. (Это преемник плагина vimperator.)
Помимо множества других замечательных функций, он позволяет редактировать любое текстовое поле на веб-странице с помощью внешнего редактора. (Вы нажимаете Ctrl-I при редактировании текстового поля, и открывается редактор; когда редактор сохраняет файл, он автоматически копируется обратно в текстовое поле.) Я использую gvim в качестве внешнего редактора. В (g) vim клавиша> в визуальном режиме (т. Е. Когда символы выделены или выделены) будет делать отступы для всех выбранных строк на величину, установленную в вашем .vimrc.
Существуют способы настройки пентадактиля, чтобы сообщить gvim, какой тип файла редактируется (например, html или уценка для этой страницы, или bbcode для форумов Ubuntu и т. Д., Так что вы можете использовать плагины для конкретного типа файлов и даже получить подсветку синтаксиса.)
Вы можете скопировать тест в Gedit, выделить все целиком (CTRL-A), нажать Tab, а затем скопировать снова. Это руководство, но это быстро.
ЭТО является ссылкой на команду, представленную на commandlinefu.com. Он правильно делает отступ для всего вашего файла, используя emacs, так что вам не нужно думать о том, что такое пробел и что за табуляция.
Вы можете передать через короткий сценарий оболочки:
$ xsel -b | sed 's/^/ /' | xsel -b
Первый xsel -b читает буфер обмена, sed добавляет четыре пробела (^ соответствует началу строки), затем второй xsel -b кладет его обратно в буфер обмена. Удалите -b, чтобы использовать вместо него основной выбор (буфер для щелчка средней кнопкой мыши).
Пример:
# put two lines in the clipboard, "abc" and "123", for the example
# the \n is a newline, and echo adds another newline to the end
$ echo
$ xsel -b | sed 's/^/ /' # output written to the terminal
abc
123
$ xsel -b | sed 's/^/ /' | xsel -b # again, to the clipboard
Вы можете поместить это в скрипт оболочки, например с именем «indent4», с содержанием:
#!/bin/bash
xsel -b | sed 's/^/ /' | xsel -b
Затем сделайте его исполняемым. Вы также можете выполнить команду chmod, щелкнув правой кнопкой мыши файл в Nautilus, перейдя в свойства и изменив разрешения.
$ chmod +x indent4
# test it:
$ echo А затем поместите файл на рабочий стол или сохраните в любом месте и создайте для него средство запуска. Теперь вы можете запустить indent4 (например, двойной щелчок), и буфер обмена будет изменен.
xsel относится к пакету, который, что неудивительно, называется «xsel»; Возможно, вам придется установить его. Смотрите "man xsel" для деталей. Строки в стиле $ '' в этом примере зависят от bash.
abc\n123' | xsel -b # load clipboard
$ ./indent4 # assuming it's in the current directory
$ xsel -b # show clipboard
abc
123
А затем поместите файл на рабочий стол или сохраните в любом месте и создайте для него средство запуска. Теперь вы можете запустить indent4 (например, двойной щелчок), и буфер обмена будет изменен.
xsel относится к пакету, который, что неудивительно, называется «xsel»; Возможно, вам придется установить его. Смотрите "man xsel" для деталей. Строки в стиле $ '' в этом примере зависят от bash.
abc\n123' | xsel -b
$ xsel -b | sed 's/^/ /' # output written to the terminal
abc
123
$ xsel -b | sed 's/^/ /' | xsel -b # again, to the clipboard
Вы можете поместить это в скрипт оболочки, например с именем «indent4», с содержанием:
#!/bin/bash
xsel -b | sed 's/^/ /' | xsel -b
Затем сделайте его исполняемым. Вы также можете выполнить команду chmod, щелкнув правой кнопкой мыши файл в Nautilus, перейдя в свойства и изменив разрешения.
$ chmod +x indent4
# test it:
$ echo А затем поместите файл на рабочий стол или сохраните в любом месте и создайте для него средство запуска. Теперь вы можете запустить indent4 (например, двойной щелчок), и буфер обмена будет изменен.
xsel относится к пакету, который, что неудивительно, называется «xsel»; Возможно, вам придется установить его. Смотрите "man xsel" для деталей. Строки в стиле $ '' в этом примере зависят от bash.
abc\n123' | xsel -b # load clipboard
$ ./indent4 # assuming it's in the current directory
$ xsel -b # show clipboard
abc
123
А затем поместите файл на рабочий стол или сохраните в любом месте и создайте для него средство запуска. Теперь вы можете запустить indent4 (например, двойной щелчок), и буфер обмена будет изменен.
xsel относится к пакету, который, что неудивительно, называется «xsel»; Возможно, вам придется установить его. Смотрите "man xsel" для деталей. Строки в стиле $ '' в этом примере зависят от bash.