Fast edit. Mały program o wielkim sercu, nadciąga!
Back to Nowości, odkrycia, newsy#1 pates
Witam! W końcu, po wielu, wielu miesiącach przemyśleń mogę zaprezentować mój projekt, czyli fast edit!
Czym jest fast edit?
Fast edit to aplikacja służąca do edycji dokumentów. Otwiera pliki txt, rtf, docx oraz pdf. Jej unikalną funkcją jest możliwość pracy z wieloma dokumentami na raz! W przyszłości plany są większe i obejmują np zapis do chmury, specjalny tryb interakcji z tabelami, czy niewidzialny notes. Co o tym myślicie? Pierwsza wersja jeszcze powinna być dziś.
#2 Numernabis
Ja czekam na wynkowy pliczek :)
Czy będzie to wersja portable czy instalacyjna?
No i co to takiego niewidzialny notes?
#3 pates
Teraz troszkę więcej wyjaśnień.
Będzie to program tylko i wyłącznie dostępny w formie portable.
Niewidzialny notes, to będzie coś, czego nigdy jeszcze nie widziałem, a uważam za ciekawe. Weźmy sobie taką sytuację. Czytamy coś i na zabój musimy coś szypko zapisać. To po co otwierać dodatkowe okienko? Przy użyciu skrótu klawiszowego wejdziemy w interakcję z niewidzialnym polem tekstowym, w którym będzie można pisać i je ukryć też skrótem, czytać dalej, zapisać, etc.
Interakcja z tabelą zaś. Mała zżynka z maca, wiem. Ale denerwują mnie wordowskie tabele. Ten tryb będzie pozwalał na wyświetlanie ich w formie excelowatej.
#4 EugeniuszPompiusz
Brzmi ambitnie, przyznam,
choćbym miał go nie odpalićwięcej niż 5 testowych razy, ogromny plusior za kreatywnosc.
#5 Numernabis
No to ja już łykam :)
Wordowskie tabele mnie również doprowadzają do szewskiej pasji.
#6 pates
Ale interakcje tabelowe i i nvisible notepad to plany na późniejszy termin. Priorytety to.
*Opsługa plików txt, rtf, pdf, docx zrealizowana.
*Multitasking prawie zrealizowany.
*Multiplatforming zrealizowany.
#7 Numernabis
byłoby miło gdyby obsługiwało to to również .odt (Libre Office)
#8 pates
Da się zrobić, dość prosta implementacja w kodzie.
Teraz zacząłem myśleć nad jedną sprawą. To nic pewnego jak na razie, ale nie wiem, czy nie rozbuduję programu jeszcze bardziej i nie stanie się on płatny. Cena oczywiście nie jakaś specjalnie wysoka, powiedzmy 50 zł. A co by za to było?
*Zapis do chmury.
*Interakcja z tabelami.
*Invisible notes.
*Ocr i konwerter formatówtekstowych.
*Edytor pdf.
*Accessible frmatting. Dźwiękowe ozajmianie pogrunbień, wcięć, kursyw, przerw, etc, wszystkiego co może się przydać.
*Szypki skok do nagłówka, hiperlinków, etc.
#9 Numernabis
Jak dla mnie spoko tylko trzeba by było jakoś to ogarnąć, aby była możliwość kilkudnowego testu przed zakupem, nie jest to wiele, ale zapłacić i nie być zadowolonym z efektów też nie jest coś czego ja oczekuję :)
#10 pates
Jakieś demo oczywiście powstanie, i wersja free, pozbawiona.
*Edycji pdf.
*Ocr.
*Interakcji z tabelami.
*Invisible note.
#11 Numernabis
No dobra, jak demo ze wszystkimi funkcjami będzie dostępne i cena będzie jak piszesz to ja się na to piszę.
#12 pates
Myślę, że więcej od 50 nie wezmę. No i oczywiście, płatne się to stanie, jak opracuję wszystkie te funkcje. Główny modół już wsumie jest praktycznie gotowy, tylko trochę polerki i takich tam drobnostek.
#13 Numernabis
Zaimplementuj odczyt tego .odt, sporo ludzi i firm tego używa, a office tego nie tyka i żeby otworzyć trzeba instalować Libre Office, a tak będzie to zbędne.
#14 pates
Najpierw wydam to, co mam, bo nie wiem czy czegoś nie sypnę.
#15 Numernabis
OK.
#16 daszekmdn
Najpierw niech powstanie, później myśl o płatnościach.
#17 nuno69
Pates, problem z niewidzialnym notepadem ja sam chciałem rozwiązac tylko że kurde to nie jest takie łatwe jak zapewne Ci się wydaje. Powiem tak, po latach latach uczenia się C, C ++ i programowania jakotakiego może od bidy bym to zrobił ale i tak bez wsparcia chociażby IME chiskiego czy japoskiego
#18 daszekmdn
A to IME nikomu nie potrzebne. Oni swoich apek nie dostosowują to czemu my byśmy mieli pod nich?
#19 nuno69
Chociażby po to że będzie problem też z niektórymi znakami rosyjskimi, klawiszami twałymi w połączeniu z diakrytykami i tak dalej
#20 nuno69
Podałęm IME jako po prostu taki najbardziej oczywisty przykład. no bo jak miałoby to działać programistycznie?
Instalacja jakiegoś ekstra niskopoziomowego hooka, na przykład tak (C#)
// Deinicja delegatu
public delegate IntPtr HookProc(int code, IntPtr wParam, IntPtr lParam);
// Procedura instalacji hooka
private HookProc hookHandler;
this.hookHandler = new HookProc(handleHook);
public bool registerGlobalHook()
{
if (globals.hookPointer != IntPtr.Zero || globals.isHookRegistered)
{
// Coś jest nie tak
return false;
}
using (Process process = Process.GetCurrentProcess())
{
using (ProcessModule module = process.MainModule)
{
IntPtr hModule = NativeDefinitions.GetModuleHandle(module.ModuleName);
globals.hookPointer = NativeDefinitions.SetWindowsHookEx(HookType.WH_KEYBOARD_LL, hookHandler, hModule, 0);
globals.isHookRegistered = true;
return true;
}
}
}
// No i co z tym hookiem?
private IntPtr handleHook(int code, IntPtr wParam, IntPtr lParam)
{
if (wParam == (IntPtr)0x0100)
{
KBDLLHOOKSTRUCT kbd = (KBDLLHOOKSTRUCT)Marshal.PtrToStructure(lParam, typeof(KBDLLHOOKSTRUCT));
var char = (char)kbd.VkCode;
// Jakiśdalszy processing
}
return null;
}