特定のフォルダ内の特定のファイルタイプを開くようにデフォルトプログラムを設定するにはどうすればよいですか?


21

私はパンダであると同時にアーティストでもあり、アートワークは主にGIMPで作成し、写真をコンピューターの特定のディレクトリに保存します。しかし、私は私の画像を保存するので、私は若干の不便さを持っているjpegフォーマット、しかし、オープンに既定のプログラムjpegsがあるImage Viewer、と私はそれを変更した場合GIMP、私のアートワークとの便宜のために、それは他のすべてのことを意味しjpeg、私のコンピュータのオープン中のS GIMP、および私は彼らにそれを望まないので、これが問題の始まりです...

だから私はそれを作る方法があるのだろうかと思うので、jpeg私のコンピュータ上のその特定のディレクトリで開かれGIMPたすべてのものは開くが、他jpegのすべての場所はどこで開くImage Viewerか?


Nautilus / Filesのみ、またはxdg-open
AB

@AB:できれば両方とも言えるでしょう。

以下のためxdg-openの端末で、あなたはあなたのイメージのMIMEタイプを変更する必要があると思います。
AB

または、私の答えのスクリプトを完全な画像パスで使用することもできます。
AB

4
.jpeg中間形式として使用しないでください!それは世代の損失を被ります。.xcfGIMPで常に自動的に開かれるとして画像を保存しないのはなぜですか?

回答:


21

desktopファイルとラッパースクリプトが必要です。

  1. desktopファイル

    • デスクトップファイルを作成する

      nano ~/.local/share/applications/jpeg-wrapper.desktop
      
    • 以下の構成を追加します(のプロパティを変更しますName

      [Desktop Entry]
      Name=Special or Standard
      Comment=Open a JPEG depending of the path
      Exec=/home/user/bin/jpeg-wrapper %f
      Icon=
      Terminal=false
      Type=Application
      Categories=Editor;
      StartupNotify=true
      MimeType=image/jpeg;
      
    • 置き換えuserではExec=/home/user/bin/jpeg-wrapper %f、ユーザー名との出力を

      echo $USER
      
    • アイコン名をIcon=任意の名前またはパスに置き換えます

    • MimeType=image/jpeg決定が適用されるファイルのMIMEタイプを指定するために使用します。複数のMIMEタイプを分離する;

      MIMEタイプを取得する

      mimetype your_file
      

      例えばテキストファイル用

      text/plain
      
  2. ラッパースクリプト

    • 新しいスクリプトを作成する

      mkdir -p ~/bin
      nano ~/bin/jpeg-wrapper
      
    • 以下のコードを追加してください

      #!/usr/bin/env bash
      image_path=$(dirname "$1")
      my_special_path="$HOME/tmp"
      open_with_special="gimp"
      open_with_standard="eog"
      
      if [[ $(mimetype -b "$1") == "image/jpeg" ]] && [[ "$image_path" == "$my_special_path"* ]]; then
              "$open_with_special" "$1"
      else
              "$open_with_standard" "$1"
      fi
      
    • アートワークフォルダーに変更my_special_pathします。すべてのサブフォルダーも考慮されます。

    • 特別なアプリケーションに変更open_with_specialします(例)gimp

    • ラッパースクリプトを実行可能にする

      chmod +x ~/bin/jpeg-wrapper
      
  3. Unity / GNOME Shellを再起動します。GNOMEShellの場合はAlt- F2などと入力しrEnter

  4. 1つ以上のファイルタイプをデスクトップファイルに関連付けます

    • ファイルマネージャーを開き、決定を適用するファイルを右クリックします。

    • クリック Properties

    • タブを有効にする Open With

    • エントリを選択 Special or Standard

    • クリック Set as default

  5. お楽しみください;)

スクリプトはここでチェックしました


Name値を何に変更するかは重要ですか?

いいえ、必要に応じて名前を変更します。
AB

また、スクリプトにはわずかな問題があります...うーん...アートワークフォルダー内のすべてのファイルはGIMPで正常に開き、すべてのサブディレクトリでも同じですが、ファイルがその領域にない場合は開きませんまったく。

それを確認させて。
AB

OK、無限ループを削除したので問題なく動作します。;)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.