Редактировать много файлов в разных вкладках вима:
vim -p $(grep "Attempted" -r ./tests/*.py | awk '{print substr($1, 1, length($1)-1)}')
Ищем определённое сообщение об ошибке в папке тестов, печатаем часть до пробела (
UPD: чуть более правильная версия
Другой юз-кейс:
$0
– вся строка, $1
– от начала до первого пробела, $2
– между первым и вторым пробелом и т.д.), потом срезаем последний символ (двоеточие).UPD: чуть более правильная версия
vim -p $(grep "relative" -r . --include=*.py | awk -F : '{print $1}' | uniq)
Другой юз-кейс:
vim -p $(git status | grep "both modified" | awk '{print $3}')
Разрешаем конфликты оптом (если
git mergetool
не работает)Пуллреквесты в битбакете, когда у вас дата сайенс
Джаваскрипт для пуллреквестов в битбакете, который скрывает ноутбуки и таблицы (оставляя заголовки)
let elements = document.getElementsByTagName("section");
Array.prototype.forEach.call(
elements,
elem => {
if (elem.id.substr(-6, 6) == ".ipynb" || elem.id.substr(-4, 4) == ".csv") {
console.log(elem.id);
let container = elem.children[0];
container.removeChild(container.children[1]);
}
});
Настроить скроллбары в джупитер ноутбуке
display(HTML("""<style>
div.output_html {
white-space: nowrap;
}
div .output_subarea > pre {
white-space: pre;
word-wrap: normal;
}
div .output_stdout > pre {
white-space: pre-wrap !important;
word-wrap: break-word !important;
}
</style>"""))
Теперь ноутбук становится удобнее для просмотра длинного вывода.
Во-первых, он не переносит длинные строки (если они появились через
Во-первых, он не переносит длинные строки (если они появились через
display
), а у длинных ячеек появляется горизонтальный скроллбар.
Во-вторых, длинные строки, которые появились из
stdout
(то есть через print
), по-прежнему дробятся и переносятся.