Compare commits

..

No commits in common. "8f906d176245430a613e3acfb4d83cd96f23a01c" and "6677fe05d58a5fd899d4cefbd53868ff9912c2f4" have entirely different histories.

14 changed files with 340 additions and 577 deletions

621
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -1,6 +1,6 @@
[package]
name = "cosmic-edit"
version = "1.0.11"
version = "1.0.8"
authors = ["Jeremy Soller <jeremy@system76.com>"]
edition = "2024"
license = "GPL-3.0-only"
@ -70,9 +70,7 @@ debug = true
onig = { git = "https://github.com/rust-onig/rust-onig.git", branch = "main" }
onig_sys = { git = "https://github.com/rust-onig/rust-onig.git", branch = "main" }
[patch.'https://github.com/pop-os/libcosmic']
libcosmic = { path = "../libcosmic" }
cosmic-config = { path = "../libcosmic/cosmic-config" }
cosmic-theme = { path = "../libcosmic/cosmic-theme" }
iced_futures = { path = "../libcosmic/iced/futures" }
iced_winit = { path = "../libcosmic/iced/winit" }
# [patch.'https://github.com/pop-os/libcosmic']
# libcosmic = { git = "https://github.com/pop-os/libcosmic//" }
# cosmic-config = { git = "https://github.com/pop-os/libcosmic//" }
# cosmic-theme = { git = "https://github.com/pop-os/libcosmic//" }

12
debian/changelog vendored
View file

@ -1,15 +1,3 @@
cosmic-edit (1.0.11) noble; urgency=medium
* Epoch 1.0.11 version update
-- Jeremy Soller <jeremy@system76.com> Tue, 14 Apr 2026 11:09:17 -0600
cosmic-edit (1.0.9) noble; urgency=medium
* Epoch 1.0.9 version update
-- Jeremy Soller <jeremy@system76.com> Mon, 06 Apr 2026 15:09:58 -0600
cosmic-edit (1.0.8) noble; urgency=medium
* Epoch 1.0.8 version update

View file

@ -89,7 +89,7 @@ menu-open-project = افتح مشروعًا...
open-recent-project = افتح مشروعًا حديثًا
close-project = أغلِق المشروع
save = احفظ
save-as = احفظ باسم...
save-as = إحفظ كـ...
revert-all-changes = تراجع عن جميع التغييرات
menu-document-statistics = إحصائيات المستند...
document-type = نوع المستند...

View file

@ -20,7 +20,7 @@ line-count = Zeilen
## Git-Verwaltung
git-management = Git-Verwaltung
git-management-description = Git-Verwaltung ist ein Entwicklerwerkzeug, das für die Versionskontrolle eingesetzt wird.
git-management-description = Git-Verwaltung ist ein Entwicklerwerkzeug für die Versionskontrolle.
git-management-loading = Git-Verwaltung wird geladen...
stage = Vormerken
staged-changes = Vorgemerkte Änderungen
@ -34,7 +34,7 @@ project-search = Projektsuche
## Aufforderung zum Speichern von Änderungen
prompt-save-changes-title = Änderungen vor dem Schließen speichern?
prompt-unsaved-changes = Du hast ungespeicherte Änderungen. Wenn du ohne zu speichern fortfährst, gehen diese Änderungen verloren.
prompt-unsaved-changes = Es existieren ungespeicherte Änderungen. Speichern?
cancel = Abbrechen
discard = Änderungen verwerfen
save-all = Alles speichern
@ -131,4 +131,3 @@ menu-keyboard-shortcuts = Tastenkombinationen...
menu-about = Über COSMIC Texteditor...
repository = Repository
support = Unterstützung
comment = Texteditor für den COSMIC Desktop

View file

@ -10,18 +10,18 @@ todo = TODO
document-statistics = Asiakirjan tilastot
word-count = Sanoja
character-count = Merkkejä
character-count-no-spaces = Merkkejä (ilman välilyöntejä)
character-count-no-spaces = Merkit (ilman välilyöntejä)
line-count = Rivejä
## Git management
git-management = Git-hallinta
unstaged-changes = Valmistelemattomat muutokset
staged-changes = Valmistellut muutokset
unstaged-changes = Vaiheistamattomat muutokset
staged-changes = Vaiheistetut muutokset
## Project search
project-search = Projektihaku
project-search = Projektin haku
## Settings
@ -31,7 +31,7 @@ settings = Asetukset
appearance = Ulkoasu
theme = Teema
match-desktop = Sovita työpöytään
match-desktop = Sovita työpöydän kanssa
dark = Tumma
light = Vaalea
syntax-dark = Tumma syntaksi
@ -42,7 +42,7 @@ default-font-size = Fontin oletuskoko
### Keyboard shortcuts
keyboard-shortcuts = Pikanäppäimet
enable-vim-bindings = Ota käyttöön Vim-näppäinsidokset
enable-vim-bindings = Ota käyttöön Vim-komennot
# Menu
@ -52,19 +52,19 @@ enable-vim-bindings = Ota käyttöön Vim-näppäinsidokset
file = Tiedosto
new-file = Uusi tiedosto
new-window = Uusi ikkuna
open-file = Avaa tiedosto
open-file = Avaa tiedosto...
open-recent-file = Avaa viimeaikainen tiedosto
close-file = Sulje tiedosto
menu-open-project = Avaa projekti
open-recent-project = Avaa viimeaikainen projekti
menu-open-project = Avaa projekti...
open-recent-project = Avaa viimeisin projekti
close-project = Sulje projekti
save = Tallenna
save-as = Tallenna nimellä
revert-all-changes = Kumoa kaikki muutokset
menu-document-statistics = Asiakirjan tilastot…
document-type = Asiakirjan tyyppi…
encoding = Merkkikoodaus…
menu-git-management = Git-hallinta
save-as = Tallenna nimellä...
revert-all-changes = Peru kaiki muutokset
menu-document-statistics = Dokumentin tilastot...
document-type = Dokumentin tyyppi...
encoding = Koodataan...
menu-git-management = Git-hallinta...
print = Tulosta
quit = Lopeta
@ -79,8 +79,8 @@ paste = Liitä
select-all = Valitse kaikki
find = Etsi
replace = Korvaa
find-in-project = Etsi projektista
spell-check = Tarkista oikeinkirjoitus
find-in-project = Etsi projektista...
spell-check = Tarkista oikeinkirjoitus...
## View
@ -96,10 +96,10 @@ convert-indentation-to-tabs = Muunna sisennykset sarkaimiksi
word-wrap = Rivitys
show-line-numbers = Näytä rivinumerot
highlight-current-line = Korosta nykyinen rivi
syntax-highlighting = Syntaksikorostus…
syntax-highlighting = Syntaksi korostus...
menu-settings = Asetukset…
menu-keyboard-shortcuts = Pikanäppäimet…
menu-about = Tietoa COSMICin tekstimuokkaimesta…
menu-about = Tietoa COSMIC-tekstieditorista
cosmic-text-editor = COSMICin tekstimuokkain
cancel = Peru
repository = Tietovarasto
@ -121,7 +121,3 @@ default-size = Oletuskoko
zoom-out = Loitonna
comment = Tekstimuokkain COSMIC-työpöydälle
find-placeholder = Etsi…
stage = Valmistele muutokset
unstage = Poista valmistelu
replace-placeholder = Korvaa…
default-zoom-step = Zoomauksen askeleet

View file

@ -1,89 +0,0 @@
cancel = Sefsex
undo = Ssemmet
save = Sekles
quit = Tuffɣa
replace = Semselsi
support = Tallalt
settings = Iɣewwaṛen
appearance = Timeẓri
theme = Asentel
dark = Aɣmayan
light = Aceɛlal
paste = Senteḍ
select-all = Fren akk
zoom-in = Asemɣeṛ
default-size = Tiddi tamezwert
zoom-out = Asemẓi
view = Wali
menu-settings = Iɣewwaṛen…
match-desktop = Amṣada d tnarit
file = Afaylu
new-window = Asfaylu amaynut
edit = Ẓreg
cut = Gzem
copy = Nɣel
repository = Asarsay
cosmic-text-editor = Amaẓrag n uḍris COSMIC
new-document = Isemli amaynut
open-project = Ldi asenfaṛ
document-statistics = Tiddadanin n isemli
word-count = Amḍan n wawalen
character-count = Isekkilen
character-count-no-spaces = Isekkilen (war tallunin)
line-count = Izirigen
git-management = Asefrek n Git
git-management-description = Asefrek Git d afecku n uneflay i yettwasqedcen i tmehlin n usenqed n ileqman.
git-management-loading = Asali n usefrek n Git…
project-search = Anadi n usenfaṛ
prompt-save-changes-title = Sekles ibeddilen send ad tmedleḍ?
prompt-unsaved-changes = Ɣuṛ-k·m ibeddilen ur nettwasekles ara. Ma tkemmeleḍ war asekles, ibeddilen-agi ad ṛuḥen.
discard = Sefsex ibeddilen
save-all = Sekles akk
syntax-dark = Taseddast taɣmayant
syntax-light = Taseddast taceɛlalt
default-font = Tasefsit tamezwert
default-font-size = Tiddi n tsefsit tamezwert
default-zoom-step = Isurifen n usemɣer
keyboard-shortcuts = Inegzumen n unasiw
find = Af-d
find-in-project = Af-d deg usenfaṛ…
tab-width = Tehri n yiccer: { $tab_width }
show-line-numbers = Sken imḍanen n izirig
highlight-current-line = Sebrureq izirig amiran
syntax-highlighting = Asebrureq n tseddast…
menu-keyboard-shortcuts = Inegzumen n unasiw…
menu-about = Ɣef umaẓrag n uḍris COSMIC…
open-file = Ldi afaylu…
todo = Ad Yettwaxdem
stage = Smiter
unstage = Kkes seg usmiter
staged-changes = Ibeddilen yettusmitren
unstaged-changes = Ibeddilen ur nettusmitren ara
find-placeholder = Af-d…
find-previous = Af-d uzwir
find-next = Af-d uḍfir
replace-placeholder = Semselsi…
replace-all = Semselsi akk
use-regex = Seqdec Tinfaliyin tiluganin
case-sensitive = Yettḥulfu i tejṛut n usekkil
wrap-around = Uɣal ɣer izirig
new-file = Afaylu amaynut
open-recent-file = Ldi afaylu n melmi kan
close-file = Mdel afaylu
menu-open-project = Ldi asenfaṛ…
open-recent-project = Ldi asenfaṛ n melmi kan
close-project = Mdel asenfaṛ
save-as = Sekles am…
document-type = Anaw n yisemli…
encoding = Asettengel…
menu-git-management = Asefrek n Git…
print = Siggez
redo = Err-d
spell-check = Asenqed n tira…
word-wrap = Tuɣalin s ajerriḍ
revert-all-changes = Sefsex ibeddilen akk
indentation = Asiẓi
automatic-indentation = Asiẓi awurman
convert-indentation-to-spaces = Selket asiẓi ɣer tallunin
convert-indentation-to-tabs = Selket asiẓi ɣer yiccer
comment = Amaẓrag n uḍris i tnarit COSMIC

View file

@ -21,7 +21,7 @@ line-count = 行数
git-management = Git 管理
git-management-description = Git 管理是个用于版本控制的开发工具。
git-management-loading = 正在加载 Git 管理
git-management-loading = 正在加载 Git 管理...
stage = 暂存
staged-changes = 已暂存的更改
unstage = 取消暂存
@ -61,10 +61,10 @@ default-zoom-step = 缩放步长
keyboard-shortcuts = 键盘快捷键
enable-vim-bindings = 启用 Vim 快捷键
# Find
find-placeholder = 查找
find-placeholder = 查找...
find-previous = 查找上一个
find-next = 查找下一个
replace-placeholder = 替换
replace-placeholder = 替换...
replace = 替换
replace-all = 全部替换
case-sensitive = 区分大小写
@ -79,18 +79,18 @@ wrap-around = 循环搜索
file = 文件
new-file = 新建文件
new-window = 新建窗口
open-file = 打开文件
open-file = 打开文件...
open-recent-file = 打开最近文件
close-file = 关闭文件
menu-open-project = 打开项目
menu-open-project = 打开项目...
open-recent-project = 打开最近项目
close-project = 关闭项目
save = 保存
save-as = 另存为
save-as = 另存为...
revert-all-changes = 撤销所有更改
menu-document-statistics = 文档统计
document-type = 文档类型
encoding = 编码
menu-document-statistics = 文档统计...
document-type = 文档类型...
encoding = 编码...
menu-git-management = Git 管理…
print = 打印
quit = 退出
@ -105,8 +105,8 @@ copy = 复制
paste = 粘贴
select-all = 全选
find = 查找
find-in-project = 在项目中查找
spell-check = 拼写检查
find-in-project = 在项目中查找...
spell-check = 拼写检查...
## View
@ -125,8 +125,8 @@ convert-indentation-to-tabs = 将缩进转换为 Tab
word-wrap = 自动换行
show-line-numbers = 显示行号
highlight-current-line = 高亮当前行
syntax-highlighting = 语法高亮
menu-settings = 设置
syntax-highlighting = 语法高亮...
menu-settings = 设置...
menu-keyboard-shortcuts = 键盘快捷键…
menu-about = 关于 COSMIC 文本编辑器…
repository = 仓库

View file

@ -1,5 +1,5 @@
cosmic-text-editor = COSMIC 文字編輯器
new-document = 新文件
cosmic-text-editor = COSMIC 編輯器
new-document = 新文件
open-project = 開啟專案
todo = 待辦事項
@ -11,7 +11,7 @@ todo = 待辦事項
## Document statistics
document-statistics = 文件統計資料
document-statistics = 文件統計
word-count = 字數
character-count = 字元數
character-count-no-spaces = 字元數(不含空格)
@ -31,8 +31,8 @@ project-search = 專案搜尋
## Prompt save changes
prompt-save-changes-title = 關閉之前儲存變更?
prompt-unsaved-changes = 您有變更尚未儲存。如果您繼續而無儲存,這些變更將會遺失。
prompt-save-changes-title = 未儲存的變更
prompt-unsaved-changes = 您有未儲存的變更。是否儲存?
discard = 放棄變更
## Settings
@ -43,27 +43,27 @@ settings = 設定
appearance = 外觀
theme = 主題
match-desktop = 符合桌面
dark = 深色
light = 淺色
syntax-dark = 暗色語法
syntax-light = 亮色語法
match-desktop = 與桌面一致
dark = 深色模式
light = 亮色模式
syntax-dark = 語法深色
syntax-light = 語法亮色
default-font = 預設字型
default-font-size = 預設字大小
default-font-size = 預設字大小
### Keyboard shortcuts
keyboard-shortcuts = 鍵盤快
enable-vim-bindings = 啟用 Vim 按鍵綁定
keyboard-shortcuts = 鍵盤快
enable-vim-bindings = 啟用 Vim 綁定
# Find
find-placeholder = 尋找...
find-previous = 上一個
find-next = 下一個
replace-placeholder = 取代...
replace = 取代
replace-all = 取代全部
replace-placeholder = 替換...
replace = 替換
replace-all = 全部替換
case-sensitive = 區分大小寫
use-regex = 使用正規表
use-regex = 使用正規表
# Menu
@ -71,36 +71,36 @@ use-regex = 使用正規表示式
## File
file = 檔案
new-file = 新檔案
new-window = 新視窗
new-file = 新檔案
new-window = 新視窗
open-file = 開啟檔案...
open-recent-file = 開啟最近使用的檔案
open-recent-file = 開啟最近檔案
close-file = 關閉檔案
menu-open-project = 開啟專案...
open-recent-project = 開啟最近使用的專案
open-recent-project = 開啟最近專案
close-project = 關閉專案
save = 儲存
save-as = 另存新檔...
revert-all-changes = 原所有變更
menu-document-statistics = 文件統計資料...
save-as = 另存...
revert-all-changes = 原所有變更
menu-document-statistics = 文件統計...
document-type = 文件類型...
encoding = 編碼...
menu-git-management = Git 管理...
print = 列印
quit = 退出
quit = 結束
## Edit
edit = 編輯
undo = 復原
redo = 取消復原
redo = 重做
cut = 剪下
copy = 複製
paste = 貼上
select-all = 全選
find = 尋找
find-in-project = 在專案中尋找...
spell-check = 拼檢查...
spell-check = 拼檢查...
## View
@ -110,25 +110,17 @@ indentation = 縮排
### Indentation
automatic-indentation = 自動縮排
tab-width = Tab 寬度{ $tab_width }
tab-width = Tab 寬度: { $tab_width }
convert-indentation-to-spaces = 將縮排轉換為空格
convert-indentation-to-tabs = 將縮排轉換為 Tabs
word-wrap = 自動換行
show-line-numbers = 顯示行號
highlight-current-line = 突顯前行
highlight-current-line = 突顯前行
syntax-highlighting = 語法突顯...
menu-settings = 設定...
menu-keyboard-shortcuts = 鍵盤快鍵...
menu-about = 關於 COSMIC 文字編輯器...
menu-keyboard-shortcuts = 鍵盤快鍵...
menu-about = 關於 COSMIC 編輯器...
stage = 暫存
unstage = 取消暫存
cancel = 取消
save-all = 全部儲存
repository = 軟體庫源
support = 支援
default-zoom-step = 縮放步進
zoom-in = 放大
default-size = 預設大小
zoom-out = 縮小
wrap-around = 循環搜尋
comment = COSMIC 桌面文字編輯器

View file

@ -1,5 +1,5 @@
use cosmic::widget::menu::key_bind::{KeyBind, Modifier};
use cosmic::{iced::core::keyboard::key::Named, iced::keyboard::Key};
use cosmic::{iced::keyboard::Key, iced_core::keyboard::key::Named};
use std::collections::HashMap;
use crate::Action;

View file

@ -480,7 +480,6 @@ pub struct App {
project_search_id: widget::Id,
project_search_value: String,
project_search_result: Option<ProjectSearchResult>,
project_search_has_focus: bool,
watcher_opt: Option<(
notify::RecommendedWatcher,
HashSet<(PathBuf, RecursiveMode)>,
@ -793,7 +792,7 @@ impl App {
fn update_focus(&self) -> Task<Message> {
if self.core.window.show_context {
match self.context_page {
ContextPage::ProjectSearch if self.project_search_has_focus => {
ContextPage::ProjectSearch => {
widget::text_input::focus(self.project_search_id.clone())
}
_ => Task::none(),
@ -1496,7 +1495,6 @@ impl Application for App {
project_search_id: widget::Id::unique(),
project_search_value: String::new(),
project_search_result: None,
project_search_has_focus: false,
watcher_opt: None,
modifiers: Modifiers::empty(),
};
@ -2055,7 +2053,6 @@ impl Application for App {
};
}
if !has_focus {
self.project_search_has_focus = false;
return self.update_focus();
}
}
@ -2443,7 +2440,6 @@ impl Application for App {
};
if let Some((path, cursor)) = path_cursor_opt {
self.project_search_has_focus = false;
if let Some(entity) = self.open_tab(Some(path)) {
return Task::batch([
//TODO: why must this be done in a command?
@ -2506,7 +2502,6 @@ impl Application for App {
}
Message::ProjectSearchResult(project_search_result) => {
self.project_search_result = Some(project_search_result);
self.project_search_has_focus = true;
// Focus correct input
return self.update_focus();
@ -2542,7 +2537,6 @@ impl Application for App {
}
}
Message::ProjectSearchValue(value) => {
self.project_search_has_focus = true;
self.project_search_value = value;
}
Message::PromptSaveChanges(entity) => {
@ -2777,9 +2771,9 @@ impl Application for App {
self.tab_model.remove(entity);
self.update_watcher();
// If that was the last tab, exit the application
// If that was the last tab, make a new empty one
if self.tab_model.iter().next().is_none() {
return self.update(Message::QuitForce)
self.open_tab(None);
}
// Close PromptSaveClose dialog if open for this entity
@ -2860,9 +2854,6 @@ impl Application for App {
self.core.window.show_context = true;
}
self.project_search_has_focus = self.core.window.show_context
&& self.context_page == ContextPage::ProjectSearch;
// Execute commands for specific pages
if self.core.window.show_context && self.context_page == ContextPage::GitManagement
{

View file

@ -5,9 +5,8 @@ use cosmic::widget::menu::key_bind::KeyBind;
use cosmic::{
Element,
app::Core,
iced::{
Background, Border, Length, advanced::widget::text::Style as TextStyle, widget::column,
},
iced::{Background, Length, advanced::widget::text::Style as TextStyle, widget::column},
iced_core::Border,
theme,
widget::{
self, divider,

View file

@ -3,7 +3,14 @@
use cosmic::{
Renderer,
cosmic_theme::palette::{WithAlpha, blend::Compose},
iced::core::{
iced::{
Color, Element, Length, Padding, Point, Rectangle, Size, Vector,
advanced::graphics::text::{Raw, font_system},
event::{Event, Status},
keyboard::{Event as KeyEvent, Modifiers},
mouse::{self, Button, Event as MouseEvent, ScrollDelta},
},
iced_core::{
Border, Radians, Shell, Transformation,
clipboard::Clipboard,
image,
@ -17,13 +24,6 @@ use cosmic::{
tree,
},
},
iced::{
Color, Element, Length, Padding, Point, Rectangle, Size, Vector,
advanced::graphics::text::{Raw, font_system},
event::Event,
keyboard::{Event as KeyEvent, Modifiers},
mouse::{self, Button, Event as MouseEvent, ScrollDelta},
},
theme::Theme,
};
use cosmic_text::{