LINUX.ORG.RU

Вышел nlkt 0.2.2.1

 nlkt,


0

0

Всем любителям попробовать что-то новое и покритиковать представляется нелинейный клавиатурный тренажёр nlkt, текущая версия - 0.2.2.1. Тулкит - Qt4.

Возможности:

  • упражнения не заданы изначально, они формируются динамически;
  • в качестве части упражнений использованы "фортунки", они же fortunes;
  • несколько профилей для одного пользователя;
  • поддержка разных раскладок для набора (пока что есть русская и английская);
  • возможность просмотра подробной статистики в виде таблиц и графиков;
  • визуальная клавиатура с подсказками по ходу упражнения;
  • языки интерфейса - русский, украинский, английский.
Программа требует библиотеку qwt.

Скриншоты, исходники, deb-пакеты для i386 и amd64, deb-src-архив в наличии здесь: http://www.qt-apps.org/content/show.p...

>>> Страница проекта на sourceforge

★★★★

Проверено: Shaman007 ()

Ответ на: комментарий от anonymous

>У тебя код понятный?

Ну, я стараюсь, чтобы был таким.

>Стоит пробовать сделать порт для GTK+?

Я старался абстрагироваться там, где можно было. Но много где используется QString. Если в Gtk+ ему есть достойная замена, можешь попробовать :)

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

_База_ для качественного набора (по моему опыту) - это всё же набор отдельных букв. И только после этого - стандартные комбинации. Нужно и то, и другое.

Хотя большой скоростью/качеством похвастать не могу; т.ч. желающие проигнорировать мой опыт имеют на это основание :)

alexsaa
()
Ответ на: комментарий от alexsaa

>Нужно и то, и другое.

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

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

>Гораздо эффективнее набирать комбинации - они создают рефлексы.

я и говорил про комбинации. Можешь посмотреть Key To он под DOSBOX-ом нормально идет.

sh_topor
()
Ответ на: комментарий от sh_topor

По-моему, речь шла о случайных комбинациях четырёх букв, не так ли? скажем, "рвга" вполне бы подошла?

JackYF ★★★★
() автор топика
Ответ на: комментарий от sh_topor

Кстати, под винду ребята клепавшие keyto выпустили VerseQ. Очень хороший тренажер, я считаю.

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

"Сало на клавиатуре" -- это вообще инструмент мазахистов, или же эксперимент Шахиджаняна над обитателями интернетов (ну, как Луговский прикалывался, помните?).

Harliff ★★★★★
()

Ура, немного запустил :)

1. По-русски поучиться мне не удалось. Русских "фортунок" как-то не нашлось, а фразу "No fortunes found" набрать не удаётся, т.к. полностью игнорирует попытки вводить латинские буквы. Поскольку букв в этой фразе больше, чем допустимо ошибок, то на этом я и застрял.

2. Уже на втором упражнеии (в английском варианте) она выдала мне длинную строку, и скроллер внизу. Но только скороллер никак не работает. И окно увеличить не удаётся. В итоге набирать приходится только по одной. по подсказке на изображении клавиатуры. А это *очень* скучно. ... впрочем, удалось подвинуть - надо кликнуть мышью в текст, а потом подвинуть стрелками. Но теперь не нажимаются кнопки :( Точнее, иногда нажимаются, но скроллер слетает в левую позицию.

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

3. Всё, что успел увидеть в твоей прогамме - это то, что мне дали повторить то, в чём я ошибся. В этой связи вспоминаю своё собственное поделие (не опубликованное), написанное на яве (и правда "не тормозит" (c)), и, как мне кажется, имеющее ряд оригинальных идей (хотя и примитивный интерфейс). Но это проще показать, чем долго рассказывать про неудачно использованные в ней статистические модели :) Там идей было выше крыши, но точные замеры показали, что, несмотря на привлекательность, её эффективность на небольшом временном интервале чуть ниже нуля. Хотя идеи всё ещё есть, но дело оказалось сложнее, и уверенности в правильности динамического подхода у меня нет. Исследовал ли ты объективную практическую эффективность своей программы?

alexsaa
()
Ответ на: комментарий от alexsaa

>Русских "фортунок" как-то не нашлось

По-хорошему (мне) это надо бы определять на этапе создания профиля. Но в чём проблема установить русские фортунки?

>2. Уже на втором упражнеии (в английском варианте) она выдала мне длинную строку, и скроллер внизу. Но только скороллер никак не работает. И окно увеличить не удаётся. В итоге набирать приходится только по одной. по подсказке на изображении клавиатуры. А это *очень* скучно. ... впрочем, удалось подвинуть - надо кликнуть мышью в текст, а потом подвинуть стрелками. Но теперь не нажимаются кнопки :( Точнее, иногда нажимаются, но скроллер слетает в левую позицию. Если удастся одолеть эту проблему, я бы продвинулся дальше.

Так быть не должно. Со стилями, что ли, проблема? А можно ли скриншот?

>Исследовал ли ты объективную практическую эффективность своей программы? Я программист. Я написал программу для себя и решил, что она может быть полезна ещё кому-либо. Исходники свободны. Не нравится - не используй, и всё.

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

> Так быть не должно.

Чего именно? Скроллер не должен появляться?

что-то типа такого: http://stream.ifolder.ru/6063776

> Я программист. Я написал программу для себя и решил, что она может быть полезна ещё кому-либо. Исходники свободны. Не нравится - не используй, и всё.

Да, может быть полезна. Да, не хочешь говорить о методике сверх исходников - не говори. Ок. Моё право - интересоваться, твоё - не отвечать.

alexsaa
()
Ответ на: комментарий от Harliff

И каким образом научились печатать Вы?! В Соло все верно - нужно в первую очередь выработать безошибочность. Я по молодости спешил, спешил - кое как на тройки все прошел, но научился. Но вот теперь, когда метод отработан до автоматизма и скорость приличная - ошибки стали раздражать, очень. И уже подумываю как от них избавиться. Скорее всего ещё раз пройду Соло.

Да, учился ЙЦУКЕН, QWERTY сама собой пришла. Завидую англоговорящим.

CtrlAltBs
()

>1. По-русски поучиться мне не удалось. Русских "фортунок" как-то не нашлось, а фразу "No fortunes found" набрать не удаётся
+1

зы
для сборки под Генту:
diff -r nlkt-0.2.2.1/src/nlkt.pro _nlkt-0.2.2.1/src/nlkt.pro
9,10c9,10
< LIBS += -lqwt-qt4
< INCLUDEPATH += /usr/include/qwt-qt4
---
> LIBS += -lqwt
> INCLUDEPATH += /usr/include/qwt5/

EqX
()
Ответ на: комментарий от JackYF

> у, можно и так сказать. Иногда в камментах тоже что-то полезное может родиться :)

Угу, гомно же как удобрение юзают, а там растет и растет, а потом куритца и куритца... ой, куда это я

h4tr3d ★★★★★
()
Ответ на: комментарий от anonymous

> Первая попытка: 1 мин. 22 сек.

> trfdls 'dl3890234euoskjdf89q34jqoio789*uJKSLJSGUYAHJWYhjksdkwiUdHWUhjskadhqiuwhalsiIUO > DSksakjda sieyuuqiwuhKDJHLU dsfaUYUUssjuUQWQP {xksyu7ASTUJBNxjksuUSY

У тебя там ошибка. Вместо UO в конце первой строки, - надо было писать OU. Занимайся дальше =)

anonymous
()
Ответ на: комментарий от anonymous

> А для GTK+ будет версия? Красноглазое пионерство не позволяет мне юзать QT.

Обратись к психиатру.

anonymous
()

В диалогах желательно использовать QDialogButtonBox. Он авзложит кнопки так, как принято в системе. И кнопки, размазанные по всему виджету, не есть красиво

adarovsky ★★★★
()
Ответ на: комментарий от alexsaa

>Чего именно? Скроллер не должен появляться?

Да. Посмотрел скрин. Какую версию ты запускал? Это был глюк, который я исправил (вроде бы) в 0.2.1

>Да, не хочешь говорить о методике сверх исходников - не говори. Ок. Моё право - интересоваться, твоё - не отвечать.

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

JackYF ★★★★
() автор топика
Ответ на: комментарий от adarovsky

>И кнопки, размазанные по всему виджету, не есть красиво

Возможно. Альтернатива? Фиксированный размер?

>В диалогах желательно использовать QDialogButtonBox.

Спасибо, посмотрю.

JackYF ★★★★
() автор топика
Ответ на: комментарий от alexsaa

Да, и ещё насчёт скроллбара. Можешь запостить ещё и файл профиля? в ~/.nlkt/profiles лежит.

JackYF ★★★★
() автор топика

Chto-to ne udaetsia sobrat' v Fedora Core :( Chto delau ne tak:

[root@fc nlkt-0.2.2.1]# ./build-local.sh make: *** No rule to make target `release'. Stop.

[root@fc nlkt-0.2.2.1]# uname -a Linux fc.hom 2.6.24.4-64.fc8 #1 SMP Sat Mar 29 09:54:46 EDT 2008 i686 i686 i386 GNU/Linux

[root@fc nlkt-0.2.2.1]# whereis libqwt libqwt: /usr/lib/libqwt.so

[root@fc nlkt-0.2.2.1]# whereis qwt qwt: /usr/include/qwt

v faile src/nlkt.pro propisyval:

LIBS += -libqwt INCLUDEPATH += /usr/include/qwt

Pros'ba: podskjite, pls., ne obdavaya pomoyami: Chto nujno sdelat', chtoby sobralsia binarik PS: Thx

anonymous
()
Ответ на: комментарий от JackYF

> Re: "ну, во первых, сидишь под рутом :)"

Znau: prosil je: bez pomoev :)

[root@fc nlkt-0.2.2.1]# ls -R .: build-local.sh README share src

./share: default_profiles images layouts translations

./share/default_profiles: en ru

./share/images: keyboard.png

./share/layouts: en ru

./share/translations: nlkt_ru.qm nlkt_ru.ts nlkt_uk.qm nlkt_uk.ts

./src: FortunesGetter.cpp Layout.cpp main.cpp nlkt.pro ProfileManager.hpp StatsLogic.cpp UserProfile.cpp FortunesGetter.hpp Layout.hpp MainWidget.cpp nlkt.pro~ RichboxWidget.cpp StatsLogic.hpp UserProfile.hpp KeyboardWidget.cpp Logic.cpp MainWidget.hpp Path.hpp RichboxWidget.hpp StatsWidget.cpp yf KeyboardWidget.hpp Logic.hpp Makefile ProfileManager.cpp Setup.hpp StatsWidget.hpp

./src/yf: defs.hpp random time

./src/yf/random: random.cpp random.hpp

./src/yf/time: time.cpp time.hpp [root@fc nlkt-0.2.2.1]#

anonymous
()
Ответ на: комментарий от abraziv_whiskey

Эээ... ну, это я точно использовать не буду :)

Кстати, страница говно. Расскажите вебмастеру кто-нибудь, что cp1251 не является кодировкой по-умолчанию и её надо прописывать.

JackYF ★★★★
() автор топика
Ответ на: комментарий от anonymous

Всё нормально. У меня из svn всё собирается, и у народа, видать, тоже собиралось. Покажи cat /src/nlkt.pro, cat Makefile

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

> RE: Всё нормально. У меня из svn всё собирается, и у народа, видать, тоже собиралось. Покажи cat /src/nlkt.pro, cat Makefile:

[root@fc nlkt-0.2.2.1]# cat src/nlkt.pro ###################################################################### # Automatically generated by qmake (2.01a) Sun Sep 9 19:56:24 2007 ######################################################################

TEMPLATE = app TARGET = DEPENDPATH += . DEFINES += NDEBUG #LIBS += -lqwt-qt4 LIBS += -libqwt INCLUDEPATH += /usr/include/qwt #INCLUDEPATH += /usr/include/qwt-qt4

CONFIG += debug_and_release

unix { DEFINES += __LINUX } win32 { DEFINES += WIN32 }

QMAKE_CXXFLAGS += $(PATH_CFG) QMAKE_CXXFLAGS_RELEASE += -DQT_NO_DEBUG_OUTPUT

# Input HEADERS += \ KeyboardWidget.hpp \ RichboxWidget.hpp \ MainWidget.hpp \ FortunesGetter.hpp \ Logic.hpp \ Layout.hpp \ UserProfile.hpp \ ProfileManager.hpp \ StatsWidget.hpp \ StatsLogic.hpp \ yf/defs.hpp \ yf/time/time.hpp \ yf/random/random.hpp

SOURCES += \ KeyboardWidget.cpp \ RichboxWidget.cpp \ MainWidget.cpp \ FortunesGetter.cpp \ Logic.cpp \ Layout.cpp \ UserProfile.cpp \ ProfileManager.cpp \ StatsWidget.cpp \ StatsLogic.cpp \ main.cpp \ yf/time/time.cpp \ yf/random/random.cpp

TRANSLATIONS = \ ../share/translations/nlkt_ru.ts \ ../share/translations/nlkt_uk.ts

# install

share.path = /usr/share/nlkt share.files = ../share/* INSTALLS += share

target.path = /usr/bin INSTALLS += target [root@fc nlkt-0.2.2.1]#

anonymous
()
Ответ на: комментарий от JackYF

[root@fc nlkt-0.2.2.1]# cat src/Makefile
Part 1:

[root@fc nlkt-0.2.2.1]# cat src/Makefile
#############################################################################
# Makefile for building: nlkt
# Generated by qmake (1.07a) (Qt 3.3.8b) on: Tue Apr 8 18:05:36 2008
# Project: nlkt.pro
# Template: app
# Command: $(QMAKE) -o Makefile nlkt.pro
#############################################################################

####### Compiler, tools and options

CC = gcc
CXX = g++
LEX = flex
YACC = yacc
CFLAGS = -pipe -Wall -W -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -DNDEBUG -D__LINUX -DQT_NO_DEBUG -DQT_SHARED -DQT_TABLET_SUPPORT -DQT_THREAD_SUPPORT
CXXFLAGS = -pipe $(PATH_CFG) -Wall -W -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -DQT_NO_DEBUG_OUTPUT -DNDEBUG -D__LINUX -DQT_NO_DEBUG -DQT_SHARED -DQT_TABLET_SUPPORT -DQT_THREAD_SUPPORT
LEXFLAGS =
YACCFLAGS= -d
INCPATH = -I/usr/lib/qt-3.3/mkspecs/default -I. -I/usr/include/qwt -I$(QTDIR)/include
LINK = g++
LFLAGS =
LIBS = $(SUBLIBS) -L$(QTDIR)/lib -libqwt -lqt-mt -lXext -lX11 -lm
AR = ar cqs
RANLIB =
MOC = $(QTDIR)/bin/moc
UIC = $(QTDIR)/bin/uic
QMAKE = qmake
TAR = tar -cf
GZIP = gzip -9f
COPY = cp -f
COPY_FILE= $(COPY)
COPY_DIR = $(COPY) -r
INSTALL_FILE= $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = rm -f
SYMLINK = ln -sf
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p

####### Output directory

OBJECTS_DIR = ./

####### Files

HEADERS = KeyboardWidget.hpp \
RichboxWidget.hpp \
MainWidget.hpp \
FortunesGetter.hpp \
Logic.hpp \
Layout.hpp \
UserProfile.hpp \
ProfileManager.hpp \
StatsWidget.hpp \
StatsLogic.hpp \
yf/defs.hpp \
yf/time/time.hpp \
yf/random/random.hpp
SOURCES = KeyboardWidget.cpp \
RichboxWidget.cpp \
MainWidget.cpp \
FortunesGetter.cpp \
Logic.cpp \
Layout.cpp \
UserProfile.cpp \
ProfileManager.cpp \
StatsWidget.cpp \
StatsLogic.cpp \
main.cpp \
yf/time/time.cpp \
yf/random/random.cpp
OBJECTS = KeyboardWidget.o \
RichboxWidget.o \
MainWidget.o \
FortunesGetter.o \
Logic.o \
Layout.o \
UserProfile.o \
ProfileManager.o \
StatsWidget.o \
StatsLogic.o \
main.o \
time.o \
random.o
FORMS =
UICDECLS =
UICIMPLS =
SRCMOC = moc_KeyboardWidget.cpp \
moc_RichboxWidget.cpp \
moc_MainWidget.cpp \
moc_Logic.cpp \
moc_ProfileManager.cpp \
moc_StatsWidget.cpp
OBJMOC = moc_KeyboardWidget.o \
moc_RichboxWidget.o \
moc_MainWidget.o \
moc_Logic.o \
moc_ProfileManager.o \
moc_StatsWidget.o
DIST = nlkt.pro
QMAKE_TARGET = nlkt
DESTDIR =
TARGET = nlkt

anonymous
()
Ответ на: комментарий от JackYF

cat src/Makefile

Part 2:

first: all
####### Implicit rules

.SUFFIXES: .c .o .cpp .cc .cxx .C

.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<

####### Build rules

all: Makefile $(TARGET)

$(TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(OBJCOMP) $(LIBS)

mocables: $(SRCMOC)
uicables: $(UICDECLS) $(UICIMPLS)

$(MOC):
( cd $(QTDIR)/src/moc && $(MAKE) )

Makefile: nlkt.pro /usr/lib/qt-3.3/mkspecs/default/qmake.conf /usr/lib/qt-3.3/lib/libqt-mt.prl
$(QMAKE) -o Makefile nlkt.pro
qmake:
@$(QMAKE) -o Makefile nlkt.pro

dist:
@mkdir -p .tmp/nlkt && $(COPY_FILE) --parents $(SOURCES) $(HEADERS) $(FORMS) $(DIST) .tmp/nlkt/ && $(COPY_FILE) --parents ../share/translations/nlkt_ru.ts ../share/translations/nlkt_uk.ts .tmp/nlkt/ && ( cd `dirname .tmp/nlkt` && $(TAR) nlkt.tar nlkt && $(GZIP) nlkt.tar ) && $(MOVE) `dirname .tmp/nlkt`/nlkt.tar.gz . && $(DEL_FILE) -r .tmp/nlkt

mocclean:
-$(DEL_FILE) $(OBJMOC)
-$(DEL_FILE) $(SRCMOC)

uiclean:

yaccclean:
lexclean:
clean: mocclean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core


####### Sub-libraries

distclean: clean
-$(DEL_FILE) $(TARGET) $(TARGET)


FORCE:

anonymous
()
Ответ на: комментарий от JackYF

# cat src/Makefile
Part 3:

####### Compile

KeyboardWidget.o: KeyboardWidget.cpp KeyboardWidget.hpp \
Setup.hpp \
Layout.hpp \
Path.hpp

RichboxWidget.o: RichboxWidget.cpp RichboxWidget.hpp \
Setup.hpp \
Path.hpp

MainWidget.o: MainWidget.cpp yf/defs.hpp \
yf/time/time.hpp \
MainWidget.hpp \
KeyboardWidget.hpp \
RichboxWidget.hpp \
StatsWidget.hpp \
UserProfile.hpp \
Setup.hpp \
Layout.hpp \
StatsLogic.hpp \
Path.hpp

FortunesGetter.o: FortunesGetter.cpp yf/random/random.hpp \
FortunesGetter.hpp \
UserProfile.hpp \
Setup.hpp \
yf/defs.hpp \
Layout.hpp \
Path.hpp

Logic.o: Logic.cpp FortunesGetter.hpp \
Logic.hpp \
Setup.hpp \
UserProfile.hpp \
yf/time/time.hpp \
yf/defs.hpp \
Path.hpp \
Layout.hpp

Layout.o: Layout.cpp Layout.hpp

UserProfile.o: UserProfile.cpp UserProfile.hpp \
Setup.hpp \
Layout.hpp \
Path.hpp

ProfileManager.o: ProfileManager.cpp ProfileManager.hpp \
Setup.hpp \
UserProfile.hpp \
Path.hpp \
Layout.hpp

StatsWidget.o: StatsWidget.cpp StatsWidget.hpp \
Setup.hpp \
StatsLogic.hpp \
UserProfile.hpp \
Layout.hpp \
Path.hpp

StatsLogic.o: StatsLogic.cpp yf/defs.hpp \
StatsLogic.hpp \
UserProfile.hpp \
Layout.hpp

main.o: main.cpp yf/random/random.hpp \
MainWidget.hpp \
ProfileManager.hpp \
FortunesGetter.hpp \
UserProfile.hpp \
Logic.hpp \
Setup.hpp \
yf/defs.hpp \
Layout.hpp \
yf/time/time.hpp \
Path.hpp

time.o: yf/time/time.cpp yf/defs.hpp \
yf/time/time.hpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o time.o yf/time/time.cpp

random.o: yf/random/random.cpp yf/random/random.hpp \
yf/defs.hpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o random.o yf/random/random.cpp

moc_KeyboardWidget.o: moc_KeyboardWidget.cpp KeyboardWidget.hpp Layout.hpp

moc_RichboxWidget.o: moc_RichboxWidget.cpp RichboxWidget.hpp

moc_MainWidget.o: moc_MainWidget.cpp MainWidget.hpp yf/defs.hpp

moc_Logic.o: moc_Logic.cpp Logic.hpp yf/time/time.hpp \
yf/defs.hpp

moc_ProfileManager.o: moc_ProfileManager.cpp ProfileManager.hpp

moc_StatsWidget.o: moc_StatsWidget.cpp StatsWidget.hpp StatsLogic.hpp \
UserProfile.hpp \
Layout.hpp

moc_KeyboardWidget.cpp: $(MOC) KeyboardWidget.hpp
$(MOC) KeyboardWidget.hpp -o moc_KeyboardWidget.cpp

moc_RichboxWidget.cpp: $(MOC) RichboxWidget.hpp
$(MOC) RichboxWidget.hpp -o moc_RichboxWidget.cpp

moc_MainWidget.cpp: $(MOC) MainWidget.hpp
$(MOC) MainWidget.hpp -o moc_MainWidget.cpp

moc_Logic.cpp: $(MOC) Logic.hpp
$(MOC) Logic.hpp -o moc_Logic.cpp

moc_ProfileManager.cpp: $(MOC) ProfileManager.hpp
$(MOC) ProfileManager.hpp -o moc_ProfileManager.cpp

moc_StatsWidget.cpp: $(MOC) StatsWidget.hpp
$(MOC) StatsWidget.hpp -o moc_StatsWidget.cpp

anonymous
()
Ответ на: комментарий от JackYF

# cat src/Makefile

Part 4:

####### Install

install_share: all
@$(CHK_DIR_EXISTS) "$(INSTALL_ROOT)/usr/share/nlkt/" || $(MKDIR) "$(INSTALL_ROOT)/usr/share/nlkt/"
-$(INSTALL_DIR) "../share/default_profiles" "$(INSTALL_ROOT)/usr/share/nlkt/"
-$(INSTALL_DIR) "../share/images" "$(INSTALL_ROOT)/usr/share/nlkt/"
-$(INSTALL_DIR) "../share/layouts" "$(INSTALL_ROOT)/usr/share/nlkt/"
-$(INSTALL_DIR) "../share/translations" "$(INSTALL_ROOT)/usr/share/nlkt/"


uninstall_share:
-$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/nlkt/default_profiles"
-$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/nlkt/images"
-$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/nlkt/layouts"
-$(DEL_FILE) -r "$(INSTALL_ROOT)/usr/share/nlkt/translations"
-$(DEL_DIR) "$(INSTALL_ROOT)/usr/share/nlkt/"


install_target: all
@$(CHK_DIR_EXISTS) "$(INSTALL_ROOT)/usr/bin/" || $(MKDIR) "$(INSTALL_ROOT)/usr/bin/"
-$(INSTALL_FILE) "$(QMAKE_TARGET)" "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)"

uninstall_target:
-$(DEL_FILE) "$(INSTALL_ROOT)/usr/bin/$(QMAKE_TARGET)"
-$(DEL_DIR) "$(INSTALL_ROOT)/usr/bin/"


install: install_share install_target

uninstall: uninstall_share uninstall_target

anonymous
()
Ответ на: комментарий от JackYF

> Re: Какая у тебя версия Qt?

Qt 3.3.8b

[admin@fc trunk]$ qmake -v
Qmake version: 1.07a (Qt 3.3.8b)
Qmake is free software from Trolltech ASA.
[admin@fc trunk]$

No est' i qt4:

[admin@fc trunk]$ whereis qt4
qt4: /usr/lib/qt4 /usr/share/qt4

anonymous
()
Ответ на: комментарий от JackYF

Spasibki ogromnye!

Jelau udachi v razrabotke:

zadumka interesnaya i idei u tebia tolkovye: uveren: esli dovesti do uma ento budet shedevr: V Dobriy put'!

anonymous
()
Ответ на: комментарий от JackYF

> >Чего именно? Скроллер не должен появляться?

> Да. Посмотрел скрин. Какую версию ты запускал? Это был глюк, который я исправил (вроде бы) в 0.2.1

Версия - nlkt-src_0.2.2.1.tar.gz. Других я вообще не видел.

> Ты говорил о каких-то там объективных исследованиях. [...] По моему, о методике речь не шла - спрашивай.

:) Я хотел спросить как раз по методике. Твоя методика эффективна? У тебя ж, вроде, графики есть, модно всё. И я подумал, что, глядя на них, можно определить, какие успехи. Это и значит "объективно".

Файл профиля:

$ cat ~/.nlkt/profiles/eng.v2
en
1207598936|0|0|pro|0
1207598985|108|33011| ;-|88|> |> |nu|us|. | ;
$

alexsaa
()
Ответ на: комментарий от JackYF

>Возможно. Альтернатива? Фиксированный размер?

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

adarovsky ★★★★
()
Ответ на: комментарий от alexsaa

>Я хотел спросить как раз по методике. Твоя методика эффективна? У тебя ж, вроде, графики есть, модно всё. И я подумал, что, глядя на них, можно определить, какие успехи. Это и значит "объективно".

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

>Файл профиля:

Спасибо, баг подтверждаю. Постараюсь скоро исправить :)

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

>Постараюсь скоро исправить :)

Исправил в svn. В пятницу, если получится, выпущу новую версию.

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

V "Fedora Core 8"

v faile src/nlkt.pro
vmesto
LIBS += -lqwt-qt4
nado propisyvat':
LIBS += -lqwt
Resume: Mojet avtomatizirovat' proverku nazvaniya biblioteki:
/usr/lib/libqwt.so?

1. Ne sovsem ponial prikola s Verhnim i nijnim registrom
na klavishah klaviatury: glaza riabit
Mojet ostavit' toka verhniy registr, kak v ktouch?
IMHO: vyrazitel'nee smotritsia
2. + zdelat' opciu: ne pokazyvat' klavu voobsche

anonymous
()
Ответ на: комментарий от anonymous

>v faile src/nlkt.pro >vmesto >LIBS += -lqwt-qt4 >nado propisyvat': >LIBS += -lqwt

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

>Mojet avtomatizirovat' proverku nazvaniya biblioteki: /usr/lib/libqwt.so?

Может. Предложения? autotools и cmake не предлагать :)

>Mojet ostavit' toka verhniy registr, kak v ktouch? IMHO: vyrazitel'nee smotritsia

Хм... нет. На неалфавитных клавишах содержатся два разных символа, оба надо показывать.

JackYF ★★★★
() автор топика
Ответ на: комментарий от anonymous

>там раскладка дворака есть?

сделай на основе русской раскладки (./share/layouts/ru) ./share/layouts/ru-dvorak и юзай на здоровье :)

А ещё мне можешь прислать, я добавлю, чтобы из коробки было :)

JackYF ★★★★
() автор топика
Ответ на: комментарий от anonymous

>Английского сделал, держи

Спасибо, уже лежит в svn. Заодно чуть поправил работу с раскладками.

JackYF ★★★★
() автор топика
Ответ на: комментарий от JackYF

> На неалфавитных клавишах содержатся два разных символа, оба надо показывать

Vot-vot:

predlagau ostavit' na nealfavitnyh klavishah 2 symvola,
na alfavitnyh klavishah - 1 symvol

anonymous
()
Ответ на: комментарий от JackYF

>Хорошо, спасибо

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

adarovsky ★★★★
()
Ответ на: комментарий от anonymous

Я подумаю. Но пока мне так наглядней.

JackYF ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.