СофтХабрахабр

[Из песочницы] Шпаргалка для программистов или «мы погуглим за вас»

Введение, которое можно не читать

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

Собственно, сама суть

Написан он на Python, так что питонисты могут заинтересоваться. Итак, представляю вам сервис «cheat.sh». Существует несколько его реализаций:

  • Через «curl» в командной строке;
  • Через браузер.
  • Через редакторы кода: Emacs, Vim, Sublime Text, VSCode.

Как использовать

Используя «curl»

В дистрибутивах Linux она уже есть, для Windows её нужно устанавливать отдельно. Здесь нужно иметь утилиту «curl». Проблем на Windows у меня не возникло.

Заходим в консоль и отправляем запрос такого типа:
curl cht.sh/[язык]/[запрос-с-дефисом-вместо-пробела]
Получаем ответ:

$ curl cht.sh/python/how-to-read-text-file
# How to read a text file into a list or an array with Python ...
#
# You will have to split your string into a list of values using split()
#
# So, lines = text_file.read().split(',') # [Achrome] [so/q/14676265] [cc by-sa 3.0]

Изначально утилита задумывалась как шпаргалка по командам для терминала Linux, поэтому можно искать справку по ним:

$ curl cheat.sh/tar
$ curl cht.sh/curl
$ curl https://cheat.sh/rsync
$ curl https://cht.sh/tr

Ещё можно установить консольную утилиту:

$ curl https://cht.sh/:cht.sh > ~/bin/cht.sh
$ chmod +x ~/bin/cht.sh

Пример использования здесь.
Для Windows таких команд нет, поэтому есть вариант использовать Cygwin, Git bash и так далее.
На ваш страх и риск.

Используя браузер

Просто переходим по нужной ссылке в браузере.
На примере www.cht.sh/python/how-to-read-text-file

image

Ссылку можно отправить в качестве ответа на Stackoverflow, к примеру.

Используя редакторы кода

Чтобы не выходя из редактора получить копипастом код решения. Зачем?

Плагин для Emacs,
Плагин для Sublime Text,
Плагин для Vim,
Плагин для VSCode.

Интересности

Авто-дополнение на Tab

Установка для Bash:

$ curl https://cheat.sh/:bash_completion > ~/.bash.d/cht.sh $ . ~/.bash.d/cht.sh $ # and add . ~/.bash.d/cht.sh to ~/.bashrc

Установка для ZSH:

$ curl https://cheat.sh/:zsh > ~/.zsh.d/_cht $ echo 'fpath=(~/.zsh.d/ $fpath)' >> ~/.zshrc $ # Open a new shell to load the plugin

Параметры ответа

T Если вам не нужна подсветка синтаксиса в ответе:
curl cht.sh/python/open-file?

Q Если вам нужен только код без комментариев:
curl cht.sh/python/open-file?

QT Вы можете это комбинировать:
curl chr.sh/python/open-file?

Стелс-режим

Чтобы быстро получить ответ. Открываем клиентскую версию с параметром «--shell» и используем:
$ cht.sh --shell [язык программирования]
$ stealth [параметры]
Зачем? Тут лишь вопрос вашей собственной совести. Автор предлагает использовать такое на дистанционных собеседованиях.

One-line решения

curl cht.sh/[язык]/1line

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

Странности языков программирования

curl cht.sh/[язык]/weirdness

Посмотреть другой ответ

Если вас не устроил текущий ответ на ваш запрос, можете посмотреть другой:
curl cht.sh/[язык]/[запрос]/[номер ответа]

И что, с помощью одной утилиты можно выучить основы языка?

$ curl cht.sh/[язык]/:learn

Заключение

Возможно, кто-то уже знает о «cht.sh» и использует, но на русском я не нашёл нормальных материалов о нём. В общем-то, всё. Спасибо, что прочли. На GitHub есть таблица полноты «cht.sh» по языкам, ссылки на плагины для редакторов и полное руководство, если кого-то не устроило моё.

Теги
Показать больше

Похожие статьи

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть