Terminal: Fügen Sie zusätzlich zur Deckkraft eine Einstellung hinzu, um die Acryl-Unschärfe zu steuern

Erstellt am 1. Juli 2019  ·  38Kommentare  ·  Quelle: microsoft/terminal

So ziemlich der Titel.

Im Moment verwenden wir nur die Standardmenge für Unschärfe.

Area-Settings Area-TerminalControl Help Wanted Issue-Task Product-Terminal

Hilfreichster Kommentar

Würde dies zur Verdeutlichung eine Transparenz des Fensters ohne Unschärfe ermöglichen (dh wie cmd und PS wirken)? Es wäre toll, Text hinter dem Fenster lesen zu können.

Alle 38 Kommentare

Der Schieberegler für die Deckkraft mit einem Schalter zum Ein- und Ausschalten von Acryl würde ebenfalls funktionieren

Das Triage-Tag ziehen. Dies ist eine bekannte Menge an Arbeit, die wir nur tun müssen.

Das könnte unmöglich sein ...

Als ich dieses Problem einreichte, dachte ich fälschlicherweise, dass es auf dem AcrylicBrush eine "Blur" -Eigenschaft gibt, aber das sieht nicht so aus, als ob es überhaupt sichtbar wäre. Siehe seine Seite auf MSDN .

Wenn man sich dieses Problem ansieht, sieht es aus Sicherheitsgründen so aus, als wäre dies möglicherweise unmöglich.

In diesem Sinne möchte ich, dass zwei unabhängige Eigenschaften Acrylwerte festlegen, wenn sich das Fenster im Vordergrund und im Hintergrund befindet. Ich möchte beispielsweise, dass das Fenster eine Deckkraft von 90% hat, wenn das Fenster scharfgestellt ist, und eine Deckkraft von 70%, wenn dies nicht der Fall ist.

Würde dies zur Verdeutlichung eine Transparenz des Fensters ohne Unschärfe ermöglichen (dh wie cmd und PS wirken)? Es wäre toll, Text hinter dem Fenster lesen zu können.

Als ich dieses Problem einreichte, dachte ich fälschlicherweise, dass es auf dem AcrylicBrush eine "Blur" -Eigenschaft gibt, aber das sieht nicht so aus, als ob es überhaupt sichtbar wäre. Siehe seine Seite auf MSDN.

Wird das nicht von TintOpacity kontrolliert? https://docs.microsoft.com/en-us/windows/uwp/design/style/acrylic#custom -acrylic-pinsel

Ich denke, das ist es, was die meisten Leute (oder zumindest ich) meinen, wenn sie über das Ändern des Unschärfegrades sprechen.

Ich habe (mindestens einen) Weg gefunden, um diesen Effekt zu erzielen, aber nicht über UWP. Die wirklich alte Vista-Ära-API DwmEnableBlurBehindWindow ändert unter Windows 10 den Fensterhintergrund in ein halbtransparentes Schwarz ohne Unschärfe. Wie ironisch angesichts des Namens der Funktion? AFAICT, dies stellt keine Sicherheitsprobleme dar, da die App den Inhalt des angezeigten Hintergrunds nicht lesen kann, da er vollständig in dwm.exe verarbeitet wird.

Wären wir nicht in der Lage, SetLayeredWindowAttributes auf dem Root-HWND zu verwenden, so wie es conhostV2 tut? Soweit ich die Dokumente verstehe, sollte dies auch die untergeordneten Fenster betreffen. Wenn dies auf eine Weise geschieht, die unbefriedigend wäre, können wir mit derselben Funktion das Alpha der untergeordneten HWNDs auf 255 (undurchsichtig) setzen und dann die untergeordneten Fenster mit einer transparenten Farbe löschen, um die Standardhintergrundfüllung zu löschen. Danach sollten wir in der Lage sein, alles, was wir wollen, über das transparente Hintergrundfenster zu zeichnen. Dies erfordert möglicherweise ein wenig Umgestaltung der Cascadia-Architektur, aber ich sehe keinen Grund, warum dies nicht möglich wäre. Hoffe das hilft!

Um meine 2 Cent hinzuzufügen, möchte ich wirklich die Art von Transparenz und Unschärfeoptionen, die iterm2 auf dem Mac hat. Sie haben regelmäßige Transparenz, und Sie können nur ein wenig Unschärfe hinzufügen, um die Belastung der Augen zu verringern, aber dennoch das Hintergrundbild oder was auch immer deutlich erkennen.

Das Acryl sieht einfach schrecklich aus und das Ding unter dem Fenster ist völlig unkenntlich.

@ zadjii-msft @ DHowett-MSFT Wir sind nicht durch die veröffentlichte API als MSFT-Entwickler beschränkt. Wenn Sie sich an die Bibliotheksverwalter wenden, können Sie das wahrscheinlich klären. Wenn sie ihr Ding auf dumme Weise bauen, heißt das nicht, dass wir alle nur damit leben müssen, oder?

Für die Aufzeichnung ist dies das letzte Muss für mich und Fenstertransparenz ist ohne es imo nicht wirklich verwendbar. Zumindest die Transparenz von Hintergrundbildern funktioniert zwar, aber es ist viel schöner, tatsächliche Apps darunter und / oder Ihren realen Desktop zu sehen. Terminus, Alacritty und Conemu schaffen dies alle (wenn auch mit unterschiedlichem Erfolg).

@ zadjii-msft @ DHowett-MSFT Wir sind nicht durch die veröffentlichte API als MSFT-Entwickler beschränkt. Wenn Sie sich an die Bibliotheksverwalter wenden, können Sie das wahrscheinlich klären. Wenn sie ihr Ding auf dumme Weise bauen, heißt das nicht, dass wir alle nur damit leben müssen, oder?

👆🏻 das. so sehr das.

Ich werde bemerken, dass https://github.com/goreliu/wsl-terminal die Transparenz

* BEARBEITEN *

Die Transparenzoption stammt tatsächlich aus dem zugrunde liegenden https://github.com/mintty/mintty-Projekt

Ich möchte lesen, was sich hinter dem Fenster befindet, normalerweise Codebeispiele auf einer Webseite. Wäre es in diesem Sinne besser, einen Hotkey zu haben, der zwischen Unschärfe und Nicht-Unschärfe-Transparenz umschaltet? Aka, schaltet Acryl aus, behält aber die Transparenz bei. Es könnte Push-and-Hold oder Toggle sein, es würde Spaß machen, beides zu versuchen.

Dieser Kommentar (https://github.com/microsoft/terminal/issues/1375#issuecomment-569483109) von @JasonStein ist möglicherweise für diesen Thread relevant:

Hey Leute, ich bin der Autor des Notizblöcke, das ist , wie ich Hintergrund Acryl-Effekt „always on“ für beiden Titelleisten und Fensterkörper von Notizblöcke App machen: JasonStein / Notizblöcke: src / Notizblöcke / Dienstleistungen / ThemeSettingsService.cs @ 12940ad # L253

Ich habe den Acrylpinsel selbst mit "AcrylicBackgroundSource.HostBackdrop" mithilfe der UICompositionAnimations-Bibliothek erstellt, um mir das Leben zu erleichtern (Ref: Sergio0694 / UICompositionAnimations ).

Grundsätzlich wird der Pinsel mithilfe von Kompositions-APIs (AcrylicBackgroundSource.HostBackdrop + Noise-Textur) von Grund auf neu erstellt.

AcrylicBrush API ist nicht die einzige Wahl. Ich hätte wirklich gerne eine Option für einfach unscharfe Deckkraft, abgesehen von Acryloptionen. Es ist seltsam, die nützliche Funktion von cmd zu löschen, wenn dieses Windows-Terminal als cmd-ng erstellt wird.

Transparenz ohne Unschärfe, wenn dies auch ohne Acryl möglich ist, wäre großartig, sodass ich nicht den mittleren Befehl Alt-Tab drücken muss, um etwas zu überprüfen.

Unter Mac und Linux verwende ich ständig ein transparentes Terminal, da ich häufig ein Dokument oder einen Quellcode im darunter liegenden Fenster lese, während ich es äußerst praktisch eingebe.

Die Kontrolle der Unschärfe wäre ideal. (Auf dem Mac verwende ich 3% Unschärfe, um den Terminaltext hervorzuheben, ohne dass der Text dahinter schwer lesbar ist.)

Würde dies zur Verdeutlichung eine Transparenz des Fensters ohne Unschärfe ermöglichen (dh wie cmd und PS wirken)? Es wäre toll, Text hinter dem Fenster lesen zu können.

Genau! Tatsächlich werde ich nicht einmal in Betracht ziehen, auf Windows Terminal umzusteigen (so sehr ich es liebe), bis dies implementiert ist. Ich schaue immer wieder vorbei, bin aber enttäuscht zu sehen, dass es immer noch nicht gemacht wurde.

Diese Funktion ist besonders nützlich für Benutzer mit einem einzelnen Monitor oder einer begrenzten Bildschirmfläche. Ich habe fast immer eine Webseite oder einen anderen Text hinter meinem Terminal, den ich im Terminal lesen möchte. Ich passe meine Transparenz / Deckkraft entsprechend an, um dies zu einer angenehmen Erfahrung zu machen, damit ich mein Terminal immer noch gut lesen kann.

Bitte implementieren Sie diese so schnell wie möglich. Ich freue mich darauf, WT zu verwenden und verfolge es seit der ersten Alpha-Veröffentlichung.

Als Bonus sollte es auch einen Booleschen Wert geben, um umzuschalten, ob die Transparenz / Deckkraft auch für den Text im Terminal gelten soll. Dies würde sicherstellen, dass der Text im Terminal lebendig und sichtbar bleibt, um ihn von jedem anderen Text in Fenstern hinter dem Terminal besser unterscheiden zu können.

Wenn die Unschärfe als Acryl bezeichnet werden soll, sollte sie meiner Meinung nach nicht von der visuellen Konstruktion anderer Acryloberflächen über die Deckkraft hinaus abweichen (die bei Acrylbürsten variabel ist).

Wenn Sie anfangen, die verschiedenen Ebenen wie Rauschen, Leuchtkraft oder Unschärfe auseinander zu ziehen, handelt es sich nicht mehr um "Acryl", sondern um eine Reihe von Effekten der Kompositionsebene.

Ich schaue immer wieder vorbei

gute Nachrichten! Sie erhalten eine E-Mail, wenn wir diesen Fehler schließen: Lächeln: zum Guten oder zum Schlechten

Ich muss wiederholen, was alle anderen sagen. Ich verwende derzeit die PowerShell Core-MSI-Installation als meine primäre Shell. Als sehr großer Bestandteil meines Jobs bin ich den ganzen Tag in dieser Konsole im Halb- oder Vollbildmodus auf einem Ultra-Wide-Bildschirm und muss in der Lage sein, die Dinge darunter klar zu sehen.

Ich liebe die Idee und schätze die Anstrengungen, die Microsoft in einige der Verwaltungsdienstprogramme unter Windows investiert, aber an diesem Punkt ist dieses neue Terminal einfach eine Neuheit, die die ursprüngliche Konsole nicht sinnvoll ersetzen kann. Bitte sehen Sie den Screenshot unten; Beide Fenster sind auf dieser Seite über dieselbe Stelle gelegt. Das eine ist großartig und das andere ist unbrauchbar, ich muss nicht darauf hinweisen, welches welches ist.

image

Dieses neue Terminal ist einfach eine Neuheit

Ich schätze Ihre freundliche Kritik an dem Projekt, an dem wir in den letzten anderthalb Jahren gearbeitet haben, aber könnten Sie möglicherweise nicht?

Ich kann mitfühlen, wie du dich fühlst. Es ist kein lustiger Ort, sondern versetzt Sie auch in die Perspektive der Nutzerbasis (der weitgehend zahlenden Kunden), die seit anderthalb Jahren darauf wartet. Ich wollte die anderen Gedanken wiederholen, die die Community in Bezug auf dieses Produkt zu durchdringen scheinen, und ich wollte zumindest einen Screenshot bereitstellen, um konstruktiv zu sein, da dies bisher noch niemand getan hatte. Ohne zu sehen, um welches Problem es sich handelt, wäre es leicht, das Problem als geringfügig oder jammernd abzutun, aber ich hoffe, Sie erkennen, dass die obere Konsole in meinem Screenshot eindeutig nicht funktioniert. Ich hoffe es kann behoben werden.

  1. Keine Sorge, jeder im Team ist ein täglicher Benutzer des Terminals. Wir sind alle Benutzer ebenso wie unsere externen Kunden.
  2. Für die Aufzeichnung wurde das Terminal erst im letzten April angekündigt, also haben Sie nur 13 Monate gewartet 😉
  3. Wir untersuchen dieses Problem bereits seit einiger Zeit. Wir verstehen, dass dies kein triviales grafisches Problem ist, aber leider ist es kein technisch triviales Problem, das behoben werden muss 😕

@ zadjii-msft Ich verstehe den dritten Teil, weshalb ich den Screenshot gepostet habe, um zu veranschaulichen, worüber sich alle in diesem und anderen Themen-Threads beschweren. Ich schätze euch, die daran arbeiten, coole Produkte mit einem betriebssystemunabhängigeren Ansatz zu entwickeln. Ich hoffe, dass es ohne allzu große Kopfschmerzen weitergeht.

"Unsere Mission ist es, jeden Menschen und jede Organisation auf dem Planeten zu befähigen, mehr zu erreichen." - Microsoft

Leider ist dieses neue Terminal ein echter Hingucker. Es kommt definitiv mit einigen erstaunlichen Funktionen, wie Tabs! TOLLE!!! Als Entwickler müssen wir jedoch das Gute mit dem Schlechten verbinden, und manchmal stellen wir nicht fest, dass Funktionen fehlen, die für den Benutzer bis nach dem Start sehr wichtig sind. 🤦🏼‍♂️ Dies ist freie Software, daher bin ich unglaublich dankbar dafür und für das fantastische Engagement von Microsoft für Open Source in den letzten Jahren (insbesondere seit Satya das Unternehmen umgedreht hat). Gleichzeitig ist die Transparenz eines Terminals in meinem Buch ein Muss. Die Acryleffekte sind zwar ziemlich sicher, aber nicht jeder wird mit der Unschärfe einverstanden sein, auch ich, insbesondere bei begrenzten Bildschirmflächen. 🥰

Machen Sie weiter so mit der großartigen Arbeit im Windows Terminal-Team!

Ich werde es wirklich lieben, wenn das Microsoft-Team diese Funktion hinzufügt. Die Frage ist, wie wir darum bitten können, dass diese Funktion in der nächsten Version enthalten ist. Ich bin mir ziemlich sicher, dass dies erreicht werden kann, danke für all die Arbeit, die Sie bisher mit diesem Terminal geleistet haben. Ja, es ist kein technisches Problem, es ist eine neue Anforderung für das Terminal.

Ich würde es lieben, dies in der nächsten Version zu haben, aber wie ich ausführlich in https://github.com/microsoft/terminal/issues/603#issuecomment -626830075 dargelegt habe, ist dies ein technisches Problem, das dies nicht tut Ich habe eine einfache Lösung, daher kann ich mich nicht wirklich darauf festlegen, sie in einer bestimmten Version hinzuzufügen.

Bisher beeindruckt von den Bemühungen und freue mich darauf, dass diese konfigurierbare Unschärfe (oder auch nur einfache Halbtransparenz ohne Acryl!) irgendwann hinzugefügt wird. Bis dahin bleibt sie jedoch bei wsltty.

Transparenz ist ein Muss für ein Terminalfenster, da die meisten Hauptbenutzer häufig durch das Fenster sehen müssen. Unschärfe ist meistens kosmetisch, während Transparenz ein tatsächliches Werkzeug ist.

@harounhajem Das ist nicht dasselbe, was in diesem Thread diskutiert wird. Die Aufgabe in diesem Thread besteht darin, zu steuern, wie stark das Terminal den Hintergrund mit aktiviertem Acryl verwischt. Ich nahm an, dass "Blur" eine Eigenschaft auf dem AcrylicBrush , wenn es wirklich nicht ist.

Ehrlich gesagt ist dies zu diesem Zeitpunkt wahrscheinlich ein Betrüger von # 603, aber ich lasse es offen, weil es mindestens 22 andere Leute gibt, die diesem Thread bereits folgen, um eine Lösung zu finden.

Lol @ zadjii-msft er hat den Punkt total verpasst. Und anscheinend hat er seinen Kommentar entfernt. 😅
Aber ja, viele von uns warten auf den Tag, an dem wir diese Terminal-App nutzen können. 👀

Ich bin mir nicht sicher, ob dies ein separates Problem sein sollte oder nicht. Ich hätte auch gerne die Option, die Deckkraft beizubehalten, wenn Terminal nicht das aktive Fenster ist, oder noch besser die Option, einen alternativen Deckkraftwert zu verwenden, wenn es inaktiv ist.

Im Moment habe ich eine Verknüpfung, mit der ich das aktive Fenster auf ~ 80% Deckkraft einstellen kann. Dies funktioniert sehr gut mit Acrylunschärfe, da ich sehen kann, was dahinter steckt, aber der Unschärfeeffekt hilft, dass der Terminaltext gut lesbar bleibt.

Das Acryl von WT ist auf 0.8 , während die AutoHotKey-Funktion die Deckkraft auf 200 (200/255) setzt.

Im Moment habe ich eine Verknüpfung, mit der ich das aktive Fenster auf ~ 80% Deckkraft einstellen kann. Dies funktioniert sehr gut mit Acrylunschärfe, da ich sehen kann, was dahinter steckt, aber der Unschärfeeffekt hilft, dass der Terminaltext gut lesbar bleibt.

Das Acryl von WT ist auf 0.8 , während die AutoHotKey-Funktion die Deckkraft auf 200 (200/255) setzt.

Ich wäre neugierig, mehr über Ihr Setup dafür zu lesen, wenn Sie bereit wären, dies zu teilen. Es klingt nach etwas, das ich nützlich finden würde.

AutoHotKey-Funktion:

#^Esc::
  WinGet, TransLevel, Transparent, A
  If (TransLevel = OFF) {
    WinSet, Transparent, 180, A
  } Else {
    WinSet, Transparent, OFF, A
  }
return

Dadurch wird das aktive Fenster zwischen voller Deckkraft und 180/255 Deckkraft umgeschaltet. Die Verknüpfung lautet Win+Ctrl+Esc .
Für Windows Terminal setzen Sie "acrylicOpacity" je nach Hintergrundfarbe auf einen 0.7 und 0.9 (dunkler = auffälliger transparent). Ich benutze:

"background" : "#560152",
"acrylicOpacity" : 0.75,

@narfanar Vielen Dank dafür! Ich habe jetzt ein transparentes Terminal unter Windows!

Dies hat bei mir nicht funktioniert, aus irgendeinem Grund versteht meine Windows-Version die Einstellung OFF , daher habe ich sie leicht geändert:

; Toggle window transparency.
#^Esc::
WinGet, TransLevel, Transparent, A
If (TransLevel = 255) {
    WinSet, Transparent, 205, A
} Else {
    WinSet, Transparent, 255, A
}
return

AutoHotKey-Funktion:

OMG Vielen Dank! Mir ist noch nie in den Sinn gekommen, dass AHK das kann. Das Anpassen der Acryleinstellung, um die gewünschte Unschärfemenge zu erhalten, scheint zu funktionieren. Immer noch etwas ablenkender als die Unschärfe, die Sie auf dem Mac-Terminal erhalten, aber es macht den Job.

Kann dieses Terminal jetzt als mein Hauptterminal verwenden, ty @narfanar

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen