digitalmars.D.learn - Can i watch folders/files for changes with D language?
- Ephrahim (22/22) Oct 09 2018 Hi Everyone, i'm planning on developing a software for
- Vladimir Panteleev (4/10) Oct 09 2018 This package seems to do what you need:
- Ephrahim (5/15) Oct 11 2018 Thanks Everyone, you guys are simply the best! I got much more
- Daniel Kozak (11/33) Oct 09 2018 You can use vibed:
- Russel Winder (37/54) Oct 10 2018 Conan is the up and coming centralised package management system for
- Jacob Carlborg (8/11) Oct 10 2018 It's difficult to specifying a single best GUI library. But I'll mention...
Hi Everyone, i'm planning on developing a software for synchronizing folder contents across multiple computers. The software will evolve very quickly into virtual Remote Desktop Access system. So i've been considering C++ for this, its the best in the market of all things fast at the moment (Considering the availability of tools and docs). But i hate just two things in the language, (.cpp + .h files) and no "easy" centralized package manager. So i'm definitely considering D and Python now, but D seems to satisfy my needs as per this software. I've developed very good custom server for hardware before, and it performed very well. So i need your help guys, can you point me to any documentation or libraries i can use to watch files/folders for changes (delete, edit, new content)? I intend to make this a command line tool for a start, but i'll need a GUI sooner or later. So i also need help pointing me to the best available GUI library D has. Your help will be so valuable and really appreciated sir/ma. I'll be waiting excitedly for your responses! Also i'm very sorry if i didn't post this to the right Thread/Forum, i just found this forum and i wasn't very sure where i'd post this. Thanks a lot
Oct 09 2018
On Tuesday, 9 October 2018 at 17:20:25 UTC, Ephrahim wrote:So i need your help guys, can you point me to any documentation or libraries i can use to watch files/folders for changes (delete, edit, new content)?This package seems to do what you need: https://code.dlang.org/packages/fswatchAlso i'm very sorry if i didn't post this to the right Thread/Forum, i just found this forum and i wasn't very sure where i'd post this. Thanks a lotYou posted this in the right forum :)
Oct 09 2018
On Tuesday, 9 October 2018 at 17:38:44 UTC, Vladimir Panteleev wrote:On Tuesday, 9 October 2018 at 17:20:25 UTC, Ephrahim wrote:Thanks Everyone, you guys are simply the best! I got much more than i asked for, thanks a lot guys. With this awesome community support, i'm definitely shooting for D + python(UI)So i need your help guys, can you point me to any documentation or libraries i can use to watch files/folders for changes (delete, edit, new content)?This package seems to do what you need: https://code.dlang.org/packages/fswatchAlso i'm very sorry if i didn't post this to the right Thread/Forum, i just found this forum and i wasn't very sure where i'd post this. Thanks a lotYou posted this in the right forum :)
Oct 11 2018
You can use vibed: http://vibed.org/api/vibe.core.file/DirectoryWatcher Or just vibe-core https://code.dlang.org/packages/vibe-core Or https://code.dlang.org/packages/eventcore As a bonus you can use it for networking too. About GUI I do not know what is the best solution. I have some experience with GTKD, which works well for me. On Tue, Oct 9, 2018 at 7:25 PM Ephrahim via Digitalmars-d-learn < digitalmars-d-learn puremagic.com> wrote:Hi Everyone, i'm planning on developing a software for synchronizing folder contents across multiple computers. The software will evolve very quickly into virtual Remote Desktop Access system. So i've been considering C++ for this, its the best in the market of all things fast at the moment (Considering the availability of tools and docs). But i hate just two things in the language, (.cpp + .h files) and no "easy" centralized package manager. So i'm definitely considering D and Python now, but D seems to satisfy my needs as per this software. I've developed very good custom server for hardware before, and it performed very well. So i need your help guys, can you point me to any documentation or libraries i can use to watch files/folders for changes (delete, edit, new content)? I intend to make this a command line tool for a start, but i'll need a GUI sooner or later. So i also need help pointing me to the best available GUI library D has. Your help will be so valuable and really appreciated sir/ma. I'll be waiting excitedly for your responses! Also i'm very sorry if i didn't post this to the right Thread/Forum, i just found this forum and i wasn't very sure where i'd post this. Thanks a lot
Oct 09 2018
On Tue, 2018-10-09 at 17:20 +0000, Ephrahim via Digitalmars-d-learn wrote:Hi Everyone, i'm planning on developing a software for=20 synchronizing folder contents across multiple computers. The=20 software will evolve very quickly into virtual Remote Desktop=20 Access system. So i've been considering C++ for this, its the best in the market=20 of all things fast at the moment (Considering the availability of=20 tools and docs). But i hate just two things in the language,=20 (.cpp + .h files) and no "easy" centralized package manager. So i'm definitely considering D and Python now, but D seems to=20 satisfy my needs as per this software. I've developed very good=20 custom server for hardware before, and it performed very well. So i need your help guys, can you point me to any documentation=20 or libraries i can use to watch files/folders for changes=20 (delete, edit, new content)?Conan is the up and coming centralised package management system for C++. C++ may, or may not, get modules (and so remove the .cpp/.h split) sometime before the heat death of the universe. You should add Rust to the list of options I believe. Not sure whether Go should be added as well, probably Yes. Python, D, Rust, and Go, all have bindings the the various file watching facilities in the various operating systems. =20I intend to make this a command line tool for a start, but i'll=20 need a GUI sooner or later. So i also need help pointing me to=20 the best available GUI library D has.It is really a question of which GUI framework you want to use. This is a situation where a bit of forward planning will help avoid having to reimplement or hack in silly ways. The two obvious candidates are Qt and GTK if you want to be cross- platform. This then leads to the question which programming languages have good bindings to the frameworks. I am more or less in the GTK camp now having more or less given up on Qt, however Qt remains a very good choice. D, Python, and Rust have excellent bindings to GTK. Go has a good binding. C++ binding to GTK is not bad, but I prefer the D and Rust ones. Python has an excellent binding to Qt (use PySide2). Obviously C++ has an excellent binding to Qt since Qt is a C++ library. I have not properly investigated D and Rust bindings to Qt. The Big Question=E2=84=A2 = is whether to use QML or not. I get the feeling the answer is yes you probably should. The Python and Go binding for using QML are good, I haven't tried D, Rust, or C++. [=E2=80=A6] --=20 Russel. =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Dr Russel Winder t: +44 20 7585 2200 41 Buckmaster Road m: +44 7770 465 077 London SW11 1EN, UK w: www.russel.org.uk
Oct 10 2018
On 2018-10-09 19:20, Ephrahim wrote:I intend to make this a command line tool for a start, but i'll need a GUI sooner or later. So i also need help pointing me to the best available GUI library D has.It's difficult to specifying a single best GUI library. But I'll mention DWT [1] [2]. It has a native look and feel and works on Windows and Linux (GTK). [1] http://code.dlang.org/packages/dwt [2] https://github.com/d-widget-toolkit/dwt -- /Jacob Carlborg
Oct 10 2018