diff --git a/app/Controllers/configureController.php b/app/Controllers/configureController.php
index 645f9eabf..a5d99c508 100755
--- a/app/Controllers/configureController.php
+++ b/app/Controllers/configureController.php
@@ -286,7 +286,7 @@ class FreshRSS_configure_Controller extends Minz_ActionController {
public function shortcutAction () {
$list_keys = array ('a', 'b', 'backspace', 'c', 'd', 'delete', 'down', 'e', 'end', 'enter',
- 'escape', 'f', 'g', 'h', 'i', 'insert', 'j', 'k', 'l', 'left',
+ 'escape', 'f', 'g', 'h', 'home', 'i', 'insert', 'j', 'k', 'l', 'left',
'm', 'n', 'o', 'p', 'page_down', 'page_up', 'q', 'r', 'return', 'right',
's', 'space', 't', 'tab', 'u', 'up', 'v', 'w', 'x', 'y',
'z', '0', '1', '2', '3', '4', '5', '6', '7', '8',
diff --git a/app/Models/Configuration.php b/app/Models/Configuration.php
index 2a7fe95aa..2b719c370 100644
--- a/app/Models/Configuration.php
+++ b/app/Models/Configuration.php
@@ -32,6 +32,8 @@ class FreshRSS_Configuration {
'go_website' => 'space',
'next_entry' => 'j',
'prev_entry' => 'k',
+ 'first_entry' => 'home',
+ 'last_entry' => 'end',
'collapse_entry' => 'c',
'load_more' => 'm',
'auto_share' => 's',
diff --git a/app/i18n/en.php b/app/i18n/en.php
index a2cc461c5..66386f0ed 100644
--- a/app/i18n/en.php
+++ b/app/i18n/en.php
@@ -78,6 +78,10 @@ return array (
'bad_opml_file' => 'Your OPML file is invalid',
'shortcuts_updated' => 'Shortcuts have been updated',
'shortcuts_management' => 'Shortcuts management',
+ 'shortcuts_navigation' => 'Navigation',
+ 'shortcuts_navigation_help' => 'With the "Shift" modifier, navigation shortcuts apply on feeds.
With the "Ctrl" modifier, navigation shortcuts apply on categories.',
+ 'shortcuts_article_action' => 'Article actions',
+ 'shortcuts_other_action' => 'Other actions',
'feeds_marked_read' => 'Feeds have been marked as read',
'updated' => 'Modifications have been updated',
@@ -121,15 +125,16 @@ return array (
'javascript_for_shortcuts' => 'JavaScript must be enabled in order to use shortcuts',
'javascript_should_be_activated'=> 'JavaScript must be enabled',
'shift_for_all_read' => '+ shift
to mark all articles as read',
- 'see_on_website' => 'See article on its original website',
+ 'see_on_website' => 'See on original website',
'next_article' => 'Skip to the next article',
- 'shift_for_last' => '+ shift
to skip to the last article of page',
+ 'last_article' => 'Skip to the last article',
'previous_article' => 'Skip to the previous article',
- 'shift_for_first' => '+ shift
to skip to the first article of page',
+ 'first_article' => 'Skip to the first article',
'next_page' => 'Skip to the next page',
'previous_page' => 'Skip to the previous page',
- 'collapse_article' => 'Collapse current article',
- 'auto_share' => 'Share current article',
+ 'collapse_article' => 'Collapse',
+ 'auto_share' => 'Share',
+ 'auto_share_help' => 'If there is only one sharing mode, it is used. Else modes are accessible by their number.',
'file_to_import' => 'File to import',
'import' => 'Import',
diff --git a/app/i18n/fr.php b/app/i18n/fr.php
index 9ab06ba26..edf2fb19f 100644
--- a/app/i18n/fr.php
+++ b/app/i18n/fr.php
@@ -78,6 +78,10 @@ return array (
'bad_opml_file' => 'Votre fichier OPML n’est pas valide',
'shortcuts_updated' => 'Les raccourcis ont été mis à jour',
'shortcuts_management' => 'Gestion des raccourcis',
+ 'shortcuts_navigation' => 'Navigation',
+ 'shortcuts_navigation_help' => 'Avec le modificateur "Shift", les raccourcis de navigation s’appliquent aux flux.
Avec le modificateur "Ctrl", les raccourcis de navigation s’appliquent aux catégories.',
+ 'shortcuts_article_action' => 'Actions associées à l’article courant',
+ 'shortcuts_other_action' => 'Autres actions',
'feeds_marked_read' => 'Les flux ont été marqués comme lus',
'updated' => 'Modifications enregistrées',
@@ -121,15 +125,16 @@ return array (
'javascript_for_shortcuts' => 'Le JavaScript doit être activé pour pouvoir profiter des raccourcis',
'javascript_should_be_activated'=> 'Le JavaScript doit être activé',
'shift_for_all_read' => '+ shift
pour marquer tous les articles comme lus',
- 'see_on_website' => 'Voir l’article sur le site d’origine',
+ 'see_on_website' => 'Voir sur le site d’origine',
'next_article' => 'Passer à l’article suivant',
- 'shift_for_last' => '+ shift
pour passer au dernier article de la page',
+ 'last_article' => 'Passer au dernier article',
'previous_article' => 'Passer à l’article précédent',
- 'shift_for_first' => '+ shift
pour passer au premier article de la page',
+ 'first_article' => 'Passer au premier article',
'next_page' => 'Passer à la page suivante',
'previous_page' => 'Passer à la page précédente',
- 'collapse_article' => 'Refermer l’article courant',
- 'auto_share' => 'Partager l’article courant',
+ 'collapse_article' => 'Refermer',
+ 'auto_share' => 'Partager',
+ 'auto_share_help' => 'Si il n’y a qu’un mode de partage, celui ci est utilisé automatiquement. Sinon ils sont accessibles par leur numéro.',
'file_to_import' => 'Fichier à importer',
'import' => 'Importer',
diff --git a/app/views/configure/shortcut.phtml b/app/views/configure/shortcut.phtml
index b0867f711..748a65d17 100644
--- a/app/views/configure/shortcut.phtml
+++ b/app/views/configure/shortcut.phtml
@@ -16,55 +16,59 @@
+
+