Не вставляйте в консоль скопированный из Интернета код!


Оглавление (нажмите, чтобы открыть):

Форум русскоязычного сообщества Ubuntu

Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Консоль: копирование текста (Прочитано 13073 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Страница сгенерирована за 0.062 секунд. Запросов: 22.

© 2012 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

Как вставить текст в командную строку Windows?

Иногда возникает необходимость скопировать и вставить текст в командную строку Windows. Длинные команды, в которых легко допустить ошибку. Пути до нужных файлов, которые могут быть не только длинными, но и сложными (например, цифро-буквенные названия у каталогов). Сокращенные названия команд, такие как «powercfg». И другие ситуации, когда спасает метод «копи-пейст».

И все бы было хорошо, если бы не одно обстоятельство. Дело в том, что вы не сможете вставить текст через комбинацию «Ctrl + V», вместо этого на экране консоли появится символ «^V». Это связано со спецификой командной строки. Однако, существует простой способ, как можно включить копирование и вставку текста в командную строку. Вот сама процедура:

Примечание: Несмотря на процедуру, комбинация Ctrl + V так же не будет вставлять текст, однако будет доступна другая возможность, но обо всем по порядку.

  1. Откройте командную строку
  2. Щелкните на иконку в левом верхнем углу окна консоли. Откроется меню, как показано на рисунке чуть выше
  3. В открывшемся меню, выберите пункт «Свойства»
  4. Откроется диалоговое окно. Необходимо перейти на вкладку «Общие», а затем в области «Правка» выставить галочку напротив пункта «Быстрая вставка» (показано на рисунке чуть ниже)
  5. Нажмите на кнопку «ОК» внизу окна (на рисунке данная кнопка не отображена)

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

Данный метод применим к Windows XP, Vista, 7, 8.

Теперь вы знаете как включить возможность вставки текста в командную строку Windows, а так же как правильно копировать текст.

Как скопировать текст из командной строки

Многие команды и операции, особенно, когда приходиться восстанавливать или настраивать ПК, приходиться вводить в командной строке (или просто CMD). Довольно часто мне задают на блоге вопросы типа: «как быстро скопировать текст из командной строки?».

Действительно, хорошо, если вам нужно узнать что-то короткое: например, IP-адрес — его можно и просто переписать на листок. А если нужно скопировать из командной строки несколько строк?

В этой небольшой статье (мини-инструкции) покажу пару способов, как быстро и легко скопировать текст из командной строки. И так…

Способ №1

Сначала нужно нажать правую кнопку мышки в любом месте открытого окна командной строки. Далее во всплывшем контекстном меню выбрать пункт «пометить» (см. рис. 1).

Рис. 1. пометить — командная строка

После этого, при помощи мышки, можно выделить нужный текст и нажать ENTER (все, сам текст уже скопирован и его можно вставить, например в блокнот).

Чтобы выделить весь текст в командной строке — нажмите сочетание кнопок CTRL+A.


Рис. 2. выделение текста (IP-адрес)

Для редактирования или обработки скопированного текста, откройте любой редактор (например, блокнот) и вставьте в него текст — нужно нажать сочетание кнопок CTRL+V .

Рис. 3. скопированный IP-адрес

Как видим на рис. 3 — способ полностью рабочий (кстати, работает так же и в новомодной Windows 10)!

Способ №2

Этот способ подойдет тем, кто часто что-то копирует из командной строки.

Первым делом нужно щелкнуть правой кнопкой мышки по верхней «полоске» окна (начало красной стрелки на рис. 4) и перейти в свойства командной строки.

Рис. 4. свойства CMD

Затем в настройках ставим галочки напротив пунктов (см. рис. 5):

  • выделение мышью;
  • быстрая вставка;
  • разрешить сочетание клавиш с CONTROL;
  • фильтр содержимого буфера обмена при вставке;
  • включить выделение переноса строк.

Некоторые настройки могут несколько различаться в зависимости от версии ОС Windows.

Рис. 5. выделение мышью…

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

Рис. 6. выделение и копирование в командной строке

PS

На этом у меня сегодня все. Кстати, один из пользователей поделился со мной еще одним интересным способом, как он копировал текст из CMD — просто делал скриншот в хорошем качестве, затем его загонял в программу для распознавания текста (например FineReader) и уже из программы копировал текст куда нужно…

Копировать текст таким образом из командной строки — это не очень «эффективный способ». Но этот способ подойдет для копирования текста с любых программ и окон — т.е. даже тех, где копирование в принципе не предусмотрено!

Копировать вставить из текстового файла команду в консоль и выполнить

допустим такой сценарий:
1) есть флешка с установочным образом(только терминал!)
2) также на флешке(или на компе) текстовой файл(файлы) со списком команд
3) компьютер подключенный к интернету

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

Вроде screen и tmux позволяют копировать и вставлять в консоли.

Лично я не пробовал.

Ниhера не понял. Кто на ком стоял? Определитесь с терминологией, а то «консоль», «терминал» и пр. могут трактоваться весьма вольно.


И почему команды надо копировать, а не запустить их как скрипт?

Установочный образ с только с терминалом эт чо , сервер? А так копировать или вставлять можно с одной консоли в другую (их же 6) , или из одного окна терминала в другое.

не все команды нужны, иногда нужно в произвольном месте добавить что то «консоль», «терминал» — голый «сервер»

пробовал в одном tty открыть текст и копировать из него команды на другой tty
не получается или не осилил

может быть куча решений.
навскидку:
1) сделать из текстового файла bash-скрипт
2) mc (mcedit) — в нем есть буфер для копипасты
3) gpm и ctrl+insert / shift+insert

Лорчую screen/tmux. Открываешь, сплитишь, в одном pane оставляешь сосноль, в другом vim filename и начинаешь.

Можешь попробовать средсвами vim или GNU/emacs, но не совсем то будет.

как то сложновато(я можно сказать нуб)

Во , тоже вспомнил про gpm , это вроде мыша консольная.

только что поставил tmux и nano
не вставляет пока что, сижу разбираюсь

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

Несколько вариантов тебе подсказали. Но, если у тебя есть рядом полноценный компьютер с настроенной системой, то я бы предложил ещё вариант доступа по ssh. Установщик — это по сути уже запущенный Linux с программой установки. Переключаешься в консоль, устанавливает и запускаешь ssh сервер и вводи свои команды с другого компьютера.

На серверах часто вообще нет монитора, установку делают либо по сети, либо подготовкой настроенного образа.

тут немного другой случай
например установка arch, gentoo, freebsd. (не на сервер)

Если у тебя такие сложности, то начни с user friendly дистрибутивов.

все зависит от того, есть у тебя ГУЙ или нет.

если есть, то: как открываешь файл с командами? в гуевой аппликухе или тут же в консоли?

если в гуевой, то в ней копируешь в буфер, а в консоли Shift+Insert

если без гуевой, то cat file.txt выведет содержимое файла в консоль. дальше — копируешь своим терминалом (мышкой выделить, меню-скопировать или как-то так, может ПКМ скопирует), вставлять тоже Shift+Insert

если ты совсем без гуев, то либо ты пользуешься текстовым редактором, либо нет.

если не пользуешься, то, подозреваю, что с помощью tail и head можно «вычленить» нужную тебе строку из списка команд, и направить ее в какой-нибудь bash .

Мастер Йода рекомендует:  Набор начинающего веб-разработчика плагины Chrome и VS Code

если пользуешься редактором, то… ну тут нужно вспомнить, какие редакторы в буфер умет копировать и как, а дальше — Shift+Insert

man cat
man pipe

gui и мышки нет


есть xclip tmux screen vim nano
вроде как должно работать но не работает)

вот это интересно, спасибо работает

все совсем не так как я думал) пошел читать про head и tail

сделал commands.txt с таким содержимым:
ls
nano ./text.txt
top
echo «23» > ./text1.txt

очевидно что
head -n 1 commands.txt | tail -n 1 | bash
должен запустить ls, что оно и делает
а вот
head -n 2 commands.txt | tail -n 1 | bash
head -n 3 commands.txt | tail -n 1 | bash
уже не работают

а вот это опять работает
head -n 4 commands.txt | tail -n 1 | bash

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

если тебе нужно выполнить весь файл целиком, то ты бы так и написал.

и нии тут всем мозги. формулируй свои хотелки четко

ругаться то зачем?
я понимаю что вопросы нубские, но и я в свою очередь не заставляю кого бы то не было отвечать на них..
если подскажут — хорошо, буду благодарен, нет, ну нет так нет..

к сути — я и написал что ваш вариант работает, НО
команды ls и echo работают
а top и nano не работают

но я вас понимаю) сам бываю грубоват когда ко мне лезут с нубскими вопросами по моему профилю

Если надо прямо из текстового редактора, выкинь этот выкидыш Nano, возьми нормальный. Например в Vim. Копируешь команду в буфер (навести курсора на строку с командой и нажать yy). Затем выполняешь вот такую команду:

То есть в целом вот так: yy:’ w !sh

я пробовал ранее через vim
но сейчас попробую точно по вашим инструкциям

Для удобства можно в виме это замапить на какую-нибудь клавишу, например из F1-F12. Тогда достаточно будет просто навести курсор на строку и нажать одну клавишу.

Прошу прощения, yy не будет работать. но будет работать визуальное выделение. V (большая) и enter.

достаточно поставить курсор на нужную строку в vim и

У ls и echo есть законченность выполнения , а у nano и top только открытие , их надо или в фон запускать или завершать как нибудь. (имхо)

это .w !bash и это :’ w !sh через vim работают но все непрозрачно, например если нужно установить что то или удалить или что нибудь еще нестандартное
вобщем неполноценно или правильнее — доработать нужно

я ожидал что можно легко взять копировать команду из текстового файла. выше писали про — head -n 2 commands.txt | tail -n 1 | bash но он тоже не выполняет команды типа top или nano.. для примера

Запускаешь gpm и копируешь мышкой. Без мышки твой лучший вариант наверно будет взять tmux.

извини за грубость


я тут попробовал и понял, что я не знаю, как выполнить nano или top из pipe

c gpm пока разбираюсь, как то оно не так работает или я делаю не так
tmux я тоже ставил, терминалы делаются а вот копирование из одного(там открыт текстовой файл) на другой не работает почему то

nano ./test.txt & top & ls echo и тд.

В твоём случае (ничего не настроено) проще всего с tmux будет.

В gpm вставка кажись клик колесом мыши)

Странно, у меня всегда идеально справлялось именно с задачей выделения и копирования, может дистрибутив или мышка шалят? Попробуй задавать устройство вручную.

Too many errors from stdin

А вообще — что именно не получается в tmux? Все же это более удобный способ, чем заморачиваться с выполнением текущей строки в вим.

  1. запускаешь tmux tmux
  2. добавляешь панель справа ctrl+b %
  3. возвращаешься на первую панель ctrl+b o
  4. получаешь список команд: cat commands.txt
  5. включаешь режим копирования: ctrl+b [
  6. стрелочками ставишь курсор на начало нужной строки
  7. переходишь в режим выделения текста: space
  8. стрелочками выбираешь нужный текст для копирования
  9. копируешь выбранный тобой текст: enter
  10. переключаешься на вторую панель ctrl+b o
  11. вставляешь скопированный текст: ctrl +b ]

в итоге у тебя на левой панели открыт список команд и из него ты их копируешь, а на правой — выполняешь команды по списку

с 5ого пункта неполучается, режим копирвания включается(курсор ходит по всему экрану, а сам ничего не копирует)

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

вообще ничего не менялось, перезагрузился, теперь даже ctrl + b и % — не работает, can’t find window

А там случайно не can’t find window 5 ?

Если ты случайно вместо % нажал 5, то tmux попытается перейти на окно с номером 5, не найдет его и выдаст вот такую ошибку.

посыпаю голову пеплом, я жал 5
теперь нормальные 2 панели с терминалами, но все равно пробел или ентер ничего не меняют
и сверху в углу — [0/0] — все время

В tmux жамкни ctrl+b ? Выведет список хоткеев, там ищи

благодарю за помощь, это работает, сложно как то все сделано с терминалами, в плане — копировать вставить

Всем спасибо за расширение моего кругозора в контексте работы с консольными командами)

Не вставляйте в консоль скопированный из Интернета код!

В данной статье разберем утилиту xclip, которая позволяет скопировать вывод любой команды или текст любого файла в буфер обмена в терминале Linux.

Этот абзац для тех, кто нашел эту статью в поисковой системе, чтобы узнать как просто копировать и вставлять текст в терминале Linux (в Ubuntu в частности), так как обычные сочетания клавиш CTRL — C и CTRL -V не работают. Для этих действий используются CTRL — SHIFT — C и CTR — SHIFT — V, соответсвтенно.

xclip — утилита для работы с буфером обмена из консоли.


Давайте её установим в Ubuntu:

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

Примеры использования xclip.

Давайте рассмотрим работу xclip на примерах.

Допустим, есть у нас публичный ключ ssh, который мы хотим скопировать и вставить в систему для доступа к ней без ввода пароля:

Не совсем удобно копировать данный текст в терминале, можно ошибиться в пробелах и тд. Поэтому, давайте воспользуемся xclip.

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

или короткая версия:

Если вы не знаете, что такое |, то это означает, что мы вывод первой команды перенаправляем на вход второй после |.

Для тех, кто хочет узнать про перенаправление потоков вывода, советую прочитать мою статью: Терминал Linux. Как сохранить в файл вывод терминала..

Теперь мы можем вставить скопированный текст куда захотим, к примеру, на сайте github:

Но мы можем просто скопировать в буфер обмена весь текстовый файл, для этого указываем команду xclip с ключом -in (-i):

или короткая версия:

С помощью данной утилиты мы можем и вставить текст в терминал из буфера обмена. Для этого нужно указать команду xclip вместе с ключом -out (-o):

или короткая версия:

Но, согласитесь, что не удобно постоянно набирать параметр -sel clip, который указывать на буфер обмена.

Давайте создадим постоянные алиасы для команды копирования и вставки:

Вставляем туда строки:

Если вы не знаете, что такое алиасы, то советую прочитать следующую статью: Терминал Linux. Создание alias (псевдонима) в Ubuntu..

Сохраняем файлик, и если переоткрыть терминал (открыть новую сессию терминала), то теперь можно использовать наши новые команды. Теперь, чтобы скопировать публичный ключ ssh, нам достаточно ввести следующую команду:

Псевдонимы pbcopy и pbpaste я использую, потому что я часто пользуюсь системой macosx и там есть команды с такими названиями. Вы можете назвать алиасы по вашему желанию.

Ну и вставить текст в терминале:

Ну и напоследок, хотелось продемонстрировать как еще можно пользоваться данной утилитой. К примеру, есть у нас файл лога, и мы хотим просмотреть его последние 10 строк:

И мы хотим скопировать его, чтобы кому-то отправить его, просто укажем нашу утилиту:


Console Как вставить текст из буфера обмена?

Можно ли как нибудь при копирование текста в консоль методом ctrl + v вставить копированный текст из буфера в консоль?

Мастер Йода рекомендует:  Начало работы с WordPress настройка функциональности сайта посредством редактирования functions.php

P.S: При попытке вставить текст в консоль выпадают знаки:^v

1 ответ 1

В Windows 7 (и кажется в младших версиях тоже) работает открытие системного меню (левый клик по иконке в title bar’е слева или Alt + Пробел ) и в нём пункт «Изменить». Если включить режим «быстрой вставки» (см. скриншот ниже), должно работать системное меню по правой кнопке мыши.

В Windows 10 по умолчанию работает Ctrl + V , а также правая кнопка мыши открывает контекстное меню, в котором есть пункт «Вставить». Если вдруг это не работает, нужно открыть системное меню (левый клик по иконке в title bar’е слева), выбрать «настройки», и включить разрешение там:

Причина этого — то, что шорткат Ctrl + C для консольных приложений традиционно означал не «копировать», а «завершить программу». Разработчики опасались, что если разрешить Ctrl + V для вставки, пользователи пользоваться Ctrl + C с целью копирования, и будут останавливать тем самым консольные приложения. К версии Windows 10 разработчики консоли таки сдались требованиям пользователей.

Как вставить текст в командную строку Windows используя Ctrl + V

OSmaster.org.ua > Windows > Как вставить текст в командную строку Windows используя Ctrl + V

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

Решение, как и многих других недостатков Windows, заключается в использовании простого скрипта AutoHotkey. Который на самом деле, берет содержимое буфера обмена и используя функцию SendInput вставляет текст в командную строку нажатием комбинации клавиш Ctrl + V.

Но сначала … вот еще один способ как это сделать.

Альтернативные, встроенный способ для вставки текста в командную строку из клавиатуры

На самом деле существует способ который позволяет вставить текст с помощью клавиатуры, но он не очень удобный в использовании. Что вам нужно сделать, это использовать комбинацию Alt + Spase (пробел), чтобы открыть меню окна, а затем нажмите клавишу «E», а затем клавишу «P». Это вызовет меню и вставит текст в консоль.

Если вы привыкнете делать так, то на самом деле это не так уж плохо … но кто хочет использовать различные комбинации для одинаковых функций в Windows?

AutoHotkey Скрипт для вставки текста в командную строку используя Ctrl + V

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

#IfWinActive ahk_class ConsoleWindowClass
^V::
SendInput %clipboard%
return
#IfWinActive

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

Примечание: Скрипт разрывы строк вставляет не очень хорошо. Если у вас есть лучшее решение для этого дайте нам знать в комментариях и мы обновим этот пост.

Скачать уже готовый скрипт AutoHotkey

Просто скачайте скрипт, сохраните его в любом месте, а затем дважды щелкните по нему для запуска (AutoHotkey должен быть установлен). Вы можете отключить его через иконку в трее, если вы хотите, если вы хотите скрыть иконку в трее, добавьте # NoTrayIcon в начало сценария.

Копируем исходный код без нумерации строк


Бывает при выводе информации требуется ее декорировать для лучшего восприятия, нередко оформление сопровождается в том числе и текстом. При выделении и копировании этой информации, оформление копировать не нужно, т.к. нужна только сама информация, и желательно в исходном виде. То есть при копировании часть выделенного текста не должна попадать в буфер обмена.
В моем случае это исходный код, который сопровождается нумерацией строк, так нагляднее и есть возможность сослаться на строку кода. Однако, если мы хотим скопировать часть кода, то он должен копироваться без номера строки.
Многие highlighter’ы этим грешат, при копировании кода копируют в том числе и номера строк. Выходят из ситуации по разному: либо используют хитрую верстку, при которой возможно несовпадении нумерации со строками (можно заметить на github например), или используют специальную кнопку, которая показывает в отдельном окне код без форматирования. Мне показались эти подходы неудовлетворительными, потому решил найти другое решение.
В данной заметке я опишу решение, к которому в итоге пришел. Решение, конечно, частное, но может кому то оказаться полезным в решении собственных задач.

Начнем с того, что кратко пройдемся по возможным вариантам решения.

Способ первый, очевидный.

Самый простой и очевидный способ, это сделать нумерованный список, где каждый элемент списка это отдельная строка. Основной плюс у этого подхода: все просто и не нужно задумываться даже о нумерации. Но при этом нельзя управлять форматом нумерации, нельзя позиционировать маркер (номер строки) и вообще как-то его декорировать. К тому же Internet Explorer и Firefox копируют текст вместе с маркером.
Собственно проблема с копированием перечеркивает возможность использования этого подхода.

Второй способ, менее очевидный.

Второе что приходит на ум — использовать генерируемый контент. Можно даже смирится с тем, что в старых IE это не будет работать (на этот случай можно, конечно, сделать fallback). Но беда в том, что Internet Explorer и Opera копируют весь видимый текст, в том числе и генерируемый контент.
Сложно сказать правы ли разработчики Internet Explorer/Opera или же правы разработчики webkit и Firefox относительно копирования генерируемого контента. Одно можно сказать с уверенностью, что метод не подходит.

Небольшая ремарка

В webkit и Firefox поддерживаются такое свойство CSS как user-select (со своими префиксами -webkit-user-select и -moz-user-select), с помощью которых можно запретить выделять текст. В Internet Explorer’е есть html атрибут unselectable. Однако все это лишь предотвращает начало процесса выделения, то есть если текст все же попал в область выделения, то он будет скопирован.
Более того, все блоки попавшие в область выделения, даже невидимые (display: none; или visibility: hidden;) так же в итоге попадают в буфер обмена.
Все это весьма печально, так как нет нормального способа определить — какой текст нужно копировать, а какой нет.

Способ третий, ненормальный.

Блуждая по интернетам в поисках решения, что-то навело на мысль использовать для вывода декоративного текста. Да-да, поле ввода для вывода текста. Необходимый текст прописываем в значение value, убираем padding, margin, border, background, задаем остальные стили — и никто не скажет что это input. Выделяем наш текст, копируем, вставляем в блокнот — все браузеры ведут себя одинаково, теги с содержимым не вставляются.
Остается побороть неприятный момент, поле ввода может получать фокус, и нельзя начать выделение текста с нумерации — выделяется текст поля. Но это уже, на самом деле, мелочи.
Чтобы нельзя было передать полю фокус мышкой в webkit и Firefox есть приятность — это CSS свойство pointer-events, которому можно задать значение none. Для Internet Explorer’а можно добавить для поля атрибут unselectable=«on». С Opera пока никак.
Чтобы нельзя было передать фокус с клавиатуры (и другими способами) добавляем для атрибуты readonly и tabindex=»-1″.
В Firefox и webkit все отлично, но в Internet Explorer нельзя начать выделение начиная с области нумерации, а в Opera по прежнему выделяется текст поля, а не исходный код. Чтобы решить проблему добавим для каждого дополнительный блок, который будет перекрывать . Этот блок должен иметь те же размеры, что и , а так же быть прозрачным. К сожалению (или к счастью), если если блок не имеет фона, то он «простреливается», то есть ведет себя как будто его нет, потому ему нужно добавить background. Можно добавить либо прозрачный gif файл, либо просто путь к несуществующему файлу, например background: url(#); (можно было бы использовать rgba(), но в IE это поддерживается только начиная с 9й версии).

Вот, в принципе, и все.

В итоге имеем следующий html для блока с исходным кодом (переводы строк для наглядности, целевой html должен быть без них, иначе можем получить ненужные переводы строк при копировании):

И CSS для этого «безобразия»:

Демо на примере исходного кода atomjs (надеюсь TheShock не против 😉
Html-кода много, но он генерируется javascript’ом (свой highlighter).
Тестировалось под Chrome/Safari, Firefox 3.6, Opera 11, IE7-9 (переключением режимов в IE9 RC).

На что стоит обратить внимание

  • Решение использует только возможности HTML и CSS, без спец хаков для браузеров.
  • webkit впереди планеты всей, лучше всего работает в браузерах на его движке, можно сказать идеальный сценарий.
  • Для Firefox пробелы в начале строк нужно заменять на иначе при копировании они будут вырезаться.
  • В Opera текст начинает выделятся только если курсор мыши находится непосредственно над текстом. Начать выделение можно и с нумерации, но фактически текст начнет выделяться только когда курсор окажется над текстом.
  • Важна вложенность свойства white-space. В данном случае ключевыми блоками является .code -> .line -> .lineContent, поэтому рабочим будет цепочка pre -> pre -> pre-wrap и, возможно, другие варианты (нужно проверять). От заданых значений зависит как браузер будет трактовать блоки при преобразовании в текст; при определенных значениях браузер может любой блочный элемент (display: block) выделять в отдельную строку текста, при этом могут получиться пустые строки между строками текста или же игнорировать переносы (например, IE7 может копировать весь текст одной строкой).
  • При вставке в редактор, который понимает text/html (например, MS Word), так же вставятся поля. Момент неприятный, но чаще редакторы не понимают text/html, так что переживать не стоит.

Буду рад замечаниям и советам по улучшению.

UPDATE
Найден workaroud чтобы при вставке в Word/Excel не вставлялись поля ввода. Чтобы этого добиться для нужно задать несуществующее значение атрибута type. В таком случае браузеры игнорируют атрибут и поле имеет тип по умолчанию, то есть type=«text», а при копировании (или вставке) не описаны сценарии как поступать с полями неизвестного типа — в итоге поле игнорируется. Так что код можно спокойно вставлять, например, в Word. При этом если код копируется из Chrome/Safari или из IE, то он будет вставлен с раскраской (webkit так же копирует и фон, а IE копирует без фона), что может в ряде случаев может оказаться полезным.

Как активировать копипаст в обращении на гибдд.рф

После обновления портала ГИБДД, примерно в январе этого года, появилась проблема с вставкой текста в форму приема обращений https://гибдд.рф/request_main (на сайте подключили nocopy.js, призванный, видимо, защитить контент сайта от копирования; при том что всю опубликованную информацию разрешено использовать без каких-либо ограничений).

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

Пока запрос на отключение nocopy.js рассматривается, вот быстрый хак для Google Chrome:

2. Переходим во вкладку Сonsole.

3. Вставляем: $(function()document.ondragstart=n,document.onselectstart=n,document.oncontextmenu=n,document.oncopy=n,document.onpaste=n>);

5. Закрываем web inspector нажатием на F12.


Теперь текст можно вставлять и копировать.

Повторять при каждой загрузке страницы c формой.

Как использовать панель разработчика в браузере для работы с кодом сайта 13

Здравствуйте, дорогие друзья. Панель (консоль) разработчика в браузере – это незаменимый инструмент для каждого владельца сайта, с помощью которого можно быстро просмотреть html код страницы и css стили. А также узнать об ошибках, возникших при загрузке сайта и проверить сайт на адаптивность.

Именно работу с html кодом, css стилями и адаптивностью в панели разработчика мы сегодня и рассмотрим. Это те инструменты, которые требуются для решения большинства задач.

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

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

Тогда вы смотрите через панель разработчика в браузере на нужный элемент, где видны html код и css стили к нему.

А далее, дело техники, копируете и вставляете к себе на сайт.

Другой вариант использования панели, – это когда вы хотите что-то сделать на сайте, но пока не знаете, как это будет выглядеть.

В этом случае тоже можно использовать панель разработчика и посмотреть, как ваша задумка будет выглядеть в браузере. Ведь всё, что вы делаете в панели разработчика видно только вам. А для того чтобы ваши эксперименты увидели посетители, потребуется переносить стили и коды в файлы сайта.

Открытие панели вебмастера и знакомство с интерфейсом

Панель разработчика присутствует в каждом современном браузере. Для того чтобы её открыть нужно нажать на клавиатуре клавишу F12.

Интерфейс панели в разных браузерах будет отличаться, но принципы работы схожие.

Мне больше нравится панель в браузере Firefox.

Сама панель поделена на две половины и содержит вкладки и инструменты для работы.

В панели можно просматривать HTML код страницы и редактировать его тут же. Для этого выбираете нужный элемент, нажимаете правую кнопку мышки и в меню выбираете «Править как HTML (Edit as HTML)».

Для работы со стилями нужно перейти к разделу панели CSS, где можно добавлять стили или отключать имеющиеся, убрав чекбокс напротив них. Менять можно всё.

Здесь же можно узнать в каком файле находятся стили, и на какой строке.

Как проанализировать html элемент на сайте и узнать его стили css

Давайте рассмотрим пример на моей форме подписки, которая располагается в каждой статье.

Для того чтобы проанализировать нужный элемент, необходимо нажать на нём правую кнопку мышки, и выбрать пункт меню «Исследовать элемент».

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

Весь принцип работы с кодом, в панели, заключается в том, что нужно выбрать код html в левом окне, а в правом будут стили для этого элемента.


И если со стилями всё достаточно просто, то при работе с кодом html нужно понимать его целостность. То есть каждый элемент имеет теги, в которых он находится. Это могут быть абзацы, ссылки, изображения и так далее. Чаще всего это блоки DIV, которые имеют открывающий тег и закрывающий . И в панели это всё хорошо видно.

При копировании или редактировании важно понимать, где блок начинается и где он заканчивается. Допустив здесь малейшую ошибку можно нарушить всю вёрстку шаблона.

В видеоуроке на этом моменте я остановлюсь подробно. А если хотите быстро освоить базовые знания по html и css, советую перейти на страницу «Бесплатно» и скачать курсы Евгения Попова.

Как скопировать код html из панели в файлы сайта

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

Итак, рассмотрим пример копирования баннера с моего блога и переноса его на другой сайт.

Для этого нужно открываю панель разработчика, исследуя нужный элемент. Определив начало блока ДИВ, нажимаете правую кнопку мушки и выбираете пункт меню «Копировать внешний HTML»

Код скопирован в буфер обмена, и теперь его нужно вставить в то место, где вы хотите видеть этот баннер.

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

Процесс этот описывать достаточно сложно, поэтому предлагаю посмотреть видеоурок, в котором всё подробно рассказано и показано.

Как перенести стили из панели разработчика в файлы сайта

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

Далее, копируете стили из панели разработчика, и вставляете в файл style.css или другой файл, отвечающий за стили в вашей теме.

Затем открываете в новой вкладке административную панель сайта – «Внешний вид»«Редактор» — файл, отвечающий за стили. Обычно это style.css.

Я же предпочитаю делать все эти манипуляции через ftp-соединение, для меня это удобнее. Так как при работе в Notepad++ есть подсветка кода и нумерация строк. А это сильно помогает, когда нужно непросто скопировать стили, а внести изменения в имеющиеся. По номеру строки эти стили легко найти.

Как проверить адаптивность шаблона в панели разработчика

Для перевода панели в адаптивный режим нужно нажать сочетание клавиш CTRL+SHIFT+M или кнопку в панели разработчика, которая в разных браузерах расположена по-разному.

А далее, достаточно изменять размеры окна и наблюдать за адаптацией шаблона. Именно этот инструмент позволяет определить точки излома для создания медиазапросов.

Заключение

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

Использование панели и навыки работы с кодом и стилями незаменимы при работе с сайтами и партнёрскими программами.

Берите инструмент на вооружение, он вам пригодится ещё много раз.

Если же остались вопросы, буду рад ответить на них в комментариях.

Друзья, желаю вам успехов. До встречи в новых статьях.

Добавить комментарий