きりかノート 3冊め

おあそびプログラミング

スマートカット/コピー/ペーストを無効にする

MacにはLeopardから導入されたスマートカット/ペーストというのがある。ペースト先が英文ぽいときにペーストの両側に空白を追加してくれる。カット時は単語と合わせて空白も消してくれるというインテリジェントなもの。

だがしかし、正直いらない。

ふだんはターミナル上のvimでテキスト編集をすることがほとんどなのであまり気にならないけど、pbpasteして行末に空白が追加されてたりとか許せないわけだ。他にも苦しんでいる人がいるだろうと検索してみたけれど、あんまり見つからなかった。これくらい。

無効にするためにInputManagerで強制的に-[NSTextView smartInsertDeleteEnabled]が常にNOを返すようにしてみた。なんとなく使えてる。

@implementation NSTextView (KillSCP)

// always return NO
- (BOOL)smartInsertDeleteEnabled {
    return NO;
}
@end

システムぜんたいで無効にするdefaultsなんかがあると思うのだけど見つけられず。