1#[cfg(not(target_os = "macos"))]
2mod utils;
3
4#[cfg(target_os = "linux")]
5mod linux;
6#[cfg(target_os = "macos")]
7mod macos;
8#[cfg(target_os = "windows")]
9mod windows;
10
11#[cfg(target_os = "linux")]
12use crate::linux::get_selected_text as _get_selected_text;
13#[cfg(target_os = "macos")]
14use crate::macos::get_selected_text as _get_selected_text;
15#[cfg(target_os = "windows")]
16use crate::windows::get_selected_text as _get_selected_text;
17
18pub fn get_selected_text() -> Result<String, Box<dyn std::error::Error>> {
27 _get_selected_text()
28}
29
30#[cfg(test)]
31mod tests {
32 use super::*;
33
34 #[test]
35 fn test_get_selected_text() {
36 println!("--- get_selected_text ---");
37 let text = get_selected_text().unwrap();
38 println!("selected text: {:#?}", text);
39 println!("--- get_selected_text ---");
40 let text = get_selected_text().unwrap();
41 println!("selected text: {:#?}", text);
42 println!("--- get_selected_text ---");
43 let text = get_selected_text().unwrap();
44 println!("selected text: {:#?}", text);
45 }
46}