起動時にThunderbirdを最小化する方法


18

このチュートリアルに従って、起動時にThunderbirdを最小化モードで設定しましたが、役に立ちませんでした。

指示に従った後、Thunderbirdを起動することさえできませんでした。そのため、「FireTrayプラグイン」を削除してこの問題を修正するために、セーフモードでTBを起動する必要がありました。その後動作し始めましたが、それは私のすべてのメールアカウントを削除しました、そして、私はもう一度その雑用をしなければなりませんでした。

では、Thunderbirdを起動時に最小化するための作業方法はありますか?


重複する可能性がありますか?askubuntu.com/questions/68640/...
fossfreedom

:この質問の重複であるかもしれないaskubuntu.com/questions/68284/...
Glutanimate

回答:



8

このアドオンを使用し、デフォルトでサンダーバードを最小化モードで起動し、このガイドに従ってサンダーバードのスタートアップエントリを追加しました。


3
このMinimize On StartとClose Add-Onを指してくれてありがとう。これは、Unityランチャー最小化されたThunderbird起動する最も簡単な方法で、新しいメッセージ数なども確認できます。
サディ

4

少なくとも私のような人々のために、それを明確にさせてください。

サンダーバードがログオン時に自動的に開始されることを確認するには、次の3つの手順が必要です。

  1. ThunderbirdにFireTray」アドオンをインストールする
  2. チェック FireTrayの好みでオプション(「トレイに隠されたアプリケーションを起動」Thunderbird -> Tools -> addons -> firetray -> preferences -> under tab "windows"
  3. この回答(クイック)に従って Thunderbirdをスタートアップに追加します(注:コマンドフィールドは次のとおりです:thunderbirdまたは/usr/bin/thunderbird

FireTrayアドオンは必須です。ほとんどの人は、ウィンドウに「近い」と言うとき、デフォルトの動作のように実際に完全に終了するつもりはありません。彼らはサンダーバードがバックグラウンドで実行され、すべての新しい電子メールの到着を通知することを期待しています。また、FireTrayはこの問題を正確に処理します。


1

私は実際にUbuntu 13.10を使用していますが、このソリューションは少なくとも12.04までは正常に動作するはずです。Firetrayは、Firefoxの拡張機能で、閉じるときにトレイを最小化し、起動時に最小化することができます(Thunderbirdウィンドウのポップアップがすぐに表示されますが、ほとんど問題ではありません)。次に、Thunderbirdをスタートアップアプリケーションに追加するだけで、ログインするとthunderbirdが1秒間点滅し、システムトレイで最小化されます。また、デフォルトのメッセージングメニューを完全にサポートしているため、2番目のサンダーバードアイコンは作成されません。

過去にこれを試したことがある人のために、私は数年前にFiretrayを試しましたが、まったく動作しないことを知っていますUbuntuで(少なくともバージョン13.10ですが、他のバージョンでは動作しない理由はわかりません)。


0
  • [Alt] + F2を押してコマンドを実行します
  • gnome-session-propertiesを実行します
  • / usr / bin / thunderbirdを追加します

0

Ubuntu 18.04の場合。

1)devilspie パッケージのインストール:

sudo apt install devilspie

2)そのフォルダーに~/.devilspieフォルダーとthunderbird.dsファイルを作成します。

mkdir -p ~/.devilspie && touch ~/.devilspie/thunderbird.ds

3)このコードを~/.devilspie/thunderbird.dsファイルに貼り付けます:

(if
    (is (window_name) "Mozilla Thunderbird")
    (begin
       (minimize)
    )
)

4)スタートアップアプリケーションに追加devilspieする

5)スタートアップアプリケーションに追加thunderbirdする

6)オプションでタスクバーにKeepをインストールします(閉じるボタンが最小化ボタンとまったく同じように動作するThunderbirdのアドオン)

7)再起動します。

ヒント: 起動時に特定のプログラムを遅延させる方法

devilspie 'docs:

https://web.archive.org/web/20160415011438/http://foosel.org/linux/devilspie

https://wiki.gnome.org/Projects/DevilsPie

https://help.ubuntu.com/community/Devilspie


0

Ubuntu 16.04。

同じ問題があり、目標を達成するために以下を使用しました。このスクリプトを介してThunderbirdを実行する自動開始エントリが追加されました。

#!/usr/bin/env python3
import subprocess
import sys
import time

#
# Check out command
#
command = sys.argv[1]

#
# Run it as a subservice in own bash
#
subprocess.Popen(["/bin/bash", "-c", command])

#
# If a window name does not match command process name, add here. 
# Check out by running :~$ wmctrl -lp
# Do not forget to enable the feature, seperate new by comma.
#
#windowProcessMatcher = {'CommandName':'WindowName'}
#if command in windowProcessMatcher:
#    command = ''.join(windowProcessMatcher[command])
#print("Command after terminator" + command)

#
# Set some values. t is the iteration counter, maxIter guess what?, and a careCycle to check twice.
#
t = 1
maxIter=30
wellDone=False
careCycle=True
sleepValue=0.1

#
# MaxIter OR if the minimize job is done will stop the script.  
# 
while not wellDone:
    # And iteration count still under limit. Count*Sleep, example: 60*0.2 = 6 seconds should be enough.
    # When we found a program
    if t >= maxIter:
        break
    # Try while it could fail.
    try:
        # Gives us a list with all entries
        w_list = [output.split() for output in subprocess.check_output(["wmctrl", "-lp"]).decode("utf-8").splitlines()]
        # Why not check the list? 
        for entry in w_list:
            # Can we find our command string in one of the lines? Here is the tricky part: 
            # When starting for example terminator is shows yourname@yourmaschine ~. 
            # Maybee some matching is needed here for your purposes. Simply replace the command name
            # But for our purposes it should work out.
            #
            # Go ahead if nothing found!
            if command not in (''.join(entry)).lower():
                continue
            #######
            print("mt### We got a match and minimize the window!!!")
            # First entry is our window pid
            match = entry[0]
            # If something is wrong with the value...try another one :-)
            subprocess.Popen(["xdotool", "windowminimize", match])
            # 
            # Maybee there will be more than one window running with our command name. 
            # Check the list till the end. And go one more iteration!   
            if careCycle:
                # Boolean gives us one more iteration.
                careCycle=False
                break
            else:
                wellDone=True
    except (IndexError, subprocess.CalledProcessError):
        pass
    t += 1
    time.sleep(sleepValue)

if wellDone:
    print(" ")
    print("mt### Well Done!")
    print("mt### Window found and minimize command send.")
    print("mt### ByBy")
else:
    print(" ")
    print("mt### Seems that the window while counter expired or your process command did not start well.")
    print("mt### == Go ahead. What can you do/try out now? ")

これは、他のすべてのアプリでも機能するはずです。

良いコーディング

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.