Merge branch 'master' into keyboard_refactor

This commit is contained in:
Mattias Eriksson 2024-02-06 21:19:32 +01:00
commit faa7dde686
3 changed files with 28 additions and 16 deletions

View file

@ -6,20 +6,20 @@ settings = 設定
### Appearance ### Appearance
appearance = 外観 appearance = 外観
theme = テーマ theme = テーマ
match-desktop = デスクトップに合わす match-desktop = システム設定に従う
dark = 暗い dark = ダーク
light = 明かり light = ライト
syntax-dark = 暗いシンタックス syntax-dark = ダークテーマのシンタックス
syntax-light = 明かりシンタックス syntax-light = ライトテーマのシンタックス
advanced-font-settings = 詳細なフォント設定 advanced-font-settings = 詳細なフォント設定
default-font = デフォルトフォント default-font = デフォルトフォント
default-font-stretch = デフォルトのフォント幅 default-font-stretch = デフォルトのフォント幅
default-font-weight = デフォルトのフォントの太さ default-font-weight = デフォルトのフォントの太さ
default-dim-font-weight = デフォルトの暗いフォントの太さ default-dim-font-weight = デフォルトの暗いフォントの太さ
default-bold-font-weight = デフォルトの太字の太さ default-bold-font-weight = デフォルトの太字の太さ
use-bright-bold = 太字を明るい色で表示する use-bright-bold = 太字を明るい色で表示する
default-font-size = デフォルトのフォントサイズ default-font-size = デフォルトのフォントサイズ
default-zoom-step =ズームの間隔 default-zoom-step = ズームの間隔
# Find # Find
find-placeholder = 検索... find-placeholder = 検索...
@ -47,4 +47,4 @@ view = 表示
menu-settings = 設定... menu-settings = 設定...
# Context menu # Context menu
show-headerbar = ヘッダーバーを表 show-headerbar = ヘッダーバーを表

View file

@ -46,9 +46,13 @@ check *args:
# Runs a clippy check with JSON message format # Runs a clippy check with JSON message format
check-json: (check '--message-format=json') check-json: (check '--message-format=json')
dev *args:
cargo fmt
just run {{args}}
# Run with debug logs # Run with debug logs
run *args: run *args:
env RUST_LOG=debug RUST_BACKTRACE=full cargo run --release {{args}} env RUST_LOG=cosmic_term=debug RUST_BACKTRACE=full cargo run --release {{args}}
# Installs files # Installs files
install: install:

View file

@ -9,7 +9,7 @@ use alacritty_terminal::{
cell::Flags, cell::Flags,
color::{self, Colors}, color::{self, Colors},
search::RegexSearch, search::RegexSearch,
viewport_to_point, Config, TermMode, viewport_to_point, Config, TermDamage, TermMode,
}, },
tty::{self, Options}, tty::{self, Options},
vte::ansi::{Color, NamedColor, Rgb}, vte::ansi::{Color, NamedColor, Rgb},
@ -631,7 +631,14 @@ impl Terminal {
let mut text = String::from(LRI); let mut text = String::from(LRI);
let mut attrs_list = AttrsList::new(self.default_attrs); let mut attrs_list = AttrsList::new(self.default_attrs);
{ {
let term = self.term.lock(); let mut term = self.term.lock();
//TODO: use damage?
match term.damage() {
TermDamage::Full => {}
TermDamage::Partial(_damage_lines) => {}
}
term.reset_damage();
let grid = term.grid(); let grid = term.grid();
for indexed in grid.display_iter() { for indexed in grid.display_iter() {
if indexed.point.line != last_point.unwrap_or(indexed.point).line { if indexed.point.line != last_point.unwrap_or(indexed.point).line {
@ -644,10 +651,7 @@ impl Terminal {
buffer.set_redraw(true); buffer.set_redraw(true);
} }
// Tab skip/stop is handled by alacritty_terminal if buffer.lines[line_i].set_text(text.clone(), attrs_list.clone()) {
if buffer.lines[line_i]
.set_text(text.replace('\t', " "), attrs_list.clone())
{
buffer.set_redraw(true); buffer.set_redraw(true);
} }
line_i += 1; line_i += 1;
@ -665,7 +669,11 @@ impl Terminal {
} }
let start = text.len(); let start = text.len();
text.push(indexed.cell.c); // Tab skip/stop is handled by alacritty_terminal
text.push(match indexed.cell.c {
'\t' => ' ',
c => c,
});
if let Some(zerowidth) = indexed.cell.zerowidth() { if let Some(zerowidth) = indexed.cell.zerowidth() {
for &c in zerowidth { for &c in zerowidth {
text.push(c); text.push(c);