HACK your MODULE page >;-]
The module list currently sites the words (enabled) (disabled) and (missing) about 200 times on every page.
it's verbose and hard to scan with the eye.
To edit it, you have to swap 5 lines in ./modules/system/System.Admin.Inc
find and replace :
all the >disabled</ with ><b>N</b></
all the >enabled</ with ><b>Y</b></
all the >missing</ with ><b>M</b></This formatting serves to punctuate the list with a big colorful Y/N/M sign, it is much more faster to read and concise.
with the font color still handled by a .CSS
You can also replace Y/N/M with Yes/No/NaN or N/A
it looks like this:
Required by: Internationalization (Y), Internationalization tests (Y), String translation (Y), Localization client (Y), Localization community (N), Translation template extractor (Y), Content translation (Y), Block translation (Y), CCK translation (Y), Content type translation (Y), Menu translation (Y), Poll aggregate (N), Profile translation (Y), Synchronize translations (Y), Taxonomy translation (Y), Views translation (Y), Localization community for drupal.org (N), Localization groups (N), Localization community for local packages (Y), Localization community local project module integration (Y), Localization remote API (Y)
to do it in 2 clicks, just replace lines 680 thru 720 of in ./modules/system/System.Admin.Inc with this:
$dependencies = array();
// Check for missing dependencies.
if (is_array($file->info['dependencies'])) {
foreach ($file->info['dependencies'] as $dependency) {
if (!isset($files[$dependency]) || !$files[$dependency]->status) {
if (isset($files[$dependency])) {
$dependencies[] = t('@module (<span class="admin-disabled"><b>N</b></span>)', array('@module' => $files[$dependency]->info['name']));
}
else {
$dependencies[] = t('@module (<span class="admin-missing"><b>NaN</b></span>)', array('@module' => drupal_ucfirst($dependency)));
$disabled[] = $filename;
$form['disabled_modules']['#value'][$filename] = FALSE;
}
}
else {
$dependencies[] = t('@module (<span class="admin-enabled"><b>Y</b></span>)', array('@module' => $files[$dependency]->info['name']));
}
}
// Add text for dependencies.
if (!empty($dependencies)) {
$form['description'][$filename]['dependencies'] = array(
'#value' => t('Depends on: !dependencies', array('!dependencies' => implode(', ', $dependencies))),
'#prefix' => '<div class="admin-dependencies">',
'#suffix' => '</div>',
);
}
}
// Mark dependents disabled so user can not remove modules being depended on.
$dependents = array();
foreach ($file->info['dependents'] as $dependent) {
if ($files[$dependent]->status == 1) {
$dependents[] = t('@module (<span class="admin-enabled"><b>Y</b></span>)', array('@module' => $files[$dependent]->info['name']));
$disabled[] = $filename;
$form['disabled_modules']['#value'][$filename] = TRUE;
}
else {
$dependents[] = t('@module (<span class="admin-disabled"><b>N</b></span>)', array('@module' => $files[$dependent]->info['name']));
}
}here is a free program that finds multiple search strings in folders and tells you the file names, and also lists the lines of codes with the words in so you can browse the code without even opening each file.

Side note, this makes
Side note, this makes updating Drupal core harder.
If you google "Drupal don't
If you google "Drupal don't hack core" you'll see that there are "about 35,200" results.
Tomorrow there should be "about 35,201" :-) That said you're bringing up an interesting point.
My first instinct was to try the handy String Overrides module: http://drupal.org/project/stringoverrides . This module uses Drupals multi-language functions and basically fakes a translation for the strings you'd like to override -- But it doesn't seem to work here. I could get the word "Enabled" above the checkbox column that controls enabling a module to change to "Y", but not "Enabled" or "enabled" when embeded in the description column. Also tried translating the entire span:
(<span class="admin-disabled">disabled</span>)But that didn't work either.
As it turns out, you may have uncovered an "incorrect" usage of the t() function in system.admin.inc. Here's one of the lines you suggest changing:
$dependencies[] = t('@module (<span class="admin-disabled">disabled</span>)', array('@module' => $files[$dependency]->info['name']));The drupal api documentation for the t() function http://api.drupal.org/api/function/t/6 shows this as an Incorrect usage of t()
<?php
$output .= t('<p>Go to the @contact-page.</p>', array('@contact-page' => l(t('contact page'), 'contact')));
?>
The apidocs imply that it's incorrect to include html in the translated string & that's exactly what's being done here.
If the $dependencies line above is edited to just wrap "disabled" in t(), I wonder if String Overrides will translate it correctly. This could be an issue with String Overrides. I suppose you could also write a module that tweaks the form on admin/build/modules or do something with a theme override function, but if String Overrides could be made to work it would be a quick solution that would let you tweak other 'offensive' text on the site without hacking core.
I posted an issue on the String Overrides queue: http://drupal.org/node/666806
Hi, thanks for that
Hi, thanks for that explanation there Dave, it makes me aware that i am at the "learning alphabet" stage of drupal knowledge.
relating to translation, I have been learning about gettext PO files tonight, after finding that only 2% of the ubercart2.2 module it translated into my language, which would leave me with about 3000 witty shopping related anecdotes to copy over manually.
the l10n module devs could use "google translator ajax API" so google writes 80 percent of the translation... so users can just check the correct auto-translations, and change a couple of words round in the inaccurate phrases, it would go faster than writing 3000 lines!
So i found this:
http://translate.umpirsky.com/ which translates gettext PO automatically
http://andrewferguson.net/2008/03/21/phpo-translator-online-po-translator/
alot comes up in google with "google translate gettext"/"po translator"
it seems it would only take one afternoon / 100 lines to implement a google/babelfish translator into the localize community pages! 8)