Diff
diff --git a/src/keyboard/keysyms.rs b/src/keyboard/keysyms.rs
index 12564b3..ebefdce 100644
--- a/src/keyboard/keysyms.rs
+++ b/src/keyboard/keysyms.rs
@@ -76,7 +76,16 @@ pub const XK_COMMA: Keysym = 0x002c;
pub const XK_PERIOD: Keysym = 0x002e;
pub const XK_SLASH: Keysym = 0x002f;
pub const XK_PRINT: Keysym = 0xff61;
-
+pub const XK_AMPERSAND: Keysym = 0x26;
+pub const XK_AGRAVE: Keysym = 0xe0;
+pub const XK_CCEDILLA: Keysym = 0xe7;
+pub const XK_EGRAVE: Keysym = 0xe8;
+pub const XK_EACUTE: Keysym = 0xe9;
+pub const XK_PARENLEFT: Keysym = 0x28;
+pub const XK_PARENRIGHT: Keysym = 0x29;
+pub const XK_QUOTEDBL: Keysym = 0x22;
+pub const XK_UNDERSCORE: Keysym = 0x5f;
+pub const XK_HYPHEN: Keysym = 0xad;
pub const XF86_AUDIO_MEDIA: Keysym = 0x1008ff32;
pub const XF86_AUDIO_NEXT: Keysym = 0x1008ff17;
pub const XF86_AUDIO_PAUSE: Keysym = 0x1008ff31;
@@ -214,7 +223,16 @@ pub fn keysym_from_str(s: &str) -> Option<Keysym> {
"Period" => Some(XK_PERIOD),
"Slash" => Some(XK_SLASH),
"Print" => Some(XK_PRINT),
-
+ "Ampersand" => Some(XK_AMPERSAND),
+ "Agrave" => Some(XK_AGRAVE),
+ "Ccedilla" => Some(XK_CCEDILLA),
+ "Egrave" => Some(XK_EGRAVE),
+ "Eacute" => Some(XK_EACUTE),
+ "ParenLeft" => Some(XK_PARENLEFT),
+ "ParenRight" => Some(XK_PARENRIGHT),
+ "QuoteDouble" => Some(XK_QUOTEDBL),
+ "Underscore" => Some(XK_UNDERSCORE),
+ "Hyphen" => Some(XK_HYPHEN),
"XF86AudioMedia" => Some(XF86_AUDIO_MEDIA),
"XF86AudioNext" => Some(XF86_AUDIO_NEXT),
"XF86AudioPause" => Some(XF86_AUDIO_PAUSE),
@@ -319,6 +337,16 @@ pub fn format_keysym(keysym: Keysym) -> String {
XK_APOSTROPHE => "'".to_string(),
XK_BACKSLASH => "\\".to_string(),
XK_PRINT => "Print".to_string(),
+ XK_AMPERSAND => "&".to_string(),
+ XK_AGRAVE => "à".to_string(),
+ XK_CCEDILLA => "ç".to_string(),
+ XK_EGRAVE => "è".to_string(),
+ XK_EACUTE => "é".to_string(),
+ XK_PARENLEFT => "(".to_string(),
+ XK_PARENRIGHT => ")".to_string(),
+ XK_QUOTEDBL => "\"".to_string(),
+ XK_UNDERSCORE => "_".to_string(),
+ XK_HYPHEN => "-".to_string(),
XF86_AUDIO_MEDIA => "Media".to_string(),
XF86_AUDIO_NEXT => "Next".to_string(),
XF86_AUDIO_PAUSE => "Pause".to_string(),