You are not logged in.
Hey tri1976, thats a good idea, will do that.
Offline
I've also got a suggestion/bug if you've got the time.
While navigating I noticed that the selected folder isn't kept (remembered or reselected) when backing out of a sub folder, unless you enter the folder and immediately back out of it. This is not such a big deal when navigating with a mouse but with the keyboard it becomes annoying. It seems like the desired functionality would be that the previously selected folder should always remain selected when backing out.
Offline
Hey bdjnk,
It does that now doesn't it? When you go 'back' to the parent, the folder you where just in is selected. Maybe I changed something recently in 4.9.beta, I can't remember. Try 4.9.beta I think it's working how you want.
Offline
Hi Wittfella,
I'm running .4.9 beta and I think I have the same behaviour that bdjnk reports. I'd also like to see it fixed as I do kb navigation most of the time.
Offline
Wittfella,
Awesome app! I love that it makes it easy to open a terminal, always has the text of the path in the address bar, and has view settings for the app (not saved for the directory you happened to be in when you changed them (like in nautilus)).
I had the same request as tri1976 (directory name in titlebar), and it only took a few lines to implement (Qt rocks!).
I also added a custom action replacement string, "%p". It's just the same as "%F", except there's no filename, just pathname. The reason I wanted it was so I could bind a shortcut to open a terminal window, and have it open the terminal in the parent dir if a regular file is currently selected. As it is now, the shortcut to open a terminal only works if a directory is selected.
I can email you patches relative to http://www.qtfm.org/qtfm-4.8.tar.gz if you'd like.
Also, got a few questions:
1) What do you think of a plugin system? I'm thinking of stuff like TortoiseCVS/SVN/Hg/RabbitCVS/etc. Qt has a really nice plugin system that I've used in the past. Makes it really easy to load plugins at runtime and search for and call C++ functions within them. I think it wouldn't take more then a few hundred lines to add plugin support to qtFM, so there'd be no harm if no plugins are loaded. I don't know if any of the existing revision control systems could be easily ported, or if anyone would start projects to make work-alikes, but the plugin system itself would (I think) be easy to add.
2) What do you think of network integration, like CIFS(/SMB) or FTP?
a. I'm tempted to try it just as custom actions for directories... So you could right-click on an empty dir you want to use as a mount point, and then the custom action called ("mount SMB") would launch a separate GUI app that prompts for a network path and username/password (maybe caches username/password?) and does an smbmount or curlftpfs command. After that, qtFM will be able to browse the mounted share just like any normal directory. This way wouldn't require any changes to qtFM, I'd just write a little accessory Qt app that does the username/password stuff, and that calls the mount command.
b. Parsing smb:// and ftp:// paths in the address bar. This could be really slick, but I could see how it might get awfully complicated.
Thanks again for an great file manager!
- Miles
Offline
Hello Miles,
Cheers, thanks for the feedback!
- Not sure I understand the %p thing. The basic terminal shortcut (ie. not a custom action) always opens in the current folder, isn't that the same thing?
- I have never really looked at the whole plugin deal, or CVS systems so I don't really know what functionality that brings to qtfm.
- i also just mount smb shares externally when I need them. I'm curious about parsing smb:// in the address bar, what do you mean, what does/should it do differently on smb shares.
I don't know if you have read back through the posts but you can also grab the beta which has some nice new stuff in it, but it hasn't been pushed yet. Mainly grouping of custom actions and a daemon mode.
www.qtfm.org/qtfm-4.9.beta.tar.gz
Cheers,
Wittfella
Offline
Excellent app. I installed it to have a look at it and must now conclude that I've been using it as my default GUI file manager for a while
If have a few questions though and I haven't been able to find anything about it in the documentation and this topic (or I must have looked over it):
- If I create a custom fileaction for mplayer:
%06="avi,mpg,wmv,mkv", Play with mplayer, applications-multimedia, mplayer %f
I can play the file with mplayer, however, after closing it down I get the mplayer output in a window. Same thing happens when I extract a .rar file with unrar. Is there a way to block or prevent this?
-Is there a way to define or edit or define filetypes in qtfm.conf instead of in the GUI itself?
Offline
@quickfished - The filetypes are stored in ~/.local/share/applications/defaults.list
Offline
@quickfished - The filetypes are stored in ~/.local/share/applications/defaults.list
So they are. Thanks!
Offline
I can play the file with mplayer, however, after closing it down I get the mplayer output in a window. Same thing happens when I extract a .rar file with unrar. Is there a way to block or prevent this?
Use something like this:
mplayer %f -really-quiet -aspect 16:10 -nolirc
or make a script, do a call for whataver application inside it: "app $1 > /dev/null 2>&1" and call the script from custom actions like this "script.sh %f".
Offline
quickfished wrote:I can play the file with mplayer, however, after closing it down I get the mplayer output in a window. Same thing happens when I extract a .rar file with unrar. Is there a way to block or prevent this?
Use something like this:
mplayer %f -really-quiet -aspect 16:10 -nolirc
or make a script, do a call for whataver application inside it: "app $1 > /dev/null 2>&1" and call the script from custom actions like this "script.sh %f".
Great, that did it.
Offline
Oh snap! K4 beat me to it
I just uploaded a fresh 4.9.beta with some fixes.
- I modified the custom actions with an option to monitor the output, so you can turn it on/off for each action. Fix that mplayer problem above.
- I changed the theme detection a little. Before it would ask the system what gtk theme we are using. If the answer is non-sensical (eg. DE'less people) it then reads the .gtkrc-2.0 file. I swapped it around so it reads the .gtkrc-2.0 first, and if that does not exist then ask the system. I think it should work fine, but if it borks up let me know.
Offline
I recently downloaded a torrent but the files don't show in qtFM. I can see the files using the terminal or the GTK file picker, though the filenames have lots of question marks and what not:
I would have tried to rename the files but I cannot get bash to tab complete the file name and it won't accept it if I just copy it.
Offline
Hey,
I recently started using qtFM, since it's fast and does what I need.
Unfortunately, I have a problem with the qtFM 4.9: it just exits with a Segmentation fault when started. This only started today, when I updated to from 4.8.2.
Since I have not found anything in that regard in this thread nor on qtfm.org, I decided to ask here.
Also: I am running a fully updated 32-bit archlinux.
Does anyone have an idea what I could have done wrong? Any help would be appreciated!
Offline
Hey Nordwin,
Try deleting/renaming the qtfm.conf file in '~/.config/qtfm/" and starting qtfm again.
If that works could you do me big favour and email me the old qtfm.conf file (the one that segfaults).
Cheers,
Wittfella
Offline
Well, that was easy.. thank you!
works now, and you have an eMail.
Offline
Hi,
I recently crashed my system a little bit and I'm currently in the process of rebuilding/repairing it. Where does qtfm get the Icons like (back, up, home) from?
Best regards
Segaja
Offline
Hello Segaja,
It just uses your current gtk icon theme. You can set that using lxappearance for example.
Offline
if you have the segmentation error, you can simply rename your .conf as Wittfella suggested, start qtFM, then replace the qtfm.conf it creates with your old one. this will preserve your custom-actions/what-not.
Offline
Thanks jtkiv,
I'm still not sure what caused the segfault. I tried Nordwin's conf file on my 4.9 and it doesn't segfault and I can't see any obvious problems with it. The fact that you can start it with a fresh one and then replace your old conf file suggest that its not something in the conf file...weird!
Offline
I figured it out. In 4.9 I added a new action to 'Close' as opposed to the existing 'Quit' action. Close is used with daemon mode. Quit will also stop the daemon.
Anyway the new close action has an icon which it reads from the icon.cache file, but prior to 4.9 it's not added to the cache yet. Hence it tries to reference an icon that doesn't exist which causes the segfault. Renaming the conf file and starting new causes the icon.cache to be refreshed at startup adding the new icon, so its good after that.
Instead of renaming then replacing the conf file you could also just delete the icon.cache file which will be recreated on next run.
Offline
Here's the changelog also in case you just pulled 4.9 and are wondering whats new!
4.9 8-April-2011
- added daemon mode.
- added custom action grouping in submenus. See README.
- added ability to show/suppress stdout and stderr notifications for custom actions.
- added zoom in/out to change icon size for each view independently.
- added current folder to window title.
- added 'Focus address' action to shortcuts for keyboard navigation.
- added 'Enter folder' action to shortcuts for keyboard navigation.
Offline
I tried launching qtfm and got the segmentation fault. I launched it again and had no fault but when I closed qtfm, I got this output:
*** glibc detected *** qtfm: free(): invalid pointer: 0x080a1ee0 ***
======= Backtrace: =========
/lib/libc.so.6(+0x6b6c1)[0xb67e26c1]
/lib/libc.so.6(+0x6cfdb)[0xb67e3fdb]
/lib/libc.so.6(cfree+0x6d)[0xb67e718d]
/usr/lib/libstdc++.so.6(_ZdlPv+0x21)[0xb698e2c1]
/usr/lib/libQtGui.so.4(_ZN5QIconD1Ev+0x46)[0xb6f64236]
/usr/lib/libQtGui.so.4(+0x12667b)[0xb6ea967b]
/usr/lib/libQtGui.so.4(+0x126862)[0xb6ea9862]
/usr/lib/libQtCore.so.4(_ZN7QObjectD2Ev+0x4e0)[0xb6b3c640]
/usr/lib/libQtGui.so.4(_ZN7QActionD1Ev+0x1a8)[0xb6ea71a8]
/usr/lib/libQtGui.so.4(_ZN7QActionD0Ev+0x22)[0xb6ea7202]
/usr/lib/libQtCore.so.4(_ZN14QObjectPrivate14deleteChildrenEv+0x77)[0xb6b37d57]
/usr/lib/libQtGui.so.4(_ZN7QWidgetD2Ev+0x259)[0xb6f03959]
/usr/lib/libQtGui.so.4(_ZN11QMainWindowD1Ev+0x31)[0xb731c151]
qtfm[0x8057d89]
/lib/libc.so.6(__libc_start_main+0xe6)[0xb678ddb6]
qtfm[0x8057b81]
======= Memory map: ========
08048000-080a1000 r-xp 00000000 08:07 3010 /usr/bin/qtfm
080a1000-080a2000 rw-p 00059000 08:07 3010 /usr/bin/qtfm
08f5e000-092cd000 rw-p 00000000 00:00 0 [heap]
b3acd000-b3ad5000 r-xp 00000000 08:07 141479 /usr/lib/qt/plugins/iconengines/libqsvgicon.so
b3ad5000-b3ad6000 rw-p 00007000 08:07 141479 /usr/lib/qt/plugins/iconengines/libqsvgicon.so
b3ad6000-b3b36000 rw-s 00000000 00:04 1343489 /SYSV00000000 (deleted)
b3b36000-b3bd1000 r--p 00000000 08:07 142905 /usr/share/fonts/TTF/DejaVuSans-Bold.ttf
b3bd1000-b3bd2000 ---p 00000000 00:00 0
b3bd2000-b43d2000 rw-p 00000000 00:00 0
b43d2000-b442a000 r-xp 00000000 08:07 40303 /usr/lib/libtiff.so.3.9.4
b442a000-b442c000 rw-p 00058000 08:07 40303 /usr/lib/libtiff.so.3.9.4
b4440000-b4492000 r-xp 00000000 08:07 26205 /usr/lib/libQtSvg.so.4.7.2
b4492000-b4494000 rw-p 00051000 08:07 26205 /usr/lib/libQtSvg.so.4.7.2
b44a0000-b44a7000 r-xp 00000000 08:07 141488 /usr/lib/qt/plugins/imageformats/libqtiff.so
b44a7000-b44a8000 rw-p 00006000 08:07 141488 /usr/lib/qt/plugins/imageformats/libqtiff.so
b44a8000-b4507000 r-xp 00000000 08:07 48311 /usr/lib/libmng.so.1.0.0
b4507000-b450a000 rw-p 0005e000 08:07 48311 /usr/lib/libmng.so.1.0.0
b450a000-b4547000 r-xp 00000000 08:07 37580 /usr/lib/libjpeg.so.8.0.2
b4547000-b4548000 rw-p 0003d000 08:07 37580 /usr/lib/libjpeg.so.8.0.2
b4548000-b4558000 rw-p 00000000 00:00 0
b4558000-b4559000 ---p 00000000 00:00 0
b4559000-b4d59000 rw-p 00000000 00:00 0
b4d59000-b4e00000 r--p 00000000 08:07 142903 /usr/share/fonts/TTF/DejaVuSans.ttf
b4e00000-b4e2e000 rw-p 00000000 00:00 0
b4e2e000-b4f00000 ---p 00000000 00:00 0
b4f0f000-b4f13000 r-xp 00000000 08:07 141487 /usr/lib/qt/plugins/imageformats/libqsvg.so
b4f13000-b4f14000 rw-p 00004000 08:07 141487 /usr/lib/qt/plugins/imageformats/libqsvg.so
b4f14000-b4f1b000 r-xp 00000000 08:07 141484 /usr/lib/qt/plugins/imageformats/libqjpeg.so
b4f1b000-b4f1c000 rw-p 00006000 08:07 141484 /usr/lib/qt/plugins/imageformats/libqjpeg.so
b4f1c000-b4f1d000 ---p 00000000 00:00 0
b4f1d000-b571d000 rw-p 00000000 00:00 0
b571d000-b57c4000 r--p 00000000 08:07 142903 /usr/share/fonts/TTF/DejaVuSans.ttf
b57c4000-b57ed000 r-xp 00000000 08:07 35496 /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
b57ed000-b57ee000 rw-p 00028000 08:07 35496 /usr/lib/gtk-2.0/2.10.0/engines/libclearlooks.so
b57ee000-b581b000 r-xp 00000000 08:07 49516 /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b581b000-b581c000 rw-p 0002c000 08:07 49516 /usr/lib/gtk-2.0/2.10.0/engines/libmurrine.so
b581c000-b5825000 r-xp 00000000 08:07 69 /lib/libnss_files-2.13.so
b5825000-b5826000 r--p 00009000 08:07 69 /lib/libnss_files-2.13.so
b5826000-b5827000 rw-p 0000a000 08:07 69 /lib/libnss_files-2.13.so
b5827000-b5838000 r-xp 00000000 08:07 68 /lib/libresolv-2.13.so
b5838000-b5839000 r--p 00010000 08:07 68 /lib/libresolv-2.13.so
b5839000-b583a000 rw-p 00011000 08:07 68 /lib/libresolv-2.13.so
b583a000-b583c000 rw-p 00000000 00:00 0
b583c000-b5842000 r-xp 00000000 08:07 38518 /usr/lib/libxcb-render.so.0.0.0
b5842000-b5843000 rw-p 00005000 08:07 38518 /usr/lib/libxcb-render.so.0.0.0
b5843000-b58aa000 r-xp 00000000 08:07 28661 /usr/lib/libpixman-1.so.0.20.2
b58aa000-b58ae000 rw-p 00066000 08:07 28661 /usr/lib/libpixman-1.so.0.20.2
b58ae000-b58b0000 r-xp 00000000 08:07 8076 /usr/lib/libgmodule-2.0.so.0.2600.1
b58b0000-b58b1000 rw-p 00002000 08:07 8076 /usr/lib/libgmodule-2.0.so.0.2600.1
b58b1000-b58f0000 r-xp 00000000 08:07 37097 /usr/lib/libpango-1.0.so.0.2800.4
b58f0000-b58f2000 rw-p 0003e000 08:07 37097 /usr/lib/libpango-1.0.so.0.2800.4
b58f2000-b5918000 r-xp 00000000 08:07 37099 /usr/lib/libpangoft2-1.0.so.0.2800.4
b5918000-b5919000 rw-p 00026000 08:07 37099 /usr/lib/libpangoft2-1.0.so.0.2800.4
b5919000-b5a01000 r-xp 00000000 08:07 8080 /usr/lib/libgio-2.0.so.0.2600.1
b5a01000-b5a04000 rw-p 000e8000 08:07 8080 /usr/lib/libgio-2.0.so.0.2600.1
b5a04000-b5a20000 r-xp 00000000 08:07 3466 /usr/lib/libgdk_pixbuf-2.0.so.0.2200.1
b5a20000-b5a21000 rw-p 0001b000 08:07 3466 /usr/lib/libgdk_pixbuf-2.0.so.0.2200.1
b5a21000-b5acf000 r-xp 00000000 08:07 41763 /usr/lib/libcairo.so.2.11000.2
b5acf000-b5ad1000 rw-p 000ae000 08:07 41763 /usr/lib/libcairo.so.2.11000.2
b5ad1000-b5ad3000 rw-p 00000000 00:00 0
b5ad3000-b5aec000 r-xp 00000000 08:07 42553 /usr/lib/libatk-1.0.so.0.3209.1
b5aec000-b5aee000 rw-p 00018000 08:07 42553 /usr/lib/libatk-1.0.so.0.3209.1
b5aee000-b5af0000 r-xp 00000000 08:07 42708 /usr/lib/libXdamage.so.1.1.0
b5af0000-b5af1000 rw-p 00001000 08:07 42708 /usr/lib/libXdamage.so.1.1.0
b5af1000-b5af3000 r-xp 00000000 08:07 42681 /usr/lib/libXcomposite.so.1.0.0
b5af3000-b5af4000 rw-p 00001000 08:07 42681 /usr/lib/libXcomposite.so.1.0.0
b5af4000-b5afe000 r-xp 00000000 08:07 37101 /usr/lib/libpangocairo-1.0.so.0.2800.4
b5afe000-b5aff000 rw-p 00009000 08:07 37101 /usr/lib/libpangocairo-1.0.so.0.2800.4
b5aff000-b5b92000 r-xp 00000000 08:07 45040 /usr/lib/libgdk-x11-2.0.so.0.2200.1
b5b92000-b5b95000 rw-p 00093000 08:07 45040 /usr/lib/libgdk-x11-2.0.so.0.2200.1
b5b95000-b5f57000 r-xp 00000000 08:07 45042 /usr/lib/libgtk-x11-2.0.so.0.2200.1
b5f57000-b5f5d000 rw-p 003c2000 08:07 45042 /usr/lib/libgtk-x11-2.0.so.0.2200.1
b5f5d000-b5f5e000 rw-p 00000000 00:00 0
b5f5e000-b5f6a000 r-xp 00000000 08:07 24709 /usr/lib/libXi.so.6.1.0
b5f6a000-b5f6b000 rw-p 0000b000 08:07 24709 /usr/lib/libXi.so.6.1.0
b5f6b000-b5f6d000 r-xp 00000000 08:07 31237 /usr/lib/libXinerama.so.1.0.0
b5f6d000-b5f6e000 rw-p 00001000 08:07 31237 /usr/lib/libXinerama.so.1.0.0
b5f6e000-b5f74000 r-xp 00000000 08:07 42653 /usr/lib/libXrandr.so.2.2.0
b5f74000-b5f75000 rw-p 00005000 08:07 42653 /usr/lib/libXrandr.so.2.2.0
b5f75000-b5f7a000 r-xp 00000000 08:07 141486 /usr/lib/qt/plugins/imageformats/libqmng.soAborted
I will be trying a new config.
Offline
Deleting the cache files seem to have solved seg fault for me.
No need to recreate the config.
Offline
I have qtfm running on different computers and would like only certain parts of the config file similar between computers. For example, I only want to keep custom actions and shortcuts the same but the rest are unique to each computer. Can you consider breaking the config file to different parts (i.e. bookmarks, keys, actions, etc.) or read an external file that either add or overwrite part of the config file?
Offline