topbanner_forum
  *

avatar image

Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length
  • Thursday April 25, 2024, 7:28 pm
  • Proudly celebrating 15+ years online.
  • Donate now to become a lifetime supporting member of the site and get a non-expiring license key for all of our programs.
  • donate

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - tranglos [ switch to compact view ]

Pages: prev1 ... 5 6 7 8 9 [10] 11 12 13 14 15 ... 43next
226
There always are resource DLLs. I believe Microsoft still recommends them. They contain string tables (numeric_id=>"string value") and also dialog resources (allowing you to rearrange controls if they do not fit). You can have multiple different translations for the same phrase and you can have larger labels on dialogs if they are needed in a translation, you can have even different pictures or accelerator tables. Accessing the resources is fast. It all works perfectly - on the paper.

Resource DLLs are the built-in solution in Delphi as well, but they workflow they require is quite impossible for a one-person freeware shop. Send text to translator, get it back, compile, send back for testing, recompile... Whatever design I settle on, it will have plain text Unicode language files that anyone can edit freely.

Thanks for all the thoughts and pointers, everyone!

227
Nope not silly, my guess is that the file is loaded into an associative array of some kind. In C++ that could be as simple as an STL std::map<std::string, std::string> container.

Thanks, Eóin! A hash table totally makes sense, it's on the top of my choices right now as well.

I'm trying hard to figure out a way to do this in Delphi so that it is convenient both for the users of my apps and for myself. I've done that once before, an entirely home-made localization mechanism, still running in my password manager Oubliette. Now I need to update it for Unicode, but I'm trying to design something better. It's such a pain to write code when instead of saying

showmessage( 'This is a test' );

I have to say

showmessage( translate( msgThisIsaTest ));

...and always remember to add somewhere else

resourcestring
  msgThisIsaTest = 'This is a test';

...and repeat it hundreds of times.

GetText wins here, because it does not require adding these identifiers all over the place; it works directly with string literals. But, apart from my earlier comments, I'd rather not use compiled language files, since they're a nuisance. Though I am considering it as well.

228
There are cheap overseas companies out there that will do this for probably $500. I have no specific recommendations and haven't worked with any, but if you don't go that route I suspect it will be at least $1000, if not more.

Yeah, that last figure is a bit much, but my main point is that I'd much rather work from a personal recommendation (from a DC regular, any time!) rather than just go to a random website.

I'd rather not devolve this thread into a discussion of relative merits/demerits of various CMS-es. Instead, a couple of examples that will position my helplessness somewhere on a 0..10 scale:

WordPress has "widgets" - little islands of html and php you can place all over the layout. For those who don't know, they're something like Vista/7 gadgets and work for a similar purpose. You install them by drag and drop (some theme support is required but common). I had never coded in php, and I was wondering how much effort it would take to create a WordPress widget if I needed one. So I tried writing one that would display a random quote once a day, and once a quote was picked on a specific date, the same quote would be shown until midnight server-time. It was a few years ago so I don't remember exactly, but the widget was ready well within the hour and lives on to this day. Simple beyond a real coder's pain threshold, I know, but hey, it was my first php app ever. I spent most of that hour looking up functions and syntax in php manuals. That sort of thing leaves you with a nice warm feeling of having accomplished something and being in control.

BUT... I really don't want to have to write any serious php because I don't have the time for it and, being a total php noob, I won't even know when I do something awesomely stupid that will totally compromise the security of the site. In fact, "me writing php for use on a public server" is a security hole just there. I've seen a recommendation for Concrete5, a CMS I had not seen before, so I'm checking it out right now, and one, I don't understand any of it, two, worryingly many of their video tutorials tell you how to alter the php code to get it to do what you want, like search sections of the site that are not searched by default. For me, this means RUN AWAY.

So while I still have the Concrete5 website open, here's another example. There are tons of nice themes out there for all imaginable CMS-es. Some are free, some not, I can live with both. So take a random non-free theme for Concrete5 like this:

theme_obsidian.png

So, here's a nice, elegant template, though the green gradient sticks out really badly, and the bar on the top won't accommodate more than five or six sections (and probably won't scale down on displays narrower than its width)... but forget about that, look at the logo. It was designed by a pro designer. Now if I bought this template, how would I go about changing the logo to mine? How would I reproduce it as a graphic with my site's name in place of that nicely styled "obsidian", and replace the blue logo with whatever I wanted to use? I don't have software for that (these elements invariably require expensive Adobe software to edit, they don't come as pngs), but most of all, I don't know how. This is just a random example of course; I'm going to have this problem with any theme that uses a graphical header. That's one reason I'd love to keep the ethervane design, because at last that part is done there.

At one point I tried saving the page as-displayed and working from there to make it into a template, but even though I get html and css, this was way out of my league. Way too complex to make heads or tails of and figure out where what happens. I could write compliant html 15 years ago and learned css as it came along, but these days it's a domain of the pros.

229
Living Room / Re: At last, KeyNote done better :)
« on: January 03, 2012, 05:35 PM »
What I have read on DC in recent months is begging me to give RightNote a try  :D

It seems pretty good. What I think it needs is a more modern, "instant" search (and AFAIK it is possible to temporarily highlight matches in the RichView component it uses, unlike the standard richedit dll, in which you cannot really do that) and an alternative way of viewing the tree: as virtual folders, where each folder has a set of filtering rules that decide which items to display - pretty much the way "smart playlists" work in iTunes and similar software (and pretty much like Zoot, TheBat and Mouser's CH+S).


230
Living Room / Re: At last, KeyNote done better :)
« on: January 03, 2012, 05:29 PM »
Slight difference in price, though  ;)

Yeah, there's that. I never intended to charge for KeyNote, but I did once entertain the idea of making a living by writing (other) shareware. Pipe dreams!

231
I think a widely used theme like Suffusion can mimic most if not all of the requirements with little or no coding. Thematic framework can do the same with some coding.

I really don't mind how it is done. The thing is, I absolutely cannot do this myself. I don't have the time, or the skill (at all), or the patience, or really willingness to learn how to do it, which is why I'll be happy to buy the service from someone who can. If all it takes is installing Suffusion (nice theme, yes) and editing all the CSS to match the existing design (while making sure it works well with modern browsers and all that), then I'll love it.

232
There is a very simple three click solution to your problem in Joomla - open the Article manager, click on the Paramters button (top right) and turn of article titles linkable.

Thank you, Carol, but article titles are linkable all over the world, as well they should be. But that doesn't solve the problem at all, because someone out there is always going to link to a specific article on your site, linkable titles or not. And when visitors arrive, they will see the article but no useful navigation to related pages. How would you like to click a link in an application review, go to the app description page and see no links to download or screenshots?

I could manually add the necessary navigation links to each and every posted article, but CMS-es were invented to relieve people of such tasks in the first place...

233
you really sure you don't want to start fresh with a new wordpress theme?

Yes, I'm sure, as long as I expect to like the way the site looks :)

One free theme I liked was Fusion from digitalnature, but it hasn't been updated for WP 3, so no menus and I'm really not sure I want an unsupported theme that may become entirely unusable when WP internals change some more.

Of course not even WordPress is quite suitable for what I need, I wrote about it at length before, but there just aren't any CMS-es that make it convenient to publish software and do other stuff as well. I do like how WordPress goes the extra mile to make working in it pleasurable, plus it's widely supported and there's plenty of free, quality add-ons for it (unlike Joomla, where almost everything is commercial), so my only hope is sticking with WP.

234
I feel like I have posted a plea very much like this before, years ago. Well, here's hoping!

235
There is no one standard solution, but the closest for c++ is probably gettext.

Ah, but this isn't what I was asking! I'm sorry to be such a nuisance ;) The example in my OP was not from gettext, because gettext works directly with literal message strings, so it avoids using any kind of identifiers. Gettext .po files look like this:

msgid "Done:"
msgstr "Concluído:"

And I am really interested in what happens with the lng files of the format

MSG_ID "Hello, world!"

There is a gettext port for Delphi, but I don't like it for several reasons. One is that it uses pre-compiled language files, so testing is needlessly technical and time-consuming (and you need a lot of testing when translating an app). Second, it's based on the rule that one source string can have only one translation - whoever came up with this design may have been a good programmer but never was a translator, believe me. Going from English to Polish, "Open" needs one translation when it's a menu item and another one when it's a dialog box title. And it is not in any way special - in fact, it's the norm. So you will understand when I say gettext sucks big time :)

(Unless that last design principle has improved recently, that is. And yes, I know about the idea of "domains" in gettext. As I understand it, the person responsible for deciding what goes in which domain is the programmer. But the programmer doesn't know! The programmer cannot know that a particular term will need three different target forms in Farsi, depending on where they appear. Only the translator knows this. Gettext is silly that way.)

However, for C++ Builder (and of course it also works for Delphi), I have had reasonably good experience with the commercial product Korzh Localizer.

I know of Korzh, but it's deadly expensive, at least the source code edition. It's so expensive that I haven't even looked at it very closely yet. Could you tell me what format the language files are? Are they binary or human-readable text? Because I definitely want a mechanism where users can edit the language files themselves in a text editor, without any third-party software and without a compilation step in-between editing and testing the translation. (Plus, all these add-on translation tools are quite horrible and as a translator myself, I am quite sure their authors never actually used them to translate any app bigger than Hello world. Things like editing long strings in a ListView. Not gonna go that way.)

But I digress. What kind of (basic but efficient) loading mechanism would a C++ programmer use if he or she were not using any 3rd party libraries for the task?

236
Living Room / At last, KeyNote done better :)
« on: January 03, 2012, 01:22 PM »
I know this isn't news to many here, but I wanted to come right out and say it: I'm pretty sure that RightNote is the better KeyNote.

After all these years I feel like the burden has passed on to someone else and I don't have to feel guilty about not updating KeyNote anymore.

Now, I've only installed the trial version and played with it a little. I am not vouching that RightNote will not fry your computer and scare off your cats. What I'm saying is that, for better or worse, RightNote is essentially what I intended KeyNote 2.0 to be.

I really only found out about RightNote recently, even though it's been out a few years now. It's eerie how closely RightNote follows KeyNote - from using the same default activation hotkey to the same (sub-optimal) design of the "resource panel". Even the name "resource panel" is the same, though nobody calls them that way. I know I didn't invent the name, but can't recall where I got it from. Everyone else has been calling it a "sidebar" for ten years or so, but in RightNote it's still the "resource panel", and it uses the same F9 key to open it :) And, it has the same implementation of "virtual nodes" (edit an external file as if it were part of your data file), which AFAIK was a feature unique to KeyNote, at the time as well as today.

So it's fun to look at RightNote now, because it's exactly what KeyNote was going to be and it happened without me doing anything about it :) RightNote has all the things I wanted KeyNote 2 to have: a database back-end, RichView notes (hence tables and true hyperlinks among other things), spellchecker, an Excel-like grid, and tags. And it has pretty much the same resulting downsides I was expecting: with database reads, it's nowhere near as snappy as KeyNote when switching between notes, for example.

I won't be registering it, since I do think the KeyNote design (can I say this? "KeyNote design"?) is quite obsolete - just compare how the search works in RightNote vs. Evernote or even CintaNotes. (Although the wretched resource panel does work better on today's widescreen displays.) But now when I get asked about KeyNote, and I still get asked, I can happily direct everyone to RN and be at peace with the universe!


237
I've been looking at how the UI is translated in various apps, because I'm trying to figure out the optimal way of doing that in Delphi. I know of many Delphi ways, but none is too appealing, so I'm wondering how Real Programmers do it in C or C++. And now for my silly question:

Some C++ apps come with language files that look like this:

HELLOWORLD "Hello, World!"

I'm curious: how is this loaded and interpreted? Is HELLOWORLD a string literal, and you have a long list of conditionals such as  "if id equals "HELLOWORLD" then sHelloWorld = id, else if..."? (That would be quite slow and it's one of the things I'm trying to avoid in Delphi.) Or do these strings map to numeric values somehow? Or something else yet?

Silly question!

238
OK, so I need to convert this Joomla template:

http://ethervane.com/

...to a WordPress 3.x theme. Not a simple task, I know! This is a commercial template (from RocketTheme) that I absolutely love and want to keep using, but I need to kick Joomla out the window. There is nothing remotely similar for WordPress.

The template has some Joomla-specific functionality (e.g. convert page to PDF) that I don't need. The content will be different and the site will live on a different domain. I just need the WordPress site to look as close as possible to what you see at the link above - mostly just the CSS, the menus and colors, and the graphical elements; the layout will be somewhat different in WordPress of course.

The WP theme must be compatible with the latest WP 3.x release, which I suppose means supporting WP widgets and the new custom menus, among other things. The theme should be two-column and fluid, so no fixed-pixel widths, please. Must be able to accommodate images (screenshots). The site will have lots of static pages, which is relevant to the design, because there are a lot of WP themes out there that totally fall apart when the listing of pages grows too wide. (Note the fly-out menus at the top right; they are very small now, but they'll have plenty of items.)

I don't care about the inconsequential issues like whether the search box has rounded corners (in fact, I don't like rounded corners very much, they're too Apply :-) or where it is positioned.

I will of course deliver the Joomla theme source to work with.

I am serious about needing this, but I have no idea how much a job like this may cost. If I can meet the price, I will be positively ecstatic to have it done for me. So if you are or know a web designer who could do this, please pm me or email me at marek then the at sign then tranglos.com.

(In case anyone wonders what's wrong with Joomla... well, everything is wrong with Joomla, but here is a good starting point: Go to the main page linked above. Click "New products" on the left. Click "ActiveHotkeys" underneath. You'll see "Download" and "Screenshot" links. This is all as it should be. Now forget about this and just click the "Ethervane Activehotkeys" title link on top of the page you're at (or, for a better moment of Zen, click any title link on the homepage). Now look at the navigation menu in the sidebar and figure out how to get to the Downloads page from here. That's what's wrong with Joomla: it's a big honking CMS with a totally broken navigation, and its authors seem entirely uninterested in rectifying this.)


239
N.A.N.Y. 2012 / Re: NANY 2012 Release: Ethervane Echo
« on: January 02, 2012, 10:04 AM »
From the Ethervane Spellchecker dictionaries readme.txt:

Fixed, thanks!

240
N.A.N.Y. 2012 / Re: NANY 2012 Release: Ethervane Echo
« on: January 01, 2012, 08:35 PM »
I wrote about it
http://www.rgdot.com...d-clipboard-manager/

Nice review, rgdot, thank you so much!




241
N.A.N.Y. 2012 / Re: NANY 2012 Release: Ethervane Echo
« on: December 30, 2011, 10:58 AM »
Thanks for the new version tranglos and especially for :

FIXED: Broken in previous release: Delete key could no longer be used in the in-place editor. It can be now.
which really bothered me !

I know, my oversight. Sorry about that!


242
N.A.N.Y. 2012 / Re: NANY 2012 Late Pledge: Simple Software Licensing
« on: December 29, 2011, 08:15 PM »
This is wonderful, Josant, thank you! Great to see the DC spirit in action!

I would so use this if only I had software to protect :) Alas, I must have looked the other way when they were giving out business hats. But (in my salad-er days) I did look more than once at the available protection solutions, and they're all highly expensive. This is a wonderful gift to DC.

243
N.A.N.Y. 2012 / Re: NANY 2012 Release: Ethervane Echo
« on: December 29, 2011, 08:02 PM »
New version released December 30: 1.0.4.103

See the top post in this thread for download links.

This is the first non-beta release, just in time on the finish line! So not many new features this time, just a couple of hotkeys as requested and a few minor bug fixes.

What's new in this release:

ADDED: System-wide hotkey to paste clipboard contents as plain text. By default this action is assigned to Shift+Win+Insert. When you press this hotkey, Echo checks if the clipboard contains text. If so, Echo removes from clipboard all formats that are not plain text (in effect, "clears" the clipboard of any rich data) and performs a paste in whatever application is current. This gives you a "Paste as text" command in any Windows application that supports rich text editing. Useful especially when an application does not have such a command readily available. (Of course, Echo already had a "paste as text" command for the selected clip. This new feature works without opening Echo, and it operates only on current contents of the clipboard.)

ADDED: System-wide hotkey to clear clipboard contents. By default this action is assigned to Shift+Win+Delete. When you press this hotkey, Echo erases all data currently on clipboard. Useful when you want Windows to instantly "forget" whatever has been copied to clipboard last. (Of course the clip may still exist in Echo's database.)

FIXED: Broken in previous release: Delete key could no longer be used in the in-place editor. It can be now.

REMOVED: Dependency on the FastMM_FullDebugMode.dll library. This file is no longer needed, since the current release is no longer a debug build. If you are upgrading from an earlier version of Echo, you can delete this file manually in a file manager.
Miscellaneous internal fix-ups.

Happy clipping!

To everyone who asked for triggering items on 0-9 keys: I'm afraid this won't happen soon. I literally sat down to implement this, and then realized it requires a fairly major rewrite. Here's why: when you look at the Echo screen, it's really not at all easy to tell which item is seventh, say. Or whether an item you're looking at is fifth or sixth. Meaning, the feature is meaningless without Echo being able to display the actual digits next to each item (the way FARR does). While it may seem simple, it isn't quite, because the numbers are not part of each item's text: items get different numbers assigned to them (or none at all) whenever you scroll the view. Long story short, this requires a different (virtual) control to display the items, and changing that now pretty much means ripping everything open. Can't do that at the moment, but it is certainly a possibility.

245
N.A.N.Y. 2012 / Re: NANY 2012 Pledge & Early Beta: Ethervane Echo
« on: December 28, 2011, 06:21 PM »
Can you make a "Real portable Application"?
"PortableApps.com"

Phil and Ath are right, Echo already is as portable as it can get :)

I was not sure what was involved in having it distributed via portableapps.com. I kind of assumed they were the ones actually packaging applications with their special installer. However, I have now seen there is some sort of API to follow, and a required directory structure to which Echo does not quite conform. So it's not a priority right now, I'll investigate further as time allows.

(There's already Ditto Portable there, too, so probably no need for another one.)


246
Living Room / Re: Thoughts in remembrance of 911
« on: December 26, 2011, 10:47 AM »
Here are a couple of clips of how the world responded after that event:
  • Rejoicing: Fox News footage of Palestinians dancing and celebrating at the news of the fall of the twin towers on 911.

Didn't see this thread when it was posted. (New Year Resolution: read DC even more. Only good things can come from that!). I want to use my one post in this thread to say that world history did not start on 9-11, and when we reflect on certain events of that day and the days since, we do a great disservice to everyone involved if we pretend that it did. If history started on 9-11, then the footage of "dancing Palestinians" only serves to prove Palestinians are wicked people with an unexplained hatred for the US and the rest of the Western world. That, of course, is a horrible lie - exactly the kind of lie that gets whole nations cheering for murderous wars. ("Iraqi troops taking Kuwaiti babies out of incubators and dropping them on the hospital floor to die" was another, you probably remember that one.)

You won't see these lies unmasked on CNN or Fox (or even on BBC these days), but there's still that Internet thing. Not to justify or to sugarcoat, but to understand why: Palestinians celebrating 9/11 - a reply from The Electronic Intifada


247
N.A.N.Y. 2012 / Re: NANY 2012 Release: Got Space?
« on: December 25, 2011, 06:45 PM »
Great utility, SJ, thanks! And I think I have a new puzzle for you:

gotspace.png

Drives A and B are listed as floppies, but they're not. They're weird :)

B is a subst drive, my mnemonic for Backup. It's a subst'ed folder on an external G drive. (And G is listed as local probably because it's plugged in via Firewire, which I don't think is distinguishable from true local drives. Windows itself and ShadowProtect can't tell the difference either.)

Now, A is a partition of my first fixed HDD. I use it as scratch area (temp folders, browser caches, Archivarius indexes, all that). So it's actually a sibling partition of C. Windows knows that, but Total Commander doesn't (it does not display exe icons, as it thinks it's a removable drive). So, not floppies :)

Here's what the Extended Info command says about them:

A:
gsextA.png

B:
gsextB.png

(Btw, you may not need the period after "Extended Info" command in the context menu.)




I know, poor choice of drive letters! I just got tired of figuring out whether 'p' or 'q' is better for a particular use, and realized I had two perfectly good letters sitting around unused at the start of the alphabet.

248
Found Deals and Discounts / Re: TreeProjects 40% off
« on: December 24, 2011, 06:57 PM »
Steven, how does Swift compare with mylife organized?

Printing in Swift To-Do List is not quite optimal, either. Swift has a "Print / Export" command (two in one), with a dialog box to select branches you want to print and set a few options:

swift-print.png

The output is formatted as a table in a html document; preview is displayed in your default browser. (I'd rather not post personal contents on a forum, but if you'd like to see the actual output, I can send you a sample by email, some of it in Polish :-).

That said, I would suggest that your choice of MLO vs. Swift not be informed by printing only. The two are very different in how they structure your data. MLO gives you a hierarchical outline of tasks (some of which may be designated as "folders", but still retain all properties of a to-do item). In Swift you have a hierarchical outline of folders, and each single folder contains a flat list of to-do items. This produces a very distinct "feel" in each app.

Basically, in Swift you choose a folder to view its tasks. There is a useful option to show tasks in current folder and all sub-folders, but if you tend to spread your tasks over a number of sibling top-level folders, you'll have to visit each of them in sequence to see their tasks. That's what you get with a two-pane layout. MLO is single-pane, so the view is more "flexible" in that you can see all the tasks at once or focus on a specific area.

Other than that, there are some significant differences in feature sets. Swift is much better for adding notes to tasks (rich text, hyperlinks, attachments), while MLO has instant search, for example. Fwiw, Swift was re-written in .Net, and became much more sluggish than it used to be.

I use Swift for general ideas on stuff I would like to do some day (such as "here is a program I want to write, and here's a list of features and a list of problems to solve"), and use MLO as a bug- and feature-tracker for my existing apps (one app per file). Neither is optimal for these uses, still looking for something more suitable.

249
Living Room / Re: Adware is not freeware, right?
« on: December 23, 2011, 09:37 AM »
By any chance, do these Android apps have paid versions without ads?

Many do, though my rant today was prompted by one that does not. I do use a handful of free "limited functionality" versions, and have bought a few apps too. Most of all I just want to be told that an app I'm about to download is ad-supported. At the moment, when it comes to Android almost any app described as "free" is in fact adware.

Besides the ethical considerations, one big problem with ads on a phone is the same people had when adware first appeared on PCs: metered internet connections. Plus, ads hey take up a much larger area of the screen, relatively, then they did on a PC.

250
Living Room / Re: Adware is not freeware, right?
« on: December 23, 2011, 08:02 AM »
Oh, look what just came up in Google Reader :-)

3 Easy Solutions to Remove Unwanted Android Ads

(not tested)

Pages: prev1 ... 5 6 7 8 9 [10] 11 12 13 14 15 ... 43next