macvim-dev / macvim-dev/macvim
MacVim exports standard UTIs, and does it wrongly, messing up the system
まだ誰も着手していません。
- 主要言語
- Vim Script
- スター
- 7.9k
- フォーク
- 691
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Instructions: Replace the template text and remove irrelevant text (including this line)
Describe the bug
MacVim exports standard UTIs, such as com.adobe.postscript. This is wrong, they should be imported, as they are defined by the system. What is worse, the declaration is seriously wrong. It declares the UTI as conforming to to public.plain-text. THIS IS WRONG it should conform to public.data and public.composite-content. This messes up the system seriously. For instance, when an app checks a UTI, it should use conformsTo to do so, and this will match public-plain-text for postscript, breaking the (other!) app. So you are actually sabotaging other apops and the system.
To Reproduce
In an (other!) app, check an UTI (for instance when writing data from a document based cocoa app) against com.adobe.postscript or public.plain-text (if both are supported)
Expected behavior
This should always match com.adobe.postscript when the type is com.adobe.postscript, and should match public.plain-text for public.plain-text.
Actual Behavior
When comparing public.plain-text against com.adobe.postscript, it now matches (conforms to), even if it should not.
Screenshots
If applicable, copy/paste the text or add screenshots to help explain your problem.
Environment (please complete the following information):
- Vim version [e.g. 8.1.1234] (Or paste the result of
vim --version.) - OS: [e.g. Ubuntu 18.04, Windows 10 1809, macOS 10.14]
- Terminal: [e.g. GNOME Terminal, mintty, iTerm2, tmux, GNU screen] (Use GUI if you use the GUI.)
Additional context
Don't ever sabotage the system.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
issue ではファイルもテストも指定されていません。まず MacVim の macOS UTI 宣言を見つけ、com.adobe.postscript などの標準 UTI がどのように export または import されているかを比較してください。標準 UTI が public.plain-text に準拠すると誤って宣言されなくなり、報告された準拠比較が一致しなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- macos, vim
- 領域
- desktop
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100