Index: includes/install.inc
===================================================================
RCS file: /cvs/drupal/drupal/includes/install.inc,v
retrieving revision 1.82
diff -u -r1.82 install.inc
--- includes/install.inc	18 Jan 2009 06:56:58 -0000	1.82
+++ includes/install.inc	21 Jan 2009 12:02:39 -0000
@@ -522,7 +522,7 @@
  *
  * Used during installation to install modules one at a time and then
  * enable them, or to install a number of modules at one time
- * from admin/build/modules.
+ * from admin/build/module.
  *
  * @param $module
  *   The machine name of the module to install.
Index: modules/block/block.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/block/block.test,v
retrieving revision 1.9
diff -u -r1.9 block.test
--- modules/block/block.test	7 Jan 2009 21:41:13 -0000	1.9
+++ modules/block/block.test	21 Jan 2009 21:11:19 -0000
@@ -165,7 +165,7 @@
   function testNonDefaultBlockAdmin() {
     $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration'));
     $this->drupalLogin($admin_user);
-    $this->drupalPost('admin/build/themes', array('status[bluemarine]' => 1), t('Save configuration'));
+    $this->drupalPost('admin/build/theme', array('status[bluemarine]' => 1), t('Save configuration'));
     $this->drupalGet('admin/build/block/list/bluemarine');
     $this->assertRaw('bluemarine/style.css', t('Bluemarine CSS found'));
   }
Index: modules/blogapi/blogapi.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/blogapi/blogapi.install,v
retrieving revision 1.4
diff -u -r1.4 blogapi.install
--- modules/blogapi/blogapi.install	15 Nov 2008 13:01:04 -0000	1.4
+++ modules/blogapi/blogapi.install	22 Jan 2009 00:33:38 -0000
@@ -69,7 +69,7 @@
  * Inform users about the new permission.
  */
 function blogapi_update_6000() {
-  drupal_set_message("Blog API module does not depend on blog module's permissions anymore, but provides its own 'administer content with blog api' permission instead. Until <a href=\"" . url('admin/user/permissions', array('fragment' => 'module-blogapi')) . '">this permission is assigned</a> to at least one user role, only the site administrator will be able to use Blog API features.');
+  drupal_set_message("Blog API module does not depend on blog module's permissions anymore, but provides its own 'administer content with blog api' permission instead. Until <a href=\"" . url('admin/user/permission', array('fragment' => 'module-blogapi')) . '">this permission is assigned</a> to at least one user role, only the site administrator will be able to use Blog API features.');
   return array();
 }
 
Index: modules/color/color.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/color/color.module,v
retrieving revision 1.52
diff -u -r1.52 color.module
--- modules/color/color.module	20 Jan 2009 03:18:40 -0000	1.52
+++ modules/color/color.module	22 Jan 2009 00:34:18 -0000
@@ -9,7 +9,7 @@
     case 'admin/help#color':
       $output = '<p>' . t('The color module allows a site administrator to quickly and easily change the color scheme of certain themes. Although not all themes support color module, both Garland (the default theme) and Minnelli were designed to take advantage of its features. By using color module with a compatible theme, you can easily change the color of links, backgrounds, text, and other theme elements. Color module requires that your <a href="@url">file download method</a> be set to public.', array('@url' => url('admin/settings/file-system'))) . '</p>';
       $output .= '<p>' . t("It is important to remember that color module saves a modified copy of the theme's specified stylesheets in the files directory. This means that if you make any manual changes to your theme's stylesheet, you must save your color settings again, even if they haven't changed. This causes the color module generated version of the stylesheets in the files directory to be recreated using the new version of the original file.") . '</p>';
-      $output .= '<p>' . t('To change the color settings for a compatible theme, select the "configure" link for the theme on the <a href="@themes">themes administration page</a>.', array('@themes' => url('admin/build/themes'))) . '</p>';
+      $output .= '<p>' . t('To change the color settings for a compatible theme, select the "configure" link for the theme on the <a href="@themes">themes administration page</a>.', array('@themes' => url('admin/build/theme'))) . '</p>';
       $output .= '<p>' . t('For more information, see the online handbook entry for <a href="@color">Color module</a>.', array('@color' => 'http://drupal.org/handbook/modules/color/')) . '</p>';
 
       return $output;
Index: modules/comment/comment.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/comment/comment.module,v
retrieving revision 1.682
diff -u -r1.682 comment.module
--- modules/comment/comment.module	14 Jan 2009 21:48:24 -0000	1.682
+++ modules/comment/comment.module	22 Jan 2009 00:33:38 -0000
@@ -543,7 +543,7 @@
         COMMENT_ANONYMOUS_MAYNOT_CONTACT => t('Anonymous posters may not enter their contact information'),
         COMMENT_ANONYMOUS_MAY_CONTACT => t('Anonymous posters may leave their contact information'),
         COMMENT_ANONYMOUS_MUST_CONTACT => t('Anonymous posters must leave their contact information')),
-      '#description' => t('This option is enabled when anonymous users have permission to post comments on the <a href="@url">permissions page</a>.', array('@url' => url('admin/user/permissions', array('fragment' => 'module-comment')))),
+      '#description' => t('This option is enabled when anonymous users have permission to post comments on the <a href="@url">permissions page</a>.', array('@url' => url('admin/user/permission', array('fragment' => 'module-comment')))),
     );
 
     if (!user_access('post comments', drupal_anonymous_user())) {
Index: modules/comment/comment.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/comment/comment.test,v
retrieving revision 1.23
diff -u -r1.23 comment.test
--- modules/comment/comment.test	14 Jan 2009 21:48:24 -0000	1.23
+++ modules/comment/comment.test	22 Jan 2009 00:33:38 -0000
@@ -172,7 +172,7 @@
     $edit['1[access comments]'] = $enabled;
     $edit['1[post comments]'] = $enabled;
     $edit['1[post comments without approval]'] = $without_approval;
-    $this->drupalPost('admin/user/permissions', $edit, t('Save permissions'));
+    $this->drupalPost('admin/user/permission', $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), t('Anonymous user comments ' . ($enabled ? 'enabled' : 'disabled') . '.'));
   }
 
Index: modules/contact/contact.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/contact/contact.test,v
retrieving revision 1.14
diff -u -r1.14 contact.test
--- modules/contact/contact.test	30 Dec 2008 16:43:16 -0000	1.14
+++ modules/contact/contact.test	22 Jan 2009 00:33:38 -0000
@@ -247,7 +247,7 @@
       $edit[$rid . '[' . $name . ']'] = $value;
     }
 
-    $this->drupalPost('admin/user/permissions', $edit, t('Save permissions'));
+    $this->drupalPost('admin/user/permission', $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), t(' [permission] Saved changes.'));
   }
 }
Index: modules/menu/menu.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/menu/menu.test,v
retrieving revision 1.5
diff -u -r1.5 menu.test
--- modules/menu/menu.test	29 Nov 2008 09:33:51 -0000	1.5
+++ modules/menu/menu.test	22 Jan 2009 00:33:38 -0000
@@ -218,7 +218,7 @@
    * @param string $menu_name Menu name.
    */
   function addInvalidMenuItem($menu_name = 'navigation') {
-    foreach (array('-&-', 'admin/user/permissions') as $link_path) {
+    foreach (array('-&-', 'admin/user/permission') as $link_path) {
       $edit = array (
         'menu[link_path]' => $link_path,
         'menu[link_title]' => 'title',
Index: modules/node/node.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/node/node.module,v
retrieving revision 1.1014
diff -u -r1.1014 node.module
--- modules/node/node.module	17 Jan 2009 20:56:04 -0000	1.1014
+++ modules/node/node.module	22 Jan 2009 00:34:18 -0000
@@ -67,7 +67,7 @@
     case 'admin/help#node':
       $output = '<p>' . t('The node module manages content on your site, and stores all posts (regardless of type) as a "node" . In addition to basic publishing settings, including whether the post has been published, promoted to the site front page, or should remain present (or sticky) at the top of lists, the node module also records basic information about the author of a post. Optional revision control over edits is available. For additional functionality, the node module is often extended by other modules.') . '</p>';
       $output .= '<p>' . t('Though each post on your site is a node, each post is also of a particular <a href="@content-type">content type</a>. <a href="@content-type">Content types</a> are used to define the characteristics of a post, including the title and description of the fields displayed on its add and edit pages. Each content type may have different default settings for <em>Publishing options</em> and other workflow controls. By default, the two content types in a standard Drupal installation are <em>Page</em> and <em>Story</em>. Use the <a href="@content-type">content types page</a> to add new or edit existing content types. Additional content types also become available as you enable additional core, contributed and custom modules.', array('@content-type' => url('admin/build/types'))) . '</p>';
-      $output .= '<p>' . t('The administrative <a href="@content">content page</a> allows you to review and manage your site content. The <a href="@post-settings">post settings page</a> sets certain options for the display of posts. The node module makes a number of permissions available for each content type, which may be set by role on the <a href="@permissions">permissions page</a>.', array('@content' => url('admin/content/node'), '@post-settings' => url('admin/content/node-settings'), '@permissions' => url('admin/user/permissions'))) . '</p>';
+      $output .= '<p>' . t('The administrative <a href="@content">content page</a> allows you to review and manage your site content. The <a href="@post-settings">post settings page</a> sets certain options for the display of posts. The node module makes a number of permissions available for each content type, which may be set by role on the <a href="@permissions">permissions page</a>.', array('@content' => url('admin/content/node'), '@post-settings' => url('admin/content/node-settings'), '@permissions' => url('admin/user/permission'))) . '</p>';
       $output .= '<p>' . t('For more information, see the online handbook entry for <a href="@node">Node module</a>.', array('@node' => 'http://drupal.org/handbook/modules/node/')) . '</p>';
       return $output;
     case 'admin/content/node':
@@ -1923,8 +1923,8 @@
     $default_message .= '<p>' . t('Please follow these steps to set up and start using your website:') . '</p>';
     $default_message .= '<ol>';
     $default_message .= '<li>' . t('<strong>Configure your website</strong> Once logged in, visit the <a href="@admin">administration section</a>, where you can <a href="@config">customize and configure</a> all aspects of your website.', array('@admin' => url('admin'), '@config' => url('admin/settings'))) . '</li>';
-    $default_message .= '<li>' . t('<strong>Enable additional functionality</strong> Next, visit the <a href="@modules">module list</a> and enable features which suit your specific needs. You can find additional modules in the <a href="@download_modules">Drupal modules download section</a>.', array('@modules' => url('admin/build/modules'), '@download_modules' => 'http://drupal.org/project/modules')) . '</li>';
-    $default_message .= '<li>' . t('<strong>Customize your website design</strong> To change the "look and feel" of your website, visit the <a href="@themes">themes section</a>. You may choose from one of the included themes or download additional themes from the <a href="@download_themes">Drupal themes download section</a>.', array('@themes' => url('admin/build/themes'), '@download_themes' => 'http://drupal.org/project/themes')) . '</li>';
+    $default_message .= '<li>' . t('<strong>Enable additional functionality</strong> Next, visit the <a href="@modules">module list</a> and enable features which suit your specific needs. You can find additional modules in the <a href="@download_modules">Drupal modules download section</a>.', array('@modules' => url('admin/build/module'), '@download_modules' => 'http://drupal.org/project/modules')) . '</li>';
+    $default_message .= '<li>' . t('<strong>Customize your website design</strong> To change the "look and feel" of your website, visit the <a href="@themes">themes section</a>. You may choose from one of the included themes or download additional themes from the <a href="@download_themes">Drupal themes download section</a>.', array('@themes' => url('admin/build/theme'), '@download_themes' => 'http://drupal.org/project/themes')) . '</li>';
     $default_message .= '<li>' . t('<strong>Start posting content</strong> Finally, you can <a href="@content">create content</a> for your website. This message will disappear once you have promoted a post to the front page.', array('@content' => url('node/add'))) . '</li>';
     $default_message .= '</ol>';
     $default_message .= '<p>' . t('For more information, please refer to the <a href="@help">help section</a>, or the <a href="@handbook">online Drupal handbooks</a>. You may also post at the <a href="@forum">Drupal forum</a>, or view the wide range of <a href="@support">other support options</a> available.', array('@help' => url('admin/help'), '@handbook' => 'http://drupal.org/handbooks', '@forum' => 'http://drupal.org/forum', '@support' => 'http://drupal.org/support')) . '</p>';
Index: modules/simpletest/tests/menu.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/simpletest/tests/menu.test,v
retrieving revision 1.4
diff -u -r1.4 menu.test
--- modules/simpletest/tests/menu.test	28 Dec 2008 18:27:14 -0000	1.4
+++ modules/simpletest/tests/menu.test	22 Jan 2009 00:34:00 -0000
@@ -32,7 +32,7 @@
     $this->assertEqual($name, 'original', t('Menu name is "original".'));
 
     // Force a menu rebuild by going to the modules page.
-    $this->drupalGet('admin/build/modules', array('query' => array("hook_menu_name" => 'changed')));
+    $this->drupalGet('admin/build/module', array('query' => array("hook_menu_name" => 'changed')));
 
     $sql = "SELECT menu_name FROM {menu_links} WHERE router_path = 'menu_name_test'";
     $name = db_result(db_query($sql));
Index: modules/statistics/statistics.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/statistics/statistics.module,v
retrieving revision 1.293
diff -u -r1.293 statistics.module
--- modules/statistics/statistics.module	8 Jan 2009 08:42:13 -0000	1.293
+++ modules/statistics/statistics.module	22 Jan 2009 00:33:38 -0000
@@ -14,7 +14,7 @@
     case 'admin/help#statistics':
       $output = '<p>' . t('The statistics module keeps track of numerous site usage statistics, including the number of times, and from where, each of your posts is viewed. These statistics are useful in determining how users are interacting with each other and with your site, and are required for the display of some Drupal blocks.') . '</p>';
       $output .= '<p>' . t('The statistics module provides:') . '</p>';
-      $output .= '<ul><li>' . t('a counter for each post on your site that increments each time the post is viewed. (Enable <em>Count content views</em> on the <a href="@accesslog">access log settings page</a>, and determine if the post access counters should be visible to any user roles on the <a href="@permissions">permissions page</a>.)', array('@accesslog' => url('admin/reports/settings'), '@permissions' => url('admin/user/permissions'))) . '</li>';
+      $output .= '<ul><li>' . t('a counter for each post on your site that increments each time the post is viewed. (Enable <em>Count content views</em> on the <a href="@accesslog">access log settings page</a>, and determine if the post access counters should be visible to any user roles on the <a href="@permissions">permissions page</a>.)', array('@accesslog' => url('admin/reports/settings'), '@permissions' => url('admin/user/permission'))) . '</li>';
       $output .= '<li>' . t('a <a href="@recent-hits">recent hits</a> log that displays information about the latest activity on your site, including the URL and title of the page accessed, the user name (if available) and IP address of the accessing party.', array('@recent-hits' => url('admin/reports/hits'))) . '</li>';
       $output .= '<li>' . t('a <a href="@top-referrers">top referrers</a> log that displays the referring parties for your site visits (where your visitors came from).', array('@top-referrers' => url('admin/reports/referrers'))) . '</li>';
       $output .= '<li>' . t('a <a href="@top-pages">top pages</a> log that displays site content in descending order by number of views.', array('@top-pages' => url('admin/reports/pages'))) . '</li>';
Index: modules/system/system.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.admin.inc,v
retrieving revision 1.119
diff -u -r1.119 system.admin.inc
--- modules/system/system.admin.inc	19 Jan 2009 21:13:09 -0000	1.119
+++ modules/system/system.admin.inc	22 Jan 2009 00:34:18 -0000
@@ -204,7 +204,7 @@
     $options[$theme->name] = '';
 
     if (!empty($theme->status) || $theme->name == variable_get('admin_theme', '0')) {
-      $form[$theme->name]['operations'] = array('#markup' => l(t('configure'), 'admin/build/themes/settings/' . $theme->name) );
+      $form[$theme->name]['operations'] = array('#markup' => l(t('configure'), 'admin/build/theme/settings/' . $theme->name) );
     }
     else {
       // Dummy element for drupal_render. Cleaner than adding a check in the theme function.
@@ -292,7 +292,7 @@
   menu_rebuild();
   drupal_theme_rebuild();
   drupal_set_message(t('The configuration options have been saved.'));
-  $form_state['redirect'] = 'admin/build/themes';
+  $form_state['redirect'] = 'admin/build/theme';
 
   // Notify locale module about new themes being enabled, so translations can
   // be imported. This might start a batch, and only return to the redirect
@@ -664,7 +664,7 @@
     '#type' => 'submit',
     '#value' => t('Save configuration'),
   );
-  $form['#action'] = url('admin/build/modules/list/confirm');
+  $form['#action'] = url('admin/build/module/list/confirm');
 
   return $form;
 }
@@ -786,7 +786,7 @@
     $form = confirm_form(
       $form,
       t('Some required modules must be enabled'),
-      'admin/build/modules',
+      'admin/build/module',
       t('Would you like to continue with enabling the above?'),
       t('Continue'),
       t('Cancel'));
@@ -931,7 +931,7 @@
   drupal_clear_css_cache();
   drupal_clear_js_cache();
 
-  $form_state['redirect'] = 'admin/build/modules';
+  $form_state['redirect'] = 'admin/build/module';
 
   // Notify locale module about module changes, so translations can be
   // imported. This might start a batch, and only return to the redirect
@@ -997,7 +997,7 @@
       '#type' => 'submit',
       '#value' => t('Uninstall'),
     );
-    $form['#action'] = url('admin/build/modules/uninstall/confirm');
+    $form['#action'] = url('admin/build/module/uninstall/confirm');
   }
   else {
     $form['modules'] = array();
@@ -1038,7 +1038,7 @@
     $form = confirm_form(
       $form,
       t('Confirm uninstall'),
-      'admin/build/modules/uninstall',
+      'admin/build/module/uninstall',
       t('Would you like to continue with uninstalling the above?'),
       t('Uninstall'),
       t('Cancel'));
@@ -1053,7 +1053,7 @@
   // Form submitted, but no modules selected.
   if (!count(array_filter($form_state['values']['uninstall']))) {
     drupal_set_message(t('No modules selected.'), 'error');
-    drupal_goto('admin/build/modules/uninstall');
+    drupal_goto('admin/build/module/uninstall');
   }
 }
 
@@ -1071,7 +1071,7 @@
     drupal_set_message(t('The selected modules have been uninstalled.'));
 
     unset($form_state['storage']);
-    $form_state['redirect'] = 'admin/build/modules/uninstall';
+    $form_state['redirect'] = 'admin/build/module/uninstall';
   }
   else {
     $form_state['storage'] = $form_state['values'];
Index: modules/system/system.css
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.css,v
retrieving revision 1.53
diff -u -r1.53 system.css
--- modules/system/system.css	5 Dec 2008 12:50:28 -0000	1.53
+++ modules/system/system.css	22 Jan 2009 00:34:18 -0000
@@ -500,14 +500,14 @@
 }
 
 /*
-** Styles for the system modules page (admin/build/modules)
+** Styles for the system modules page (admin/build/module)
 */
 #system-modules div.incompatible {
   font-weight: bold;
 }
 
 /*
-** Styles for the system themes page (admin/build/themes)
+** Styles for the system themes page (admin/build/theme)
 */
 #system-themes-form div.incompatible {
   font-weight: bold;
Index: modules/system/system.install
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.install,v
retrieving revision 1.300
diff -u -r1.300 system.install
--- modules/system/system.install	19 Jan 2009 10:46:51 -0000	1.300
+++ modules/system/system.install	22 Jan 2009 00:34:00 -0000
@@ -262,7 +262,7 @@
       $requirements['update status'] = array(
         'value' => $t('Not enabled'),
         'severity' => REQUIREMENT_WARNING,
-        'description' => $t('Update notifications are not enabled. It is <strong>highly recommended</strong> that you enable the update status module from the <a href="@module">module administration page</a> in order to stay up-to-date on new releases. For more information please read the <a href="@update">Update status handbook page</a>.', array('@update' => 'http://drupal.org/handbook/modules/update', '@module' => url('admin/build/modules'))),
+        'description' => $t('Update notifications are not enabled. It is <strong>highly recommended</strong> that you enable the update status module from the <a href="@module">module administration page</a> in order to stay up-to-date on new releases. For more information please read the <a href="@update">Update status handbook page</a>.', array('@update' => 'http://drupal.org/handbook/modules/update', '@module' => url('admin/build/module'))),
       );
     }
     else {
@@ -2177,7 +2177,7 @@
   $ret = array();
 
   // Notify user that new update module exists.
-  drupal_set_message('Drupal can check periodically for important bug fixes and security releases using the new update status module. This module can be turned on from the <a href="' . url('admin/build/modules') . '">modules administration page</a>. For more information please read the <a href="http://drupal.org/handbook/modules/update">Update status handbook page</a>.');
+  drupal_set_message('Drupal can check periodically for important bug fixes and security releases using the new update status module. This module can be turned on from the <a href="' . url('admin/build/module') . '">modules administration page</a>. For more information please read the <a href="http://drupal.org/handbook/modules/update">Update status handbook page</a>.');
 
   return $ret;
 }
@@ -2659,7 +2659,7 @@
 
   // Notify user that delete permissions may have been changed. This was in
   // effect since system_update_6039(), but there was no user notice.
-  drupal_set_message('Drupal now has separate edit and delete permissions. Previously, users who were able to edit content were automatically allowed to delete it. For added security, delete permissions for individual core content types have been <strong>removed</strong> from all roles on your site (only roles with the "administer nodes" permission can now delete these types of content). If you would like to reenable any individual delete permissions, you can do this at the <a href="' . url('admin/user/permissions', array('fragment' => 'module-node')) . '">permissions page</a>.');
+  drupal_set_message('Drupal now has separate edit and delete permissions. Previously, users who were able to edit content were automatically allowed to delete it. For added security, delete permissions for individual core content types have been <strong>removed</strong> from all roles on your site (only roles with the "administer nodes" permission can now delete these types of content). If you would like to reenable any individual delete permissions, you can do this at the <a href="' . url('admin/user/permission', array('fragment' => 'module-node')) . '">permissions page</a>.');
   return $ret;
 }
 
Index: modules/system/system.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.module,v
retrieving revision 1.659
diff -u -r1.659 system.module
--- modules/system/system.module	14 Jan 2009 21:13:41 -0000	1.659
+++ modules/system/system.module	22 Jan 2009 00:34:18 -0000
@@ -66,8 +66,8 @@
     case 'admin/help#system':
       $output = '<p>' . t('The system module is at the foundation of your Drupal website, and provides basic but extensible functionality for use by other modules and themes. Some integral elements of Drupal are contained in and managed by the system module, including caching, enabling or disabling of modules and themes, preparing and displaying the administrative page, and configuring fundamental site settings. A number of key system maintenance operations are also part of the system module.') . '</p>';
       $output .= '<p>' . t('The system module provides:') . '</p>';
-      $output .= '<ul><li>' . t('support for enabling and disabling <a href="@modules">modules</a>. Drupal comes packaged with a number of core modules; each module provides a discrete set of features and may be enabled depending on the needs of your site. A wide array of additional modules contributed by members of the Drupal community are available for download at the <a href="@drupal-modules">Drupal.org module page</a>.', array('@modules' => url('admin/build/modules'), '@drupal-modules' => 'http://drupal.org/project/modules')) . '</li>';
-      $output .= '<li>' . t('support for enabling and disabling <a href="@themes">themes</a>, which determine the design and presentation of your site. Drupal comes packaged with several core themes and additional contributed themes are available at the <a href="@drupal-themes">Drupal.org theme page</a>.', array('@themes' => url('admin/build/themes'), '@drupal-themes' => 'http://drupal.org/project/themes')) . '</li>';
+      $output .= '<ul><li>' . t('support for enabling and disabling <a href="@modules">modules</a>. Drupal comes packaged with a number of core modules; each module provides a discrete set of features and may be enabled depending on the needs of your site. A wide array of additional modules contributed by members of the Drupal community are available for download at the <a href="@drupal-modules">Drupal.org module page</a>.', array('@modules' => url('admin/build/module'), '@drupal-modules' => 'http://drupal.org/project/modules')) . '</li>';
+      $output .= '<li>' . t('support for enabling and disabling <a href="@themes">themes</a>, which determine the design and presentation of your site. Drupal comes packaged with several core themes and additional contributed themes are available at the <a href="@drupal-themes">Drupal.org theme page</a>.', array('@themes' => url('admin/build/theme'), '@drupal-themes' => 'http://drupal.org/project/themes')) . '</li>';
       $output .= '<li>' . t('a robust <a href="@cache-settings">caching system</a> that allows the efficient re-use of previously-constructed web pages and web page components. Drupal stores the pages requested by anonymous users in a compressed format; depending on your site configuration and the amount of your web traffic tied to anonymous visitors, Drupal\'s caching system may significantly increase the speed of your site.', array('@cache-settings' => url('admin/settings/performance'))) . '</li>';
       $output .= '<li>' . t('a set of routine administrative operations that rely on a correctly-configured <a href="@cron">cron maintenance task</a> to run automatically. A number of other modules, including the feed aggregator, and search also rely on <a href="@cron">cron maintenance tasks</a>. For more information, see the online handbook entry for <a href="@handbook">configuring cron jobs</a>.', array('@cron' => url('admin/reports/status'), '@handbook' => 'http://drupal.org/cron')) . '</li>';
       $output .= '<li>' . t('basic configuration options for your site, including <a href="@date-settings">date and time settings</a>, <a href="@file-system">file system settings</a>, <a href="@clean-url">clean URL support</a>, <a href="@site-info">site name and other information</a>, and a <a href="@site-maintenance">site maintenance</a> function for taking your site temporarily offline.', array('@date-settings' => url('admin/settings/date-time'), '@file-system' => url('admin/settings/file-system'), '@clean-url' => url('admin/settings/clean-urls'), '@site-info' => url('admin/settings/site-information'), '@site-maintenance' => url('admin/settings/site-maintenance'))) . '</li></ul>';
@@ -75,22 +75,22 @@
       return $output;
     case 'admin/by-module':
       return '<p>' . t('This page shows you all available administration tasks for each module.') . '</p>';
-    case 'admin/build/themes':
+    case 'admin/build/theme':
       $output = '<p>' . t('Select which themes are available to your users and specify the default theme. To configure site-wide display settings, click the "configure" task above. Alternatively, to override these settings in a specific theme, click the "configure" link for that theme. Note that different themes may have different regions available for displaying content; for consistency in presentation, you may wish to enable only one theme.') . '</p>';
       $output .= '<p>' . t('To change the appearance of your site, a number of <a href="@themes">contributed themes</a> are available.', array('@themes' => 'http://drupal.org/project/themes')) . '</p>';
       return $output;
-    case 'admin/build/themes/settings/' . $arg[4]:
+    case 'admin/build/theme/settings/' . $arg[4]:
       $reference = explode('.', $arg[4], 2);
       $theme = array_pop($reference);
-      return '<p>' . t('These options control the display settings for the <code>%template</code> theme. When your site is displayed using this theme, these settings will be used. By clicking "Reset to defaults," you can choose to use the <a href="@global">global settings</a> for this theme.', array('%template' => $theme, '@global' => url('admin/build/themes/settings'))) . '</p>';
-    case 'admin/build/themes/settings':
+      return '<p>' . t('These options control the display settings for the <code>%template</code> theme. When your site is displayed using this theme, these settings will be used. By clicking "Reset to defaults," you can choose to use the <a href="@global">global settings</a> for this theme.', array('%template' => $theme, '@global' => url('admin/build/theme/settings'))) . '</p>';
+    case 'admin/build/theme/settings':
       return '<p>' . t('These options control the default display settings for your entire site, across all themes. Unless they have been overridden by a specific theme, these settings will be used.') . '</p>';
-    case 'admin/build/modules':
-      $output = '<p>' . t('Modules are plugins that extend Drupal\'s core functionality. To enable modules, select the <em>Enabled</em> checkboxes below and click the <em>Save configuration</em> button. To further extend your site\'s functionality, a number of <a href="@modules">contributed modules</a> are available for download.', array('@permissions' => url('admin/user/permissions'), '@modules' => 'http://drupal.org/project/modules')) . '</p>';
-      $output .= '<p>' . t('Module-related tasks can be located on the <a href="@by-module">administration by module page</a>. New <a href="@permissions">module-related permissions</a> may also become available as new modules are enabled.', array('@by-module' => url('admin/by-module'), '@permissions' => url('admin/user/permissions'))) . '</p>';
+    case 'admin/build/module':
+      $output = '<p>' . t('Modules are plugins that extend Drupal\'s core functionality. To enable modules, select the <em>Enabled</em> checkboxes below and click the <em>Save configuration</em> button. To further extend your site\'s functionality, a number of <a href="@modules">contributed modules</a> are available for download.', array('@permissions' => url('admin/user/permission'), '@modules' => 'http://drupal.org/project/modules')) . '</p>';
+      $output .= '<p>' . t('Module-related tasks can be located on the <a href="@by-module">administration by module page</a>. New <a href="@permissions">module-related permissions</a> may also become available as new modules are enabled.', array('@by-module' => url('admin/by-module'), '@permissions' => url('admin/user/permission'))) . '</p>';
       $output .= '<p>' . t('Each time a module is updated, it is important that <a href="@update-php">update.php</a> is run. To help manage the update process, the <em>Update status</em> module, if enabled, provides <a href="@updates">information on new versions of modules (and themes)</a> as they are released. Regular review of the <a href="@updates">available updates page</a> is essential to maintaining a secure and current site.', array('@update-php' => $base_url . '/update.php', '@updates' => url('admin/reports/updates'))) . '</p>';
       return $output;
-    case 'admin/build/modules/uninstall':
+    case 'admin/build/module/uninstall':
       return '<p>' . t('The uninstall process removes all data related to a module. To uninstall a module, you must first disable it. Not all modules support this feature.') . '</p>';
     case 'admin/build/block/configure':
       if ($arg[4] == 'system' && $arg[5] == 0) {
@@ -455,34 +455,34 @@
     'block callback' => 'system_admin_theme_settings',
   );
   // Themes:
-  $items['admin/build/themes'] = array(
+  $items['admin/build/theme'] = array(
     'title' => 'Themes',
     'description' => 'Change which theme your site uses or allows users to set.',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_themes_form', NULL),
     'access arguments' => array('administer site configuration'),
   );
-  $items['admin/build/themes/select'] = array(
+  $items['admin/build/theme/select'] = array(
     'title' => 'List',
     'description' => 'Select the default theme.',
     'type' => MENU_DEFAULT_LOCAL_TASK,
     'weight' => -1,
   );
-  $items['admin/build/themes/settings'] = array(
+  $items['admin/build/theme/settings'] = array(
     'title' => 'Configure',
     'page arguments' => array('system_theme_settings'),
     'access arguments' => array('administer site configuration'),
     'type' => MENU_LOCAL_TASK,
   );
   // Theme configuration subtabs
-  $items['admin/build/themes/settings/global'] = array(
+  $items['admin/build/theme/settings/global'] = array(
     'title' => 'Global settings',
     'type' => MENU_DEFAULT_LOCAL_TASK,
     'weight' => -1,
   );
 
   foreach (list_themes() as $theme) {
-    $items['admin/build/themes/settings/' . $theme->name] = array(
+    $items['admin/build/theme/settings/' . $theme->name] = array(
       'title' => $theme->info['name'],
       'page arguments' => array('system_theme_settings', $theme->name),
       'type' => MENU_LOCAL_TASK,
@@ -492,29 +492,29 @@
   }
 
   // Modules:
-  $items['admin/build/modules'] = array(
+  $items['admin/build/module'] = array(
     'title' => 'Modules',
     'description' => 'Enable or disable add-on modules for your site.',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('system_modules'),
     'access arguments' => array('administer site configuration'),
   );
-  $items['admin/build/modules/list'] = array(
+  $items['admin/build/module/list'] = array(
     'title' => 'List',
     'type' => MENU_DEFAULT_LOCAL_TASK,
   );
-  $items['admin/build/modules/list/confirm'] = array(
+  $items['admin/build/module/list/confirm'] = array(
     'title' => 'List',
     'access arguments' => array('administer site configuration'),
     'type' => MENU_CALLBACK,
   );
-  $items['admin/build/modules/uninstall'] = array(
+  $items['admin/build/module/uninstall'] = array(
     'title' => 'Uninstall',
     'page arguments' => array('system_modules_uninstall'),
     'access arguments' => array('administer site configuration'),
     'type' => MENU_LOCAL_TASK,
   );
-  $items['admin/build/modules/uninstall/confirm'] = array(
+  $items['admin/build/module/uninstall/confirm'] = array(
     'title' => 'Uninstall',
     'access arguments' => array('administer site configuration'),
     'type' => MENU_CALLBACK,
@@ -1489,7 +1489,7 @@
   $admin_task_count = 0;
   // Check for permissions.
   if (in_array($module, module_implements('perm')) && $admin_access) {
-    $admin_tasks[-1] = l(t('Configure permissions'), 'admin/user/permissions', array('fragment' => 'module-' . $module));
+    $admin_tasks[-1] = l(t('Configure permissions'), 'admin/user/permission', array('fragment' => 'module-' . $module));
   }
 
   // Check for menu items that are admin links.
Index: modules/system/system.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/system/system.test,v
retrieving revision 1.36
diff -u -r1.36 system.test
--- modules/system/system.test	14 Jan 2009 12:18:37 -0000	1.36
+++ modules/system/system.test	22 Jan 2009 00:34:00 -0000
@@ -79,7 +79,7 @@
     // Install (and enable) aggregator module.
     $edit = array();
     $edit['modules[Core][aggregator][enable]'] = 'aggregator';
-    $this->drupalPost('admin/build/modules', $edit, t('Save configuration'));
+    $this->drupalPost('admin/build/module', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'), t('Modules status has been updated.'));
 
     // Check that hook_modules_installed and hook_modules_enabled hooks were invoked and check tables.
@@ -91,7 +91,7 @@
     // Disable aggregator, check tables, uninstall aggregator, check tables.
     $edit = array();
     $edit['modules[Core][aggregator][enable]'] = FALSE;
-    $this->drupalPost('admin/build/modules', $edit, t('Save configuration'));
+    $this->drupalPost('admin/build/module', $edit, t('Save configuration'));
     $this->assertText(t('The configuration options have been saved.'), t('Modules status has been updated.'));
 
     // Check that hook_modules_disabled hook was invoked and check tables.
@@ -102,7 +102,7 @@
     // Uninstall the module.
     $edit = array();
     $edit['uninstall[aggregator]'] = 'aggregator';
-    $this->drupalPost('admin/build/modules/uninstall', $edit, t('Uninstall'));
+    $this->drupalPost('admin/build/module/uninstall', $edit, t('Uninstall'));
 
     $this->drupalPost(NULL, NULL, t('Uninstall'));
     $this->assertText(t('The selected modules have been uninstalled.'), t('Modules status has been updated.'));
@@ -133,7 +133,7 @@
     // Attempt to enable content translation without locale enabled.
     $edit = array();
     $edit['modules[Core][translation][enable]'] = 'translation';
-    $this->drupalPost('admin/build/modules', $edit, t('Save configuration'));
+    $this->drupalPost('admin/build/module', $edit, t('Save configuration'));
     $this->assertText(t('Some required modules must be enabled'), t('Dependecy required.'));
 
     $this->assertModules(array('translation', 'locale'), FALSE);
@@ -170,7 +170,7 @@
    */
   function testDisableRequired() {
     $required_modules = drupal_required_modules();
-    $this->drupalGet('admin/build/modules');
+    $this->drupalGet('admin/build/module');
     foreach($required_modules as $module) {
       // Check to make sure the checkbox for required module is not found.
       $this->assertNoFieldByName('modules[Core][' . $module . '][enable]');
Index: modules/translation/translation.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/translation/translation.module,v
retrieving revision 1.37
diff -u -r1.37 translation.module
--- modules/translation/translation.module	16 Dec 2008 22:05:51 -0000	1.37
+++ modules/translation/translation.module	22 Jan 2009 00:33:38 -0000
@@ -33,7 +33,7 @@
     case 'admin/help#translation':
       $output = '<p>' . t('The content translation module allows content to be translated into different languages. Working with the <a href="@locale">locale module</a> (which manages enabled languages and provides translation for the site interface), the content translation module is key to creating and maintaining translated site content.', array('@locale' => url('admin/help/locale'))) . '</p>';
       $output .= '<p>' . t('Configuring content translation and translation-enabled content types:') . '</p>';
-      $output .= '<ul><li>' . t('Assign the <em>translate content</em> permission to the appropriate user roles at the <a href="@permissions">Permissions configuration page</a>.', array('@permissions' => url('admin/user/permissions'))) . '</li>';
+      $output .= '<ul><li>' . t('Assign the <em>translate content</em> permission to the appropriate user roles at the <a href="@permissions">Permissions configuration page</a>.', array('@permissions' => url('admin/user/permission'))) . '</li>';
       $output .= '<li>' . t('Add and enable desired languages at the <a href="@languages">Languages configuration page</a>.', array('@languages' => url('admin/settings/language'))) . '</li>';
       $output .= '<li>' . t('Determine which <a href="@content-types">content types</a> should support translation features. To enable translation support for a content type, edit the type and at the <em>Multilingual support</em> drop down, select <em>Enabled, with translation</em>. (<em>Multilingual support</em> is located within <em>Workflow settings</em>.) Be sure to save each content type after enabling multilingual support.', array('@content-types' => url('admin/build/types'))) . '</li></ul>';
       $output .= '<p>' . t('Working with translation-enabled content types:') . '</p>';
Index: modules/update/update.compare.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/update/update.compare.inc,v
retrieving revision 1.15
diff -u -r1.15 update.compare.inc
--- modules/update/update.compare.inc	20 Dec 2008 18:24:40 -0000	1.15
+++ modules/update/update.compare.inc	22 Jan 2009 00:34:18 -0000
@@ -582,7 +582,7 @@
   // In some cases, we must clear the cache. Rather than do so on a time
   // basis, we check for specific paths.
   $q = $_GET['q'];
-  $paths = array('admin/build/modules', 'admin/build/themes', 'admin/reports', 'admin/reports/updates', 'admin/reports/status', 'admin/reports/updates/check');
+  $paths = array('admin/build/module', 'admin/build/theme', 'admin/reports', 'admin/reports/updates', 'admin/reports/status', 'admin/reports/updates/check');
   if (in_array($q, $paths)) {
     cache_clear_all($cid, 'cache_update');
   }
Index: modules/update/update.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/update/update.module,v
retrieving revision 1.29
diff -u -r1.29 update.module
--- modules/update/update.module	18 Jan 2009 16:38:06 -0000	1.29
+++ modules/update/update.module	22 Jan 2009 00:34:18 -0000
@@ -63,8 +63,8 @@
       $output .= '<p>' . t('To extend the functionality or to change the look of your site, a number of contributed <a href="@modules">modules</a> and <a href="@themes">themes</a> are available.', array('@modules' => 'http://drupal.org/project/modules', '@themes' => 'http://drupal.org/project/themes')) . '</p>';
       $output .= '<p>' . t('Each time Drupal core or a contributed module or theme is updated, it is important that <a href="@update-php">update.php</a> is run.', array('@update-php' => url($base_url . '/update.php', array('external' => TRUE)))) . '</p>';
       return $output;
-    case 'admin/build/themes':
-    case 'admin/build/modules':
+    case 'admin/build/theme':
+    case 'admin/build/module':
       include_once DRUPAL_ROOT . '/includes/install.inc';
       $status = update_requirements('runtime');
       foreach (array('core', 'contrib') as $report_type) {
@@ -87,7 +87,7 @@
     case 'admin/help#update':
       $output = '<p>' . t("The Update status module periodically checks for new versions of your site's software (including contributed modules and themes), and alerts you to available updates.") . '</p>';
       $output .= '<p>' . t('The <a href="@update-report">report of available updates</a> will alert you when new releases are available for download. You may configure options for update checking frequency and notifications at the <a href="@update-settings">Update status module settings page</a>.', array('@update-report' => url('admin/reports/updates'), '@update-settings' => url('admin/settings/updates'))) . '</p>';
-      $output .= '<p>' . t('Please note that in order to provide this information, anonymous usage statistics are sent to drupal.org. If desired, you may disable the Update status module from the <a href="@modules">module administration page</a>.', array('@modules' => url('admin/build/modules'))) . '</p>';
+      $output .= '<p>' . t('Please note that in order to provide this information, anonymous usage statistics are sent to drupal.org. If desired, you may disable the Update status module from the <a href="@modules">module administration page</a>.', array('@modules' => url('admin/build/module'))) . '</p>';
       $output .= '<p>' . t('For more information, see the online handbook entry for <a href="@update">Update status module</a>.', array('@update' => 'http://drupal.org/handbook/modules/update')) . '</p>';
       return $output;
 
Index: modules/update/update.settings.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/update/update.settings.inc,v
retrieving revision 1.5
diff -u -r1.5 update.settings.inc
--- modules/update/update.settings.inc	11 Jan 2009 21:19:19 -0000	1.5
+++ modules/update/update.settings.inc	22 Jan 2009 00:34:18 -0000
@@ -40,7 +40,7 @@
       'all' => t('All newer versions'),
       'security' => t('Only security updates'),
     ),
-    '#description' => t('If there are updates available of Drupal core or any of your installed modules and themes, your site will print an error message on the <a href="@status_report">status report</a>, the <a href="@modules_page">modules page</a>, and the <a href="@themes_page">themes page</a>. You can choose to only see these error messages if a security update is available, or to be notified about any newer versions.', array('@status_report' => url('admin/reports/status'), '@modules_page' => url('admin/build/modules'), '@themes_page' => url('admin/build/themes')))
+    '#description' => t('If there are updates available of Drupal core or any of your installed modules and themes, your site will print an error message on the <a href="@status_report">status report</a>, the <a href="@modules_page">modules page</a>, and the <a href="@themes_page">themes page</a>. You can choose to only see these error messages if a security update is available, or to be notified about any newer versions.', array('@status_report' => url('admin/reports/status'), '@modules_page' => url('admin/build/module'), '@themes_page' => url('admin/build/theme')))
   );
 
   $form = system_settings_form($form, FALSE);
Index: modules/upload/upload.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/upload/upload.module,v
retrieving revision 1.225
diff -u -r1.225 upload.module
--- modules/upload/upload.module	12 Jan 2009 08:29:09 -0000	1.225
+++ modules/upload/upload.module	22 Jan 2009 00:33:38 -0000
@@ -18,7 +18,7 @@
       $output .= '<p>' . t('For more information, see the online handbook entry for <a href="@upload">Upload module</a>.', array('@upload' => 'http://drupal.org/handbook/modules/upload/')) . '</p>';
       return $output;
     case 'admin/settings/upload':
-      return '<p>' . t('Users with the <a href="@permissions">upload files permission</a> can upload attachments. Users with the <a href="@permissions">view uploaded files permission</a> can view uploaded attachments. You can choose which post types can take attachments on the <a href="@types">content types settings</a> page.', array('@permissions' => url('admin/user/permissions'), '@types' => url('admin/settings/types'))) . '</p>';
+      return '<p>' . t('Users with the <a href="@permissions">upload files permission</a> can upload attachments. Users with the <a href="@permissions">view uploaded files permission</a> can view uploaded attachments. You can choose which post types can take attachments on the <a href="@types">content types settings</a> page.', array('@permissions' => url('admin/user/permission'), '@types' => url('admin/settings/types'))) . '</p>';
   }
 }
 
Index: modules/user/user.admin.inc
===================================================================
RCS file: /cvs/drupal/drupal/modules/user/user.admin.inc,v
retrieving revision 1.36
diff -u -r1.36 user.admin.inc
--- modules/user/user.admin.inc	19 Jan 2009 10:46:52 -0000	1.36
+++ modules/user/user.admin.inc	22 Jan 2009 00:33:38 -0000
@@ -249,7 +249,7 @@
   $form['cancel']['user_cancel_method'] = array(
     '#type' => 'item',
     '#title' => t('When cancelling a user account'),
-    '#description' => t('This default applies to all users who want to cancel their accounts. Users with the %select-cancel-method or %administer-users <a href="@permissions-url">permissions</a> can override this default method.', array('%select-cancel-method' => t('Select method for cancelling account'), '%administer-users' => t('Administer users'), '@permissions-url' => url('admin/user/permissions'))),
+    '#description' => t('This default applies to all users who want to cancel their accounts. Users with the %select-cancel-method or %administer-users <a href="@permissions-url">permissions</a> can override this default method.', array('%select-cancel-method' => t('Select method for cancelling account'), '%administer-users' => t('Administer users'), '@permissions-url' => url('admin/user/permission'))),
   );
   $form['cancel']['user_cancel_method'] += user_cancel_methods();
   foreach (element_children($form['cancel']['user_cancel_method']) as $element) {
@@ -667,7 +667,7 @@
   $rid = arg(4);
   if ($rid) {
     if ($rid == DRUPAL_ANONYMOUS_RID || $rid == DRUPAL_AUTHENTICATED_RID) {
-      drupal_goto('admin/user/roles');
+      drupal_goto('admin/user/role');
     }
     // Display the edit role form.
     $role = db_fetch_object(db_query('SELECT * FROM {role} WHERE rid = %d', $rid));
@@ -744,7 +744,7 @@
     db_query("INSERT INTO {role} (name) VALUES ('%s')", $form_state['values']['name']);
     drupal_set_message(t('The role has been added.'));
   }
-  $form_state['redirect'] = 'admin/user/roles';
+  $form_state['redirect'] = 'admin/user/role';
   return;
 }
 
@@ -801,9 +801,9 @@
 function theme_user_admin_new_role($form) {
   $header = array(t('Name'), array('data' => t('Operations'), 'colspan' => 2));
   foreach (user_roles() as $rid => $name) {
-    $edit_permissions = l(t('edit permissions'), 'admin/user/permissions/' . $rid);
+    $edit_permissions = l(t('edit permissions'), 'admin/user/permission/' . $rid);
     if (!in_array($rid, array(DRUPAL_ANONYMOUS_RID, DRUPAL_AUTHENTICATED_RID))) {
-      $rows[] = array($name, l(t('edit role'), 'admin/user/roles/edit/' . $rid), $edit_permissions);
+      $rows[] = array($name, l(t('edit role'), 'admin/user/role/edit/' . $rid), $edit_permissions);
     }
     else {
       $rows[] = array($name, t('locked'), $edit_permissions);
Index: modules/user/user.module
===================================================================
RCS file: /cvs/drupal/drupal/modules/user/user.module,v
retrieving revision 1.956
diff -u -r1.956 user.module
--- modules/user/user.module	20 Jan 2009 03:10:00 -0000	1.956
+++ modules/user/user.module	22 Jan 2009 00:33:38 -0000
@@ -1159,21 +1159,21 @@
   );
 
   // Permission administration pages.
-  $items['admin/user/permissions'] = array(
+  $items['admin/user/permission'] = array(
     'title' => 'Permissions',
     'description' => 'Determine access to features by selecting permissions for roles.',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('user_admin_perm'),
     'access arguments' => array('administer permissions'),
   );
-  $items['admin/user/roles'] = array(
+  $items['admin/user/role'] = array(
     'title' => 'Roles',
     'description' => 'List, edit, or add user roles.',
     'page callback' => 'drupal_get_form',
     'page arguments' => array('user_admin_new_role'),
     'access arguments' => array('administer permissions'),
   );
-  $items['admin/user/roles/edit'] = array(
+  $items['admin/user/role/edit'] = array(
     'title' => 'Edit role',
     'page arguments' => array('user_admin_role'),
     'access arguments' => array('administer permissions'),
@@ -2174,14 +2174,14 @@
     case 'admin/user/user/create':
     case 'admin/user/user/account/create':
       return '<p>' . t("This web page allows administrators to register new users. Users' e-mail addresses and usernames must be unique.") . '</p>';
-    case 'admin/user/permissions':
-      return '<p>' . t('Permissions let you control what users can do on your site. Each user role (defined on the <a href="@role">user roles page</a>) has its own set of permissions. For example, you could give users classified as "Administrators" permission to "administer nodes" but deny this power to ordinary, "authenticated" users. You can use permissions to reveal new features to privileged users (those with subscriptions, for example). Permissions also allow trusted users to share the administrative burden of running a busy site.', array('@role' => url('admin/user/roles'))) . '</p>';
-    case 'admin/user/roles':
+    case 'admin/user/permission':
+      return '<p>' . t('Permissions let you control what users can do on your site. Each user role (defined on the <a href="@role">user roles page</a>) has its own set of permissions. For example, you could give users classified as "Administrators" permission to "administer nodes" but deny this power to ordinary, "authenticated" users. You can use permissions to reveal new features to privileged users (those with subscriptions, for example). Permissions also allow trusted users to share the administrative burden of running a busy site.', array('@role' => url('admin/user/role'))) . '</p>';
+    case 'admin/user/role':
       return t('<p>Roles allow you to fine tune the security and administration of Drupal. A role defines a group of users that have certain privileges as defined in <a href="@permissions">user permissions</a>. Examples of roles include: anonymous user, authenticated user, moderator, administrator and so on. In this area you will define the <em>role names</em> of the various roles. To delete a role choose "edit".</p><p>By default, Drupal comes with two user roles:</p>
       <ul>
       <li>Anonymous user: this role is used for users that don\'t have a user account or that are not authenticated.</li>
       <li>Authenticated user: this role is automatically granted to all logged in users.</li>
-      </ul>', array('@permissions' => url('admin/user/permissions')));
+      </ul>', array('@permissions' => url('admin/user/permission')));
     case 'admin/user/search':
       return '<p>' . t('Enter a simple pattern ("*" may be used as a wildcard match) to search for a username or e-mail address. For example, one may search for "br" and Drupal might return "brian", "brad", and "brenda@example.com".') . '</p>';
   }
Index: modules/user/user.test
===================================================================
RCS file: /cvs/drupal/drupal/modules/user/user.test,v
retrieving revision 1.26
diff -u -r1.26 user.test
--- modules/user/user.test	20 Jan 2009 03:10:00 -0000	1.26
+++ modules/user/user.test	22 Jan 2009 00:33:38 -0000
@@ -734,7 +734,7 @@
     $this->assertFalse(user_access('administer nodes', $account, TRUE), t('User does not have "administer nodes" permission.'));
     $edit = array();
     $edit[$rid . '[administer nodes]'] = TRUE;
-    $this->drupalPost('admin/user/permissions', $edit, t('Save permissions'));
+    $this->drupalPost('admin/user/permission', $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), t('Successful save message displayed.'));
     $this->assertTrue(user_access('administer nodes', $account, TRUE), t('User now has "administer nodes" permission.'));
 
@@ -742,7 +742,7 @@
     $this->assertTrue(user_access('access user profiles', $account, TRUE), t('User has "access user profiles" permission.'));
     $edit = array();
     $edit[$rid . '[access user profiles]'] = FALSE;
-    $this->drupalPost('admin/user/permissions', $edit, t('Save permissions'));
+    $this->drupalPost('admin/user/permission', $edit, t('Save permissions'));
     $this->assertText(t('The changes have been saved.'), t('Successful save message displayed.'));
     $this->assertFalse(user_access('access user profiles', $account, TRUE), t('User no longer has "access user profiles" permission.'));
   }
Index: themes/chameleon/common.css
===================================================================
RCS file: /cvs/drupal/drupal/themes/chameleon/common.css,v
retrieving revision 1.12
diff -u -r1.12 common.css
--- themes/chameleon/common.css	4 Jun 2007 11:10:38 -0000	1.12
+++ themes/chameleon/common.css	22 Jan 2009 00:34:18 -0000
@@ -114,7 +114,7 @@
 }
 
 /*
-** Common navigation links added on the admin/build/themes/settings page
+** Common navigation links added on the admin/build/theme/settings page
 */
 .navlinks {
   padding: 0em 0.5em 1.5em 0em; /* LTR */

