- 1
- 2
shopt -s nullglob
INSTALLER=$(echo $INSTALLER)
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
Всего: 116
−133
shopt -s nullglob
INSTALLER=$(echo $INSTALLER)
Вот таким нехитрым движением file glob превращается... превращается в имя файла
−123
# remove whole directory to avoid bugs like rm -rf ""/*
rm -rf "$CHROOT_DIR"
mkdir -p "$CHROOT_DIR"
Вспомнилось bumblebee
+2
void KateQuickOpen::update () {
// пропущено
QModelIndex idxToSelect;
int linecount = 0;
QMapIterator<qint64, KTextEditor::View *> i2(sortedViews);
while (i2.hasNext()) {
i2.next();
KTextEditor::Document *doc = i2.value()->document();
if (alreadySeenDocs.contains(doc))
continue;
alreadySeenDocs.insert (doc);
QStandardItem *itemName = new QStandardItem(doc->documentName());
itemName->setData(qVariantFromValue(QPointer<KTextEditor::Document> (doc)), DocumentRole);
itemName->setData(QString("%1: %2").arg(doc->documentName()).arg(doc->url().pathOrUrl()), SortFilterRole);
itemName->setEditable(false);
QFont font = itemName->font();
font.setBold(true);
itemName->setFont(font);
QStandardItem *itemUrl = new QStandardItem(doc->url().pathOrUrl());
itemUrl->setEditable(false);
base_model->setItem(linecount, 0, itemName);
base_model->setItem(linecount, 1, itemUrl);
linecount++;
if (!doc->url().isEmpty() && doc->url().isLocalFile())
alreadySeenFiles.insert (doc->url().toLocalFile());
// select second document, that is the last used (beside the active one)
if (linecount == 2)
idxToSelect = itemName->index();
}
// get all open documents
QList<KTextEditor::Document*> docs = Kate::application()->documentManager()->documents();
foreach(KTextEditor::Document *doc, docs) {
// skip docs already open
if (alreadySeenDocs.contains (doc))
continue;
QStandardItem *itemName = new QStandardItem(doc->documentName());
itemName->setData(qVariantFromValue(QPointer<KTextEditor::Document> (doc)), DocumentRole);
itemName->setData(QString("%1: %2").arg(doc->documentName()).arg(doc->url().pathOrUrl()), SortFilterRole);
itemName->setEditable(false);
QFont font = itemName->font();
font.setBold(true);
itemName->setFont(font);
QStandardItem *itemUrl = new QStandardItem(doc->url().pathOrUrl());
itemUrl->setEditable(false);
base_model->setItem(linecount, 0, itemName);
base_model->setItem(linecount, 1, itemUrl);
linecount++;
if (!doc->url().isEmpty() && doc->url().isLocalFile())
alreadySeenFiles.insert (doc->url().toLocalFile());
}
// insert all project files, if any project around
if (Kate::PluginView *projectView = m_mainWindow->mainWindow()->pluginView ("kateprojectplugin")) {
QStringList projectFiles = projectView->property ("projectFiles").toStringList();
foreach (const QString &file, projectFiles) {
// skip files already open
if (alreadySeenFiles.contains (file))
continue;
QFileInfo fi (file);
QStandardItem *itemName = new QStandardItem(fi.fileName());
itemName->setData(qVariantFromValue(KUrl::fromPath (file)), UrlRole);
itemName->setData(QString("%1: %2").arg(fi.fileName()).arg(file), SortFilterRole);
itemName->setEditable(false);
QFont font = itemName->font();
font.setBold(true);
itemName->setFont(font);
QStandardItem *itemUrl = new QStandardItem(file);
itemUrl->setEditable(false);
base_model->setItem(linecount, 0, itemName);
base_model->setItem(linecount, 1, itemUrl);
linecount++;
}
}
// swap models and kill old one
m_model->setSourceModel (base_model);
delete m_base_model;
m_base_model = base_model;
// пропущено
}
Адская копипаста. У меня мозг сегфолтится при попытке ее формализировать.
https://projects.kde.org/projects/kde/applications/kate/repository/revisions/master/entry/kate/app/katequickopen.cpp#L135
+123
@echo off
set PROGPATH="%ProgramFiles%\MyProg"
rem И тут мы захотели проверить, существует ли наша папочка
if not exists "%PROGPATH%" (
mkdir "%PROGPATH%"
)
rem виндовый шелл как бы нам говорит "братюнь, погоди, не спеши"
rem ""C:\Program was unexpected at this time.
Патч:
-set PROGPATH="%ProgramFiles%\MyProg"
+set "PROGPATH=%ProgramFiles%\MyProg"
+128
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<dict>
<key>author</key>
<string>Nobody</string>
<key>name</key>
<string>my-theme</string>
<key>settings</key>
<array>
<!-- ... -->
<dict>
<key>name</key>
<string>Attribute</string>
<key>scope</key>
<string>entity.other.attribute-name</string>
<key>settings</key>
<dict>
<key>fontStyle</key>
<string></string>
<key>foreground</key>
<string>#006E28</string>
</dict>
</dict>
<!-- ... -->
</array>
</dict>
</plist>
XML. Такой загадочный и энтерпрайзный.
// Цветовая схема для Sublime Text (или TextMate)
+157
var allowed = [ 0xfe, 0xfc, 0xf8, 0xf0,
0xe0, 0xc0, 0x80, 0x00 ];
for (var i = 0; i < parts.length; i++) {
var part = parts[i];
// ...
if ($.grep(allowed, function(a) { return part == a; }).length > 0) {
max = 0x00;
} else {
FocusObject(object);
show_alert( jstextTemplate("<jstext>field_contains_bad_IP_mask</jstext>", {name: name}) );
return false;
}
}
Кусочек валидации для маски подсети. Мы не ищем лёгких путей.
−165
#!/bin/bash
# This function can be redefined to use any
# source of random
function get_random() {
echo $RANDOM;
}
function debug() {
local str="$*"
printf "\e[s\e[0;0H$str\e[u"
}
# Set limit for iterations, if given
if [ $# -ge 1 ] && grep -q '^[[:digit:]]\+$' <<< $1 ; then
LIMIT=$1
fi
# Previous random value
PREV=$(get_random)
# Current state
STATE="none"
printf "Analyzing random:"
# Main loop
while [ "x$LIMIT" = "x" ] || [ "$LIMIT" -gt "0" ]; do
RND=$(get_random)
debug random is $RANDOM
if [ $RND -gt $PREV ]; then
[ $STATE = "inc" ] && printf "|" || printf "\ninc |"
STATE="inc"
else
[ $STATE = "dec" ] && printf "|" || printf "\ndec |"
STATE="dec"
fi #> /dev/null
[ -n "$LIMIT" ] && let "LIMIT = $LIMIT - 1"
sleep 1
done
printf '\nExtiting\n'
Не помню уже зачем я это написал. Искал закладки АНБ в баше?
// Хотя у меня на тазике прослеживается аддитивно-мультипликативный метод генерации псевдо-рандома.
+160
if ( String(typeof Ext).toLowerCase() === "object") {
Ext.BLANK_IMAGE_URL = '/style/ext/resources/images/default/s.gif';
}
Ох. Штабильненько.
+154
{
xtype: 'splitbutton',
// ...
handler: function () {
this.wasMenuShown = this.wasMenuShown ? (this.hideMenu(), false) : (this.showMenu(), true);
},
menu: {
xtype: 'menu',
items: []
}
}
По мотивам: http://govnokod.ru/12172
Написал. Задумался (запостил сюда). Переписал.
+153
App.ns.SomeClass.prototype = {
addMessage: function(status, msg, timeDelay) {
if (status === false || status === this.STATUS_ERROR) {
status = this.STATUS_ERROR;
delay = timeDelay || 5; // default delay of msg box for error is 5 seconds.
}
if (!timeDelay) {
// 1 character - 1/7 sec
delay = msg.length / 7;
if ((delay < 3) && !(timeDelay)) {
delay = 3;
} else if ((delay > 30) && !(timeDelay)) {
delay = 30;
}
}
// показываем messagebox
}
};
Кручу-верчу, запутать хочу.