LINUX.ORG.RU

Сообщения xydo

 

высокоприоритетная консоль для gui

Форум — Desktop

Задался целью заиметь высокоприоритетную консоль, в которую можно было бы спокойно переключиться при очень высокой загрузке CPU и IO.

В рамках тестирования поставил guake и назначил ему наивысшие приоритеты через renice и ionice. Запустил задачу, жрущую IO. Консоль вылезла раньше, чем закончилась задача, но этого мало. Полагаю, что подвел хоткей.

Есть ли возможность как-нибудь ускорить обработку хоткеев, не поднимая приоритет всему DE?

Есть у кого наработки в этом деле?

Может есть готовые решения?

Гугль дал одно решение, но для удаленного сервера: http://vorona.com.ua/utils/rexec/

PS: консоли, доступные по Ctrl+Alt+Fx просьба не предлагать, ибо не подходят и начинают еще больше тормозить систему

PS2: исходники guake намекают, что он использует GDK для отлова хоткея. курю дальше...

xydo
()

[2 exception13] вопрос по поводу резистивного стекла

Форум — Talks

Однажды вы писали, что используете такое стекло http://sensis.ru/catalog/rezz/2024.html

Вопрос: как вы его устанавливали? Вскрывали дисплей? Если да: не было ли проблем с его сборкой обратно и не появился ли зазор между задней крышкой дисплея и передней рамкой?

xydo
()

[Qt][WTF][Наследование][возможно баян] какая-то фигня с наследованием

Форум — Development

hi, LOR.

что-то тут не так. есть идеи?

$ls
wtf.cpp  wtf.h
$cat wtf.h
#include <QSettings>
class C : public QSettings
{
	Q_OBJECT
	public:
		C():QSettings("1","2"){}
		int value(int key, int def) {
			return value(QString::number(key), QVariant(def)).toInt();
		}
};
$cat wtf.cpp
#include "wtf.h"

int main()
{
	QSettings s("1","2");
	s.value("3","123");
	C c;
	c.value(3,123);
	c.value(QString::number(3),QVariant(123));
	return 0;
}
$qmake-qt4 -project
$qmake-qt4 
$make
g++ -c -pipe -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I/usr/include/QtCore -I/usr/include/QtGui -I/usr/include -I. -I. -o wtf.o wtf.cpp
In file included from wtf.cpp:2:
wtf.h: In member function ‘int C::value(int, int)’:
wtf.h:8: error: no matching function for call to ‘C::value(QString, QVariant)’
wtf.h:7: note: candidates are: int C::value(int, int)
wtf.cpp: In function ‘int main()’:
wtf.cpp:9: error: no matching function for call to ‘C::value(QString, QVariant)’
wtf.h:7: note: candidates are: int C::value(int, int)
make: *** [wtf.o] Error 1
$g++ --version
g++ (GCC) 4.3.2 20081105 (Red Hat 4.3.2-7)
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

PS: гуглил, но не глубоко...

PPS: в таком варианте ошибки на этой строке не возникает:

		int value(int key, int def) {
			return QSettings::value(QString::number(key), QVariant(def)).toInt();
		}

 , ,

xydo
()

[VCS][Хочется странного] спрятать файлы от других разработчиков

Форум — Development

Hello, всемогущий all. Вопрос по VCS.

Делаю проект, его разработка делится на два этапа:
1) написание минимального количества кода работающей программы (1 человек)
2) поддержка, исправление багов, расширение функционала (много людей, я админю)

Нахожусь на 1-ом этапе, но уже сейчас понадобился контроль версий.
Однако в директории с проектом есть файлы, которые нужны только на 1-ом этапе и обязательно должны быть под контролем VCS.
Надо сделать так, чтобы у других разработчиков не было доступа ни к ним, ни к истории изменений 1-го этапа.
При этом желательно, чтобы у меня оставался к ним доступ, и чтобы я мог в любое время получить полную версию всего проекта (все мои файлы с 1-го этапа + мои и чужие изменения 2-го этапа).

возможно ли это, как это (проще) сделать и что для этого лучше подходит (git или svn)?

пока придумал следующие варианты:
1) отделить бранч (devel) от головы, добавить все свои файлы, по завершении этапа 1 удалить ненужные файлы, слить в основную ветку (trunk)
2) отделить бранч (devel) от головы, добавить все свои файлы, по завершении этапа 1 идет банальный cp devel/* trunk/* + cd trunk + commit
3) для DVCS: то же самое что и 1 или 2, только отдельная копия репозитория вместо бранча. (насколько сложно потом перекидывать изменения??)
4) отдавать контент в зависимости от пользователя (реализовано ли это вообще где-нибудь??)
нежелательный 5) не парить мозг и завести потом новый репозиторий, а первый сохранить на память.

 ,

xydo
()

[Qt][развелось тут] QTextDocument и html

Форум — Development

Чтобы получить некую инфу из html-я юзаю QTextDocument. При этом в html есть несколько картинок-ссылок: <a href=«blah.html»><img src=«blah.jpg» /></a>

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

Однако в программе хотелось бы узнать является ли текущий блок картинкой, а заодно заполучить строчки «blah.html» и «blah.jpg». По первому пункту пытался через b.blockFormat().objectType(): возвращает NoObject. Есть ли у кого какие-нибудь идеи по обоим пунктам? Реально ли это сделать через QTextDocument или надо писать дополнительный код? Что может помочь (кроме регэкспов)?

Прикручивать html-парсеры на данном этапе разработки точно не буду, да и в будущем вряд ли.

PS: ничего полезного в примерах не нашел, в гугле тоже.

 

xydo
()

есть ли среди консольных ютилит ...?

Форум — Development

нечто вроде транспонирования таблицы данных.

проблема вот в чем: есть N файлов с текстом вида

поле1:значение1
...
полеI:значениеI
строка текста
полеJ:значениеJ
...
полеK:значениеK

I,J,K и названия полей везде одинаковы и известны.

надо составить таблицу:

файл  поле1     ... полеI              полеJ     ... полеK
1     значение1 ... значениеI  строка  значениеJ ... значениеK
2     значение1 ... значениеI  строка  значениеJ ... значениеK
...
варианты исполнения: 1) цикл с join-ом + транспонирование; 2) транспонирование + cat (хочу этот, т.к. проще)

собственно вопрос: если ли среди __стандартных__утилит__ что-то, что может помочь с транспонированием? «однострочники» на скрипто-языках также приветствуются.

ЗЫ: в первом варианте можно было бы замутить через Calc, но лень копать join.

xydo
()

RSS подписка на новые темы